4.4 KiB
Lernen Sie AWS-Hacking von Null auf Held mit htARTE (HackTricks AWS Red Team Expert)!
Andere Möglichkeiten, HackTricks zu unterstützen:
- Wenn Sie Ihr Unternehmen in HackTricks bewerben möchten oder HackTricks als PDF herunterladen möchten, überprüfen Sie die ABONNEMENTPLÄNE!
- Holen Sie sich das offizielle PEASS & HackTricks-Merchandise
- Entdecken Sie The PEASS Family, unsere Sammlung exklusiver NFTs
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repositories senden.
Zusammenfassung des Angriffs
Stellen Sie sich einen Server vor, der einige Daten durch Anhängen eines Geheimnisses an einige bekannte Klartextdaten signiert und dann diese Daten hashiert. Wenn Sie Folgendes wissen:
- Die Länge des Geheimnisses (dies kann auch durch Brute-Force aus einem gegebenen Längenbereich ermittelt werden)
- Die Klartextdaten
- Der Algorithmus (und er ist anfällig für diesen Angriff)
- Das Padding ist bekannt
- Normalerweise wird ein Standard-Padding verwendet, daher ist dies auch der Fall, wenn die anderen 3 Anforderungen erfüllt sind
- Das Padding variiert je nach Länge des Geheimnisses+Daten, daher ist die Länge des Geheimnisses erforderlich
Dann ist es für einen Angreifer möglich, Daten anzuhängen und eine gültige Signatur für die vorherigen Daten + angehängte Daten zu generieren.
Wie?
Grundsätzlich generieren die anfälligen Algorithmen die Hashes, indem sie zunächst einen Block von Daten hashen und dann aus dem zuvor erstellten Hash (Zustand) den nächsten Block von Daten hinzufügen und ihn hashen.
Stellen Sie sich nun vor, das Geheimnis lautet "geheim" und die Daten lauten "daten", der MD5 von "geheimdaten" ist 6036708eba0d11f6ef52ad44e8b74d5b.
Wenn ein Angreifer den String "anhängen" anhängen möchte, kann er Folgendes tun:
- Generieren Sie einen MD5-Hash von 64 "A"s
- Ändern Sie den Zustand des zuvor initialisierten Hashs in 6036708eba0d11f6ef52ad44e8b74d5b
- Hängen Sie den String "anhängen" an
- Beenden Sie den Hash und der resultierende Hash wird ein gültiger Hash für "geheim" + "daten" + "Padding" + "anhängen" sein
Tool
{% embed url="https://github.com/iagox86/hash_extender" %}
Referenzen
Sie können diesen Angriff gut erklärt finden unter https://blog.skullsecurity.org/2012/everything-you-need-to-know-about-hash-length-extension-attacks
Lernen Sie AWS-Hacking von Null auf Held mit htARTE (HackTricks AWS Red Team Expert)!
Andere Möglichkeiten, HackTricks zu unterstützen:
- Wenn Sie Ihr Unternehmen in HackTricks bewerben möchten oder HackTricks als PDF herunterladen möchten, überprüfen Sie die ABONNEMENTPLÄNE!
- Holen Sie sich das offizielle PEASS & HackTricks-Merchandise
- Entdecken Sie The PEASS Family, unsere Sammlung exklusiver NFTs
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repositories senden.