Wenn Sie Burp Suite verwenden, werden Sie möglicherweise häufig auf Daten stoßen, die eine Form der Kodierung verwenden. 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“, um Daten zu decodieren, 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.
Klicken Sie mit der rechten Maustaste auf die Daten, die Sie dekodieren möchten, und klicken Sie dann auf „An Decoder senden“.
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 verfügt über einen eigenen Satz identischer Steuerelemente. 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.
Sie können Daten decodieren und das Ergebnis dann erneut decodieren, wenn mehrere Codierungsstufen vorhanden sind.
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 Dekodierung, Kodierung und Hashing möglich, obwohl einige Vorgehensweisen logisch nicht sinnvoll sind.
Sie können Decoder auch verwenden, um Daten zu codieren oder zu hashen.
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 codiert 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 möchten es verlieren.