hacktricks/crypto-and-stego/hash-length-extension-attack.md

5.3 KiB

Atak rozszerzenia długości hasha

{% hint style="success" %} Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Wsparcie dla HackTricks
{% endhint %}

WhiteIntel

WhiteIntel to wyszukiwarka zasilana dark-web, która oferuje darmowe funkcjonalności do sprawdzenia, czy firma lub jej klienci zostali skompromentowani przez złośliwe oprogramowanie kradnące.

Ich głównym celem WhiteIntel jest zwalczanie przejęć kont i ataków ransomware wynikających z złośliwego oprogramowania kradnącego informacje.

Możesz sprawdzić ich stronę i wypróbować ich silnik za darmo pod adresem:

{% embed url="https://whiteintel.io" %}


Podsumowanie ataku

Wyobraź sobie serwer, który podpisuje jakieś dane, dodając sekret do znanych danych w postaci tekstu jawnego, a następnie haszując te dane. Jeśli znasz:

  • Długość sekretu (można to również wypróbować z danego zakresu długości)
  • Dane w postaci tekstu jawnego
  • Algorytm (i jest podatny na ten atak)
  • Padding jest znany
  • Zwykle używany jest domyślny, więc jeśli pozostałe 3 wymagania są spełnione, to również jest
  • Padding różni się w zależności od długości sekretu + danych, dlatego długość sekretu jest potrzebna

Wtedy możliwe jest, aby atakujący dodał dane i wygenerował ważny podpis dla poprzednich danych + dodanych danych.

Jak?

Zasadniczo podatne algorytmy generują hashe, najpierw haszując blok danych, a następnie, z wcześniej utworzonego hasha (stanu), dodają następny blok danych i haszują go.

Wyobraź sobie, że sekret to "secret", a dane to "data", MD5 "secretdata" to 6036708eba0d11f6ef52ad44e8b74d5b.
Jeśli atakujący chce dodać ciąg "append", może:

  • Wygenerować MD5 z 64 "A"
  • Zmienić stan wcześniej zainicjowanego hasha na 6036708eba0d11f6ef52ad44e8b74d5b
  • Dodać ciąg "append"
  • Zakończyć haszowanie, a wynikowy hash będzie ważny dla "secret" + "data" + "padding" + "append"

Narzędzie

{% embed url="https://github.com/iagox86/hash_extender" %}

Odniesienia

Możesz znaleźć ten atak dobrze wyjaśniony w https://blog.skullsecurity.org/2012/everything-you-need-to-know-about-hash-length-extension-attacks

WhiteIntel

WhiteIntel to wyszukiwarka zasilana dark-web, która oferuje darmowe funkcjonalności do sprawdzenia, czy firma lub jej klienci zostali skompromentowani przez złośliwe oprogramowanie kradnące.

Ich głównym celem WhiteIntel jest zwalczanie przejęć kont i ataków ransomware wynikających z złośliwego oprogramowania kradnącego informacje.

Możesz sprawdzić ich stronę i wypróbować ich silnik za darmo pod adresem:

{% embed url="https://whiteintel.io" %}

{% hint style="success" %} Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Wsparcie dla HackTricks
{% endhint %}