Skip to content

Cercle Blog

We've got something interesting

een inleiding tot mitmproxy

Posted on februari 24, 2022 By admin Geen reacties op een inleiding tot mitmproxy

goed werk. Nu moet je je mobiele apparaat aan te sluiten op de mitmproxy, en laat het het HTTP-verkeer te vangen.

https://docs.mitmproxy.org/stable/overview-getting-started/

  1. Stel de proxy in op het netwerk op uw apparaat (het proxy-IP is het IP waar u de mitmproxy draait.
  2. bezoek http://mitm.it vanuit de browser op uw mobiele apparaat.
  3. installeer de proxy op basis van het type van uw mobiele apparaat.

OK, laten we teruggaan naar de open pagina — http://127.0.0.1:8081/ — en de app starten die u test. Heb je verkeer tussen de app en de backend gezien? Bingo!

er zijn drie toepassingen waarmee mitmproxy scenario ‘ s voor:

  • mitmproxy – als je van terminal console, en zou willen gebruiken in server alleen modus.
  • mitmweb – als u liever de webpagina gebaseerde console.
  • mitmdump-Als u het HTTP-verkeer wilt opnemen / opnieuw afspelen.

de meeste functies zijn ook beschikbaar met de drie opties. Voor meer informatie, bezoek dit doc— https://docs.mitmproxy.org/archive/v4/concepts-options/

  • wat hield de test in?
  • een bug
  • wat kan ik nog meer doen met mitmproxy?
  • Final thoughts

wat hield de test in?

laten we beginnen met testen. Allereerst, Ik moest uitzoeken of onze app gecommuniceerd met de backend. Dit betekende het openen van de test app op mobiel en het gebruik van het filter veld op mitmproxy web console.

het HTTP verzoek en antwoord werd verwacht. Ik kon dan alle details in het rechterpaneel bekijken.

bij het gebruik van de mitmproxy app, Ik kan dezelfde gegevens bekijken, maar met een andere console GUI.

de volgende stap was om een aantal valse gegevens te simuleren in het verzoek API. Na het werken aan de bijdrage API, ik veranderde de completeberekeningen in het verzoek lichaam 100 en waargenomen wat er gebeurde.

ik plaatste de URL van het verzoek in het Intercept-veld en gebruikte de app om het API-verzoek te activeren. Ik kon dan zien het verzoek in mitmproxy met verschillende kleuren en een’ pauze ‘ icoon.

klikken op de Vink knop op het rechterpaneel nam me in editor modus, waar ik kon veranderen van de voltooide calculaties naar 100 in de payload.

ik klikte op de knop Hervatten in het tabblad stroom, die het opnieuw onderbroken omdat het wordt onderbroken in reactie op de API-verzoek. Tijd om opnieuw op Hervatten te klikken.

succes! Het passeerde de 100 als voltooidcalculation aan de backend, die ik kon verifiëren.

het is mogelijk om de responsgegevens op dezelfde manier te wijzigen.

zo kunnen we mitmproxy gebruiken om onze mobiele app te debuggen.

een bug

vinden en rapporteren tijdens het gebruik van mitmproxy, heb ik een bug gevonden en gerapporteerd. Voor het uitvoeren van diagnostiek, onze ontwikkelaars wilden details van de HTTP-verzoeken.

maar hoe kon ik dit doen? Moet ik alle request / response data kopiëren en plakken naar het bug management systeem of een bestand en delen met de ontwikkelaar? Of is er een betere manier?

ik heb het onderstaande commando uitgevoerd in Terminal, waarmee de opnamemodus is gestart.

mitmdump -w outfile

vervolgens heb ik de app geopend en het probleem van de bug gereproduceerd. Zodra de stappen waren voltooid, alle verkeer gegevens zou worden opgeslagen in”outfile”.

ik kan dit bestand dan delen met het ontwikkelteam, en ze kunnen gewoon het onderstaande commando uitvoeren om het opnieuw af te spelen.

mitmdump -nC outfile

voor meer informatie, zie https://docs.mitmproxy.org/stable/overview-features/#client-side-replay

wat kan ik nog meer doen met mitmproxy?

mijn ervaring met mitmproxy zette me aan het denken…

  • Hoe kan ik complexere scenario ‘ s en datas simuleren?
  • Hoe kan ik mitmproxy gebruiken in ons automation test framework?

de antwoorden op deze vragen vereisen een Python-script. Als je niet bekend bent met Python, moet je misschien uitzoeken of er een add-on is voor mmitmproxy die kan werken met andere talen.

ik schreef het volgende Python-script, probeerde een verzoek op te vangen en herschreef het antwoord.

om mitmproxy met het script te starten, kun je elk commando hieronder gebruiken:

mitmproxy -s proxy.pymitmweb -s proxy.pymitmdump -s proxy.py

Open de app, ga verder met de teststappen, en je zult zien dat de reactie is herschreven.

ons automation test framework is gebaseerd op NodeJS (Javascript), dus om mitmproxy te integreren, moeten we het script in een subproces aanroepen. Ontdek hier meer— https://docs.mitmproxy.org/stable/addons-scripting/

Final thoughts

houd in gedachten dat dit artikel alleen betrekking heeft op de meest fundamentele functies van mitmproxy. Er zijn verschillende geavanceerde functies waar ik het niet over had.

als we het hebben over vrije en open source tools, is het natuurlijk om aan te nemen dat ze moeilijk te gebruiken, onstabiel zijn en niet genoeg documentatie bevatten.

maar voelde ik me zo over mitmproxy? Geenszins.

het is gemakkelijk om te beginnen, betrouwbaar 99% van de tijd en echt flexibel. Ook is het gratis!

ik hoop dat u genoten hebt van deze introductie tot mitmproxy. Het zou geweldig zijn om je gedachten te horen als je het ook eens hebt geprobeerd.

Articles

Berichtnavigatie

Previous Post: Word gekust met dit maretak Margarita Cocktail recept
Next Post: SiOWfa16: Science in Our World: Certainty and Controversy

More Related Articles

mit Writing & Communication Center (WCC) Articles
Jesse ‘ s Really Bad Thoughts: een tiener met morbide obsessies Articles
meest begeerde bachelorettes 2020 Articles
een nieuwe CSGO operatie kan komen na nieuwe code veranderingen Articles
drinken in Amerika Articles
Biologie oer Articles

Geef een antwoord Antwoord annuleren

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Archieven

  • februari 2022
  • januari 2022
  • december 2021
  • november 2021
  • oktober 2021
  • september 2021
  • augustus 2021
  • juli 2021
  • juni 2021
  • Deutsch
  • Nederlands
  • Svenska
  • Norsk
  • Dansk
  • Español
  • Français
  • Português
  • Italiano
  • Română
  • Polski
  • Čeština
  • Magyar
  • Suomi
  • 日本語
  • 한국어

Meta

  • Inloggen
  • Berichten feed
  • Reacties feed
  • WordPress.org

Copyright © 2022 Cercle Blog.

Powered by PressBook Blog WordPress theme