
Burp Plugin zum Entschlüsseln von AES-verschlüsseltem Datenverkehr im laufenden Betrieb
Burpsuite-Plugin zum Entschlüsseln von AES-verschlüsseltem Verkehr im laufenden Betrieb
HINWEIS: Derzeit wird AES/CBC/PKCS5Padding && AES/ECB/PKCS5Padding Ver-/Entschlüsselung unterstützt.
$ git clone https://github.com/Ebryx/AES-Killer/
$ cd AES-Killer
$ ./gradlew clean build
AES_Killer-Parameters.java: Angenommen, die Anwendung erzwingt eine Verschlüsselung auf wenigen Parametern in der Anfrage und diese Parameter ändern sich jedes Mal in Bezug auf Endpunkt/Anfrage, dann müssen Sie wie folgt vorgehen:
- Add endpoints by adding this.endpoints.add("abc"); in registerExtenderCallbacks function
- Add parameters which will be encrypted in `String[][] parameters`
- Add rest of parameter in grant_type or make blank entry
und lassen Sie den Code die Magie für Sie erledigen.
AES_Killer_v3.0.java: Diese Variante ist generisch und kann mit jedem Anfrageformat umgehen, d.h. GET, POST (Form, JSON) mit wechselnden Parametern an verschiedenen Endpunkten:
- Clone the project and replace the BurpExtender.java with AES_Killer_v3.0.java code - Modify the endpoints and parameters of each request type in order as shown below - Update SecretKey and IV parameters and other required methods - Build the project and you are good to go
AES_Killer_v4.0.java: Diese Variante ist für mehrstufige Verschlüsselung, bei der die Anwendung einige Anfrageparameter mit einem Schlüssel verschlüsselt und später den gesamten Anfragekörper mit einem anderen Schlüssel verschlüsselt:
- Clone the project and replace the BurpExtender.java with AES_Killer_v4.0.java code - Modify the endpoints and parameters as shown below - Update Secret Keys and other required methods - Build the project and add jar file to your extender
HINWEIS: Diese Varianten werden aufgrund der Beschaffenheit Ihrer Anfrage nicht direkt für Sie funktionieren, daher sind möglicherweise kleine Anpassungen erforderlich.
Download jar file from Release and add in burpsuite
Sobald wir AES Killer starten, übernimmt es die Kontrolle über Burps IHttpListener.processHttpMessage, der für die Verarbeitung des gesamten ausgehenden und eingehenden Verkehrs verantwortlich ist, und AES Killer führt Folgendes aus:
ProcessHttpMessage die AnfrageProcessHttpMessage die Antwort zuerst, bevor sie uns angezeigt wirdSo erhalten wir nur die Klartext-Antwort und können mit der Klartext-Anfrage spielen.
Wir können auch manuell Zeichenketten mit AES Killer ver- und entschlüsseln. Nehmen wir einen verschlüsselten String aus der Anfrage TYROd49FWJjYBfv02oiUzwRQgxWMWiw4W3oCqvNf8h3bnb7X0bobypFzMt797CYU und entschlüsseln ihn mit AES Killer. Ebenso können wir auch die Verschlüsselung durchführen.
Download Demo App from here