Wenn Sie Burp Suite verwenden, werden Sie möglicherweise häufig auf Daten stoßen, die in irgendeiner Form kodiert sind. Die Kodierung dient im Allgemeinen dazu, die Daten so zu konfigurieren, dass das Computersystem sie verarbeiten kann, leider macht sie es im Allgemeinen unmöglich oder zumindest schwierig, sie zu lesen. In einigen Fällen können die Daten wieder in eine für Menschen lesbare Form dekodiert werden, aber in anderen Fällen waren die kodierten Daten bereits zufällig und liefern keine verständlichen Ergebnisse. Burp enthält ein Tool namens "Decoder", das beim Decodieren von Daten hilft, damit Sie sehen können, was sie sagen oder ob sie keine für Menschen lesbaren Daten enthalten.
So dekodieren Sie Daten
Um Daten zum Decoder hinzuzufügen, können Sie sie entweder manuell eingeben, aus der Zwischenablage einfügen oder in den Registerkarten Target, Proxy, Intruder oder Repeater mit der rechten Maustaste darauf klicken und auf „An Decoder senden“ klicken. Sie können dies mit ganzen Anfragen tun; Im Allgemeinen ist es jedoch hilfreicher, sie auf die Daten zu beschränken, die Sie dekodieren möchten, indem Sie sie markieren, bevor Sie mit der rechten Maustaste klicken.
Sobald Sie Daten in Decoder haben, können Sie sie decodieren, indem Sie rechts auf die Schaltfläche „Decodieren als“ klicken und das Codierungsschema auswählen, das Ihrer Meinung nach verwendet wird. Alle Optionen funktionieren für jede Eingabe, aber sie erzeugen möglicherweise keine druckbaren Zeichen, was im Allgemeinen bedeutet, dass diese Codierung nicht verwendet wurde oder die Daten nur zufällig generiert wurden.
Sie können zwischen den Kodierungen Plain, URL, HTML, Base64, ASCII Hex, Hex, Octal, Binary und Gzip wählen. Wählen Sie eine davon aus dem Dropdown-Feld aus und Burp zeigt die Ausgabe in einem neuen Feld darunter an. Die neue Box wird mit einem eigenen Satz identischer Steuerelemente geliefert. Wenn Sie also feststellen, dass die Ausgabe noch codiert ist, können Sie sie erneut decodieren, auch wenn der Decodierungstyp anders ist. Wenn Sie beispielsweise einen Base64-String decodieren und einen anderen Base64-String finden, können Sie auch diesen decodieren.
Tipp: Sie können viele Dekodierungsstufen aneinanderreihen; Sie sind nicht auf nur eine oder zwei Stufen beschränkt.
So codieren Sie Daten
Sie können Decoder auch verwenden, um Daten in allen verfügbaren Kodierungsmethoden zu kodieren, indem Sie auf „Kodieren als“ klicken und eine Kodierungsmethode auswählen. Dies ist nützlich, wenn Sie eine Zeichenfolge decodieren, ändern und dann erneut codieren müssen, um die Änderung in eine Webanforderung einzufügen.
Tipp: Die Kodierung ist nicht besonders intelligent; Beispielsweise müssen alphanumerische Zeichen nicht in URLs codiert werden, da es sich um gültige Zeichen handelt, aber der URL-Encoder codiert jedes Zeichen.
Sie können auch einen Hash eines Strings generieren, indem Sie auf „Hash“ klicken und dann einen Algorithmus auswählen. Burp bietet keine Möglichkeit, einen Hash umzukehren, da dies nicht möglich ist, da Hashes Einwegfunktionen sind.
Tipp: Mit Decoder ist jede Kombination von Decodierung, Codierung und Hashing möglich, obwohl einige Vorgehensweisen logisch nicht sinnvoll sind.
Sie können einen Teil eines Strings in Decoder decodieren, codieren oder hashen, indem Sie ihn markieren, bevor Sie auswählen, wie er behandelt werden soll. Dies ist nützlich, wenn Sie zwei Variablen haben, die mit unterschiedlichen Methoden kodiert sind.
Hinweis: Decoder unterstützt keine Unterregisterkarten, sodass Sie jeweils nur einen Eingang verwalten können. Achten Sie darauf, das Ergebnis eines Prozesses zu kopieren, bevor Sie weitere Daten an Decoder senden, es sei denn, Sie sind damit einverstanden, sie zu verlieren.