Probleme beim Einrichten der Portweiterleitung für den transparenten Proxy unter Mac OS X

8

Ich versuche, einen transparenten Proxy auf meinem Mac OS X Lion (10.7.5) einzurichten, damit ich mitmproxy (um den SSL-Verkehr von Android-Anwendungen abzufangen) verwenden kann. Ich folgte den Schritten in den mitmproxy-Dokumenten zum Einrichten der Portweiterleitung mit PF unter Mac OS X , und alle gingen ohne Fehler:

%Vor%

Aber es scheint keine Wirkung zu haben. Wenn ich auf Websites in meinem Browser gehe, erfolgt eine direkte Anfrage, und der angegebene Port wird nicht durchsucht. Hier ist die Datei pf.conf ( en1 ist mein WLAN):

%Vor%     
babonk 06.12.2013, 22:41
quelle

3 Antworten

2

Danke, dass Sie heute beim IRC-Kanal vorbeischauen. Ich habe das aufgespürt, und das grundlegende Problem ist, dass die rdr-Regeln für eingehenden Datenverkehr gelten. Dies bedeutet, dass sie den von der Box kommenden Verkehr NICHT umleiten. Wenn Sie darüber nachdenken, ist dies unvermeidlich: Wir können nicht zwischen einer ausgehenden Verbindung von einer Nicht-Mitmpfroxy-App und einer ausgehenden Verbindung von Mitmproxy selbst unterscheiden. Wir können route-to verwenden, um den Datenverkehr an lo0 zu senden und ihn dann umzuleiten, aber das verursacht eine Endlosschleife, bei der die eigenen ausgehenden Verbindungen mitmproxy ebenfalls zurück nach mitmproxy geleitet werden.

Da ich ein wenig über Ihren Anwendungsfall weiß, würde ich vorschlagen, Möglichkeiten zu finden, dies mit VirtualBox zu tun. Ein Angriffsplan wäre, das VirtualBox-Netzwerk im Bridge-Modus einzurichten und dann eine pf-Regel mit einer Übereinstimmung der Quelladresse zu verwenden, um den Traffic an mitmproxy umzuleiten. Das sollte tun, was Sie wollen, und keine Singularitäten in Zeit und Raum durch unendliche Umleitung verursachen.

Bitte blättern Sie erneut mit dem IRC-Kanal, wenn Sie eine weitere Hand benötigen.

    
cortesi 08.12.2013 08:45
quelle
2

Hast du net.inet.ip.scopedroute=0 versucht? Von Ссылка :

  

Jetzt, wenn Sie das oben Setup beenden, werden Sie das bemerken   nichts funktioniert wirklich. Die Ursache dafür ist ein Fehler im OS X Kernel   Dazu muss das Flag net.inet.ip.scopedroute auf 0 gesetzt werden. Ich bin es nicht   ganz sicher, was es tut, aber das Internet berichtet, dass es bricht   Netzwerkfreigabe durch die Benutzereinstellungen. In jedem Fall behebt es   ipfw-basierte Weiterleitung, so dass Sie es mit sysctl drehen können:

     

$ sudo sysctl -w net.inet.ip.scopedroute=0

     

Leider kann in OS X Lion diese Flagge nicht entfernt werden   Benutzerbereich, so dass Sie es als Startparameter festlegen und dann neu starten müssen   dein Computer. Sie können dies tun, indem Sie die   /Library/Preferences/SystemConfiguration/com.apple.Boot.plist Datei   (Fortsetzung ...)

    
a paid nerd 30.09.2014 06:08
quelle
0

Sie verwenden den Port 4500 anstelle des Standardports 8080. Fängst du mitmproxy mit der Port-Spezifikation an ?: mitmproxy -T --host -p 4500

Haben Sie die Schritte zum Einrichten des Zertifikats auf dem Android-Gerät ausgeführt? Ссылка

Ein weiteres Problem könnte das Gateway auf Ihrem Android-Handy sein: Einstellungen - Wifi - Halten Sie das Netzwerk, das Sie verwenden - Netzwerk bearbeiten - Erweiterte Optionen - Legen Sie als Gateway die IP-Adresse Ihres Computers mit mitmproxy.

Übrigens habe ich die gleiche Warnung mit Nein ALTQ-Funktion, aber es funktioniert.

    
Luis Rovirosa 05.02.2014 09:54
quelle