Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Tools/GitHubGitHub/n1ght-w0lf/uchihash
Hash-AnalyseReverse EngineeringScripting & AutomatisierungMalware-AnalyseBinäranalyse
GitHubn1ght-w0lf/uchihash

Uchihash

Ein kleines Dienstprogramm zur Handhabung von in Malware eingebetteten Hashes.

Repository anzeigen
52750vor 2 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Uchihash

Uchihash ist ein kleines Tool, das Malware-Analysten Zeit sparen kann, die mit eingebetteten Hash-Werten umgehen müssen, die für verschiedene Dinge verwendet werden, wie z. B.:

  • Dynamisches Importieren von APIs (insbesondere in Shellcode)
  • Überprüfen laufender Prozesse, die von Analysten verwendet werden (Anti-Analyse)
  • Überprüfen von VM- oder Antivirus-Artefakten (Anti-Analyse)

Funktionen

  • Hashes mit einem Standard-Algorithmus oder Ihrem eigenen benutzerdefinierten Hashing-Algorithmus generieren.
  • Skripte (IDC, IDAPython, Ghidra) generieren, um Hash-Werte in Ihrer Analyse-Datenbank zu annotieren.
  • Eine Hashmap generieren und nach Hash-Werten suchen.

Installation

root@kitploit:~
$ git clone https://github.com/N1ght-W0lf/Uchihash.git
$ pip install -r requirements.txt

Verwendung

root@kitploit:~
usage: uchihash.py [-h] [--algo ALGO] [--apis] [--keywords] [--list LIST] [--script SCRIPT] [--search SEARCH]
                   [--hashes HASHES] [--idaidc] [--idapython]

options:
  -h, --help       show this help message and exit
  --algo ALGO      Hashing algorithm
  --apis           Calculate hashes of APIs
  --keywords       Calculate hashes of keywords
  --list LIST      Calculate hashes of your own word list
  --script SCRIPT  Script file containing your custom hashing algorithm
  --search SEARCH  Search a JSON File containing hashes mapped to words
  --hashes HASHES  File containing list of hashes to search for
  --idaidc         Generate an IDC script to annotate hash values in IDA Pro
  --idapython      Generate an IDAPython script to annotate hash values in IDA Pro
  --ghidra         Generate a python script to annotate hash values in Ghidra

Examples:
    * python uchihash.py --algo crc32 --apis
    * python uchihash.py --algo murmur3 --list mywords.txt
    * python uchihash.py --script myalgo.py --apis --idapython
    * python uchihash.py --search hashmap.txt --hashes myhashes.txt

Hinweise

  • --algo: Einer der verfügbaren Hashing-Algorithmen

  • --apis: Hasht eine große Liste von Windows-APIs (siehe data/apis_list.txt)

  • --keywords: Hasht eine Liste gängiger Schlüsselwörter, die von Malware-Familien verwendet werden, wie Analyse-Tools und VM-/Antivirus-/EDR-Artefakte (siehe data/keywords_list.txt)

  • --list : Wörter werden durch eine neue Zeile getrennt (siehe examples/mywords.txt)

  • --script: Die Hashing-Funktion muss hashme heißen und nimmt ein Argument, einen Byte-String, der den Wert darstellt, für den wir den Hash berechnen möchten. Der Rückgabewert muss im Hex-Format vorliegen (siehe examples/custom_algo.txt)

  • --search: Die zu durchsuchende Datei muss im JSON-Format vorliegen (siehe examples/searchme.txt)

  • --hashes: Hash-Werte werden durch eine neue Zeile getrennt und müssen im Hex-Format vorliegen (siehe )

Weitere Informationen finden Sie im Beispiel-Ordner.

Verfügbare Hashing-Algorithmen

  • md4
  • md5
  • sha1
  • sha224
  • sha256
  • sha384
  • sha512
  • ripemd160
  • whirlpool
  • crc8
  • crc16
  • crc32
  • crc64
  • djb2
  • sdbm
  • loselose
  • fnv1_32
  • fnv1a_32
  • fnv1_64
  • fnv1a_64
  • murmur3

Beispiel

Nehmen wir ein Beispiel mit einer echten Malware-Familie, in diesem Fall haben wir BuerLoader, der Hash-Werte verwendet, um APIs dynamisch zu importieren, und einen benutzerdefinierten Hashing-Algorithmus verwendet.

Zuerst müssen wir den Hashing-Algorithmus in Python implementieren:

root@kitploit:~
def ROR4(val, bits, bit_size=32):
    return ((val & (2 ** bit_size - 1)) >> bits % bit_size) | \
           (val << (bit_size - (bits % bit_size)) & (2 ** bit_size - 1))
    
def hashme(s):
    res = 0
    for c in s:
        v3 = ROR4(res, 13)
        v4 = c - 32
        if c < 97:
            v4 = c
        res = v4 + v3
    return hex(res)

Dann berechnen wir die Hashes aller APIs mit dem folgenden Befehl:

root@kitploit:~
$ python uchihash.py --script custom_algo.py --apis --idapython

Dieser Befehl generiert zwei Dateien. Die erste ist "output/search_hashmap.txt", die Hash-Werte ihren entsprechenden API-Namen wie folgt zuordnet:

root@kitploit:~
{
  "0x8a8b468c": "LoadLibraryW",
  "0x302ebe1c": "VirtualAlloc",
  "0x1803b7e3": "VirtualProtect",
  "0xe183277b": "VirtualFree",
  "0x24e2968d": "GetComputerNameW",
  "0xab489125": "GetNativeSystemInfo",
  .......
}

Die zweite Datei ist "output/idapython_script.py", die Sie in IDA Pro ausführen können. Das Skript fügt die Hash-Kommentare zu Ihrer IDB hinzu, wie unten zu sehen:

Tool herunterladen
examples/myhashes.txt