Erfassen des HTTPS-Verkehrs der Anwendung

467
Charles Lakovski

Ich möchte Charles / Fiddler verwenden, um HTTPS-Verkehr von der Anwendung zu erfassen.

Nach der Installation eines vertrauenswürdigen Stammzertifikats habe ich festgestellt, dass es nicht von jeder Anwendung akzeptiert wird. Zum Beispiel kann ich alle von Chrome gestellten Anforderungen abfangen, aber bei Firefox muss ich ein vertrauenswürdiges Zertifikat hinzufügen.

Bei der Erfassung des Datenverkehrs für eine Java-Anwendung muss ein Zertifikat zu JVM TrustStore hinzugefügt werden. Wenn Sie ein Python-Skript verwenden, müssen Sie eine Codezeile hinzufügen, die ein exportiertes Zertifikat verwendet.

Wie kann ich Anforderungen analysieren, die von einer Software gestellt werden, die Proxy unterstützt (damit Reverse-Proxy problemlos verwendet werden kann), aber nach der Ausführung kann ich keinen Klartext erhalten, da ein vertrauenswürdiges Zertifikat erforderlich ist?

0
Es gibt keinen allgemeinen Mechanismus. Jede Anwendung kann die Zertifikatsüberprüfung beliebig durchführen. Einige verwenden spezifisch ein * gepinntes * Zertifikat, damit sie sich nicht einmal um Ihre Vertrauenskette kümmern, sondern nur um das bestimmte Zertifikat, das sie akzeptieren. Der Zertifikatspeicher des Betriebssystems gilt nur für die Programme, die ihn tatsächlich verwenden. Bob vor 6 Jahren 2
Vielen Dank für die Antwort! Es klärt mich sehr. Ist es möglich, Anforderungen von der Anwendung zu erfassen, die das erzeugte Zertifikat nicht akzeptieren? Charles Lakovski vor 6 Jahren 0
Nicht mit einem Proxy, nein. Wenn es absolut nicht möglich ist, Ihr Zertifikat anzunehmen, müssen Sie lediglich einen Debugger direkt an den Prozess anhängen und den Speicher der Anwendung lesen. Das ist natürlich wesentlich schwieriger. (Eine andere Möglichkeit, wenn die Anwendung oder der Server eine schwache Implementierung verwendet, besteht darin, die Verschlüsselung oder das Protokoll direkt anzugreifen. YMMV.) Bob vor 6 Jahren 0

0 Antworten auf die Frage