Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Uchihash — Um pequeno utilitário para lidar com hashes embutidos em malware. | Kitploit
Ferramentas/GitHubGitHub/n1ght-w0lf/uchihash
Análise de HashEngenharia ReversaScripting e AutomaçãoAnálise de MalwareAnálise de Binários
GitHubn1ght-w0lf/uchihash

Uchihash

Um pequeno utilitário para lidar com hashes embutidos em malware.

Ver Repositório
52750há 2 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Uchihash

Uchihash é uma pequena ferramenta que pode economizar tempo dos analistas de malware ao lidar com valores de hash embutidos usados para várias coisas, como:

  • Importar APIs dinamicamente (especialmente em shellcode)
  • Verificar processos em execução usados por analistas (Anti-Análise)
  • Verificar artefatos de VM ou Antivírus (Anti-Análise)

Recursos

  • Gerar hashes usando um algoritmo padrão ou seu próprio algoritmo de hash personalizado.
  • Gerar scripts (IDC, IDAPython, Ghidra) para anotar valores de hash no seu banco de dados de análise.
  • Gerar um hashmap e pesquisar valores de hash.

Instalação

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

Uso

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

Notas

  • --algo: Um dos algoritmos de hash disponíveis

  • --apis: Gera hashes de uma enorme lista de APIs do Windows (veja data/apis_list.txt)

  • --keywords: Gera hashes de uma lista de palavras-chave comuns usadas por famílias de malware, como ferramentas de análise e artefatos de VM/Antivírus/EDR (veja data/keywords_list.txt)

  • --list : As palavras são separadas por uma nova linha (veja examples/mywords.txt)

  • --script: A função de hash deve ser chamada hashme e recebe um argumento que é uma string de bytes representando o valor para o qual queremos calcular o hash, e o valor de retorno deve estar em formato hexadecimal (veja examples/custom_algo.txt)

  • --search: O arquivo a ser pesquisado deve estar no formato JSON (veja examples/searchme.txt)

  • : Os valores de hash são separados por uma nova linha e devem estar em formato hexadecimal (veja )

veja a pasta de exemplos para mais esclarecimentos

Algoritmos de Hash Disponíveis

  • 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

Exemplo

Vamos usar um exemplo com uma família de malware real, neste caso temos BuerLoader que está usando valores de hash para importar APIs dinamicamente e está usando um algoritmo de hash personalizado.

Primeiro precisamos implementar o algoritmo de hash em python:

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)

Então calculamos os hashes de todas as APIs usando o seguinte comando:

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

Este comando gerará dois arquivos, o primeiro é "output/search_hashmap.txt" que mapeia valores de hash para seus nomes de API correspondentes da seguinte forma:

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

O segundo arquivo é "output/idapython_script.py" que você pode executar no IDA Pro e o script adicionará os comentários de hash ao seu IDB como visto abaixo:

Baixar ferramenta
--hashes
examples/myhashes.txt