Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Uchihash — Небольшая утилита для работы с встроенными хешами вредоносных программ. | Kitploit
Инструменты/GitHubGitHub/n1ght-w0lf/uchihash
Анализ хэшейОбратная инженерияСкриптинг и автоматизацияАнализ вредоносных программАнализ Бинарных Файлов
GitHubn1ght-w0lf/uchihash

Uchihash

Небольшая утилита для работы с встроенными хешами вредоносных программ.

Репозиторий
527773 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Uchihash

Uchihash — это небольшая утилита, которая экономит время аналитиков вредоносного ПО при работе со встроенными хеш-значениями, используемыми для различных целей, таких как:

  • Динамический импорт API (особенно в шелл-коде)
  • Проверка процессов, запущенных аналитиками (анти-анализ)
  • Проверка артефактов виртуальных машин или антивирусов (анти-анализ)

Возможности

  • Генерация хешей с помощью стандартного алгоритма или собственного пользовательского алгоритма хеширования.
  • Генерация скриптов (IDC, IDAPython, Ghidra) для аннотирования хеш-значений в вашей базе анализа.
  • Генерация хеш-карты и поиск хеш-значений.

Установка

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

Использование

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

Примечания

  • --algo: Один из доступных алгоритмов хеширования

  • --apis: Хеширует огромный список Windows API (см. data/apis_list.txt)

  • --keywords: Хеширует список распространённых ключевых слов, используемых семействами вредоносных программ, таких как инструменты анализа и артефакты VM/Антивирус/EDR (см. data/keywords_list.txt)

  • --list: Слова разделяются новой строкой (см. examples/mywords.txt)

  • --script: Функция хеширования должна называться hashme и принимать один аргумент — байтовую строку, представляющую значение, для которого нужно вычислить хеш; возвращаемое значение должно быть в шестнадцатеричном формате (см. examples/custom_algo.txt)

  • --search: Файл для поиска должен быть в формате JSON (см. examples/searchme.txt)

  • --hashes: Хеш-значения разделяются новой строкой и должны быть в шестнадцатеричном формате (см. examples/myhashes.txt)

Дополнительные примеры смотрите в папке examples.

Доступные алгоритмы хеширования

  • 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

Пример

Рассмотрим пример с реальным семейством вредоносных программ. В данном случае у нас есть BuerLoader, который использует хеш-значения для динамического импорта API и применяет пользовательский алгоритм хеширования.

Сначала нам нужно реализовать алгоритм хеширования на Python:

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)

Затем вычисляем хеши всех API с помощью следующей команды:

$ python uchihash.py --script custom_algo.py --apis --idapython

Эта команда создаст два файла. Первый — "output/search_hashmap.txt", который сопоставляет хеш-значения с соответствующими именами API следующим образом:

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

Второй файл — "output/idapython_script.py", который можно запустить в IDA Pro; скрипт добавит комментарии с хешами в вашу IDB, как показано ниже:

Скачать инструмент