Определить тип хеша kali
Инструкции по HashTag
Близкие программы:
факультете информационной безопасности от GeekBrains? Комплексная годовая программа практического обучения с охватом всех основных тем, а также с дополнительными курсами в подарок. По итогам обучения выдаётся свидетельство установленного образца и сертификат. По этой ссылке специальная скидка на любые факультеты и курсы!
Когда вы имеете дело с неизвестным хэшем, первый шаг – корректная идентификация типа.
Определения типов хэшей при помощи скрипта hash-Identifier для расшифровки паролей
Автор: Kody
Хэши обычно используются для хранения конфиденциальной информации, как, например, учетных записей, которые не должны находиться в открытом виде. При помощи утилит наподобие Hashcat мы можем взломать эти хэши однако только в случае, если знаем алгоритм генерации. Используя инструменты навроде скрипта hash-identifier, можно легко определить тип любых хэшей, чтобы затем указать правильный режим при работе с Hashcat.
Помимо взлома хэшей hash-identifier также полезен для идентификации алгоритма, используемого при выдаче контрольной суммы для загрузки файлов. Кроме того, этот скрипт помогает определить, к какому приложению относится хэшированный файл или значение (например, SQL базе или какому-либо другому формату, специфичному для конкретного поставщика).
Что такое хэш и как расшифровать пароль?
Как было сказано ранее, пароли, извлекаемые из базы данных или компьютера, обычно хранятся в виде хэшей, а не в открытом виде. Функция хэширования преобразует пароли в хаотичный набор символов и чисел, которые не должны быть обратимы обратно в пароль.
Однако два или более одинаковых пароля, при использовании одной и той же функции, будут иметь один и тот же хэш. Соответственно, при помощи этой функции можно получить набор хэшей для списка паролей, а затем использовать этот перечень для обнаружения подходящего пароля. Подобным образом работает множество утилит для взлома.
Хотя хранение пароля в виде хэша лучше, чем в открытом виде, вероятность взлома все равно остается, если у злоумышленника хороший набор правил или словарь, которые можно использовать в Hashcat или другой подобной программе.
Если вы много работаете с хэшами, то легко увидите разницу между разными и часто используемыми типами.
Например, сможете ли вы на глаз определить, к какому типу относятся хэши, указанные ниже?
Хотя вы могли видеть и тот и другой хэш ранее, ответ на вопрос, какой хэш - MD5, а какой - SHA1, не столь очевиден. Еще большая путаница может возникнуть со схожими типами хэшей, относящиеся к разным режимам в Hashcat. В случае с хэшами, приведенными выше, этот факт имеет чрезвычайно важное значение.
При использовании Hashcat для взлома этого хэша мы должны установить опцию –m с целью работы в нужном режиме. Для взлома хэша MD5 мы бы указали режим 0.
В итоге, установив нужный алгоритм и используя хороший словарь, после расшифровки хэша мы получили слово «hashcat».
Какие хэши поддерживаются?
На данный момент Hashcat в состоянии расшифровать большое количество хэшей. В репозитории на GitHub для утилиты hash-identifier список поддерживаемых хэшей очень внушителен:
Что понадобится
Для начала нужно установить Python3 на вашем компьютере (есть версии для разных платформ). Кроме того, вам понадобится утилита Hashcat, которую можно загрузить, используя команду apt install hashcat, после обновления системы при помощи команд apt update и apt upgrade.
Если вы хотите сгенерировать ваши собственные хэши для тестового взлома, то можете воспользоваться командой в формате echo -n PLAINTEXT | (HASHTYPE)sum. Например, при создании хэша SHA1 для слова «nullbyte» я запустил следующую команду:
Шаг 1. Загрузка и установка Hash-Identifier
Установить скрипт, написанный на Python, – очень просто. Откройте терминал и запустите следующую команду:
Затем посмотрите содержимое директории hash-identifier:
Вы должны обнаружить файл hash-id.py, который можно запустить при помощи команды ниже:
Шаг 2. Идентификация неизвестных хэшей
В качестве пробного подхода при помощи hash-identifier попробуем опознать следующие пять неизвестных хэшей:
Для начала в командной строке вводим первую строку и быстро получаем результат, что скорее всего имеем дело с хэшем, используемым в MySQL, который попробуем взломать чуть позже.
Второй хэш, показанный ниже, опознается как SHA256. Другой вероятный вариант - Haval256.
Третий хэш опознается как SHA1:
Четвертый хэш опознается как SHA512:
Наконец, пятый и последний хэш опознается как MD5:
Все прошло без особых проблем. Следующий шаг – поиск нужного режима, соответствующего обнаруженному типу, который будет указываться в Hashcat во время взлома.
Шаг 3. Подбор режима в Hashcat
При поиске нужного режима мы можем взглянуть на огромный список хэшей, поддерживаемых в Hashcat. Сокращенный вариант с наиболее популярными типами приведен ниже:
В списке выше есть два примера, которые могут соответствовать первому хэшу (7196759210defdc0), рассмотренному нами в предыдущем шаге. На первый взгляд, режим 200 «MySQL323» наиболее соответствует. Подтвердить гипотезу можно при помощи проверки тестового хэша в hash-identifier.
Точное совпадение с нужным хэшем:
Если мы попробуем другой тип (300), то увидим, что результаты не совпадают.
Соответственно, еще раз убеждаемся, что режим 200 выбран правильно.
Шаг 4. Расшифровка хэша при помощи Hashcat
После идентификации типа хэша и подбора нужно режима можно приступать к расшифровке пароля в Hashcat. Вначале нужно создать словарь с паролями, который будет использоваться в Hashcat для атаки на хэш. В сети есть много доступных списков, например, RockYou, но в нашем случае мы будем создавать тестовый словарь example.dict с несколькими паролями.
Если вы все еще находитесь внутри скрипта hash-identifier, нажмите Ctrl-C, а затем откройте файл в текстовом редакторе nano, запустив следующую команду:
После добавления нескольких предполагаемых паролей, один из которых – «hashcat», нажимаем Ctrl-X для выхода из редактора и вводим Y, чтобы сохранить изменения в файле. Теперь мы можем использовать этот файл в качестве словаря вместе с ранее выбранным режимом для взлома хэша. Базовая команда выглядит примерно так:
Вместо значения HASH_VALUE указываем хэш 7196759210defdc0, вместо MODE_NUMBER – подобранный ранее режим 200. Результат работы показан ниже. Если у вас старая система, как в моем случае – нужно указать параметр –force.
В результате мы получили 7196759210defdc0:hashcat и смогли расшифровать хэш посредством сравнения с элементами словаря из файла example.dict.
Когда вы имеете дело с неизвестным хэшем, первый шаг – корректная идентификация типа. Хотя скрипт hash-identifier – не идеален, но позволяет без особых проблем опознать наиболее распространённые хэши и отличить разные типа хэшей, которые выглядят одинаково, но требуют разных режим работы в Hashcat. Даже если hash-identifier не уверен, с каким типом вы имеете дело, сравнение с результатами примеров с сайта Hashcat, может помочь в идентификации.
Надеюсь это руководство, посвященное опознанию неизвестных хэшей, вам понравилось.
Один хакер может причинить столько же вреда, сколько 10 000 солдат! Подпишись на наш Телеграм канал, чтобы узнать первым, как выжить в цифровом кошмаре!
Представляем вашему вниманию полный Гид по Kali Linux : тестирование на проникновение, книгу пригодную для использования как новичками так и уже опытными администраторами и экспертами ИБ для целей проведения аудита безопасности ИТ-инфраструктуры. Книга состоит из 8 частей, в которые входят 62 главы с подробным описанием используемых инструментов и методики тестирования.
Книга является систематизированным сборником, включающим переводы англоязычных ресурсов, книг и веб-сайтов посвященных теме penetration testing и собственного опыта авторов.
Kali Linux является передовым Linux дистрибутивом для проведения тестирования на проникновение и аудита безопасности. Информация в данной книге предназначена только для ознакомления или тестирования на проникновение собственных се тей.
" Тестирование на проникновение (жарг. Пентест) — метод оценки безопасности компьютерных систем или сетей средствами моделирования атаки злоумышленника." - WiKi.
Вся ответственность за реализацию действий, описанных в книге, лежит на вас. Помните, что за неправомерные действия предусмотрена ответственность, вплоть до уголовной.
Книга состоит из 8 частей , в которые входят 62 главы . Все подробно рассказывается с использованием примеров. В книге используется самая актуальная информация на сегодняшний день.
- Что Такое Kali Linux?
- Как установить Kali Linux: подробная инструкция для установки на компьютер и в виртуальную машину
- Установка Дополнений гостевой ОС VirtualBox для Kali Linux 2.0
- Как установить Kali Linux на флешку и на внешний диск (простой способ)
- 10 лучших подсказок того, что нужно сделать после установки Kali Linux 2.0
- Инструменты VMware в гостевой системе Kali
- Как включить VPN на Kali Linux — разрешение проблемы с невозможностью добавить VPN
- Проверка и восстановление репозиториев в Kali Linux из командной строки
- Как поменять среду рабочего стола в Kali Linux
- Как добавить/удалить обычного (не рута) пользователя в Kali Linux
- Как сбросить пароль root’а в Kali Linux
- Восстанавливаем GRUB в Kali Linux после обновления до Windows 10
- Повышаем свою анонимность в Интернете с Tor в Kali Linux
- Обзор разделов инструментов Kali Linux. Часть 1. Краткая характеристика всех разделов
- Обзор разделов инструментов Kali Linux. Часть 2. Инструменты для сбора информации
- Лучшие хакерские программы
- База данных эксплойтов от Offensive Security (создателей Kali Linux)
- Лучшие совместимые с Kali Linux USB Wi-Fi адаптеры
- Взлом Wi-Fi пароля (WPA/WPA2), используя pyrit и cowpatty в Kali Linux
- Взлом Wifi WPA/WPA2 паролей с использованием Reaver
- Модификация форка Reaver — t6x — для использования атаки Pixie Dust
- Взлом паролей WPA2/WPA с помощью Hashcat в Kali Linux (атака перебором Wi-Fi паролей по маске)
- Мод Wifite с поддержкой Pixiewps
- Взлом Wi-Fi сетей: инструменты, которые не попали в Kali Linux
- Router Scan by Stas’M на Kali Linux (взлом роутеров и Wi-Fi в промышленных масштабах)
- Чиним Wifi_Jammer и Wifi_DoS в WebSploit
- Стресс-тест беспроводной сети с Wifi_Jammer: как глушить Wi-Fi
- Стресс-тест беспроводной сети с Wifi_DoS: как досить Wi-Fi
- Инструкция по WhatWeb: как узнать движок сайта в Kali Linux
- SQL-инъекции: простое объяснение для начинающих (часть 1)
- Использование SQLMAP на Kali Linux: взлом веб-сайтов и баз данных через SQL-инъекции
- Хакерские плагины для Firefox
- Сканируем на уязвимости WordPress: WPScanner и Plecost
- Новая версия Plecost 1.0.1 — программы для поиска уязвимостей WordPress
- Работа с W3af в Kali Linux
- ZAProxy: тестирование на проникновение веб-приложений
- Как запустить Metasploit Framework в Kali Linux 2.0
- Как запустить Metasploit Framework в Kali Linux 1.1
- Metasploit Exploitation Framework и searchsploit — как искать и как использовать эксплойты
- DIRB: поиск скрытых каталогов и файлов на веб-сайтах
- Поиск админок сайтов с Kali Linux
- Сканирование уязвимостей с OpenVAS 8.0
- Инструкция по Armitage: автоматический поиск и проверка эксплойтов в Kali Linux
- Как сканировать Linux на руткиты (rootkits) с помощью rkhunter
- Аудит безопасности Linux
- Установка Linux Malware Detect (LMD) на Linux
- Как УЗНАТЬ пароль Windows?
- Эмуляция сети из нескольких компьютеров на одном компьютере
- Как использовать сканер безопасности NMAP на Linux
- Книга по Nmap на русском
- Взлом пароля веб-сайта с использованием WireShark (и защита от этого)
- FTP-Map: определяем программное обеспечение и его версию для FTP-серверов и ищем для них эксплойты
- ZMap или Как просканировать все IPv4 адреса мира за 45 минут
- 8. Атаки на пароли. Брутфорсинг
- Списки слов для атаки по словарю: пароли, имена пользователей, каталоги
- PW-Inspector: отбираем пароли соответствующие критериям
- THC-Hydra: очень быстрый взломщик сетевого входа в систему (часть первая)
- Брутфорсинг веб-сайтов с Hydra (часть вторая инструкции по Hydra)
- Crunch — генератор паролей: основы использования и практические примеры
- BruteX: программа для автоматического брутфорса всех служб
Один хакер может причинить столько же вреда, сколько 10 000 солдат! Подпишись на наш Телеграм канал, чтобы узнать первым, как выжить в цифровом кошмаре!
В этом руководстве мы научились использовать хэши для аутентификации в системе на базе Windows и реализовали атаку pass-the-hash.
Пароли в Windows хранятся в виде хэшей и иногда могут быть устойчивы к взлому. Однако в некоторых ситуациях мы можем обойтись без пароля в чистом виде и использовать только хэш. Особенно интересны случаи, когда доступен хэш административной учетной записи, поскольку затем можно получить более высокие привилегии, реализовав атаку под названием pass-the-hash.
Вначале мы будем извлекать хэш в системе Windows 7 и далее перейдем к серверу Windows Server 2016. Пользователь, чей хэш мы будем получать, должен иметь административные привилегии и быть авторизованным на обеих машинах. В качестве рабочей среды будет использоваться Kali Linux.
Краткое описание атаки pass-the-hash
Для понимания техники pass-the-hash вначале следует разобраться, как устроен хэш. В Windows типичный хэш выглядит примерно так:
Строка выше состоит из четырех секций, разделенных двоеточиями. Первая часть – имя пользователя, вторая – относительный числовой идентификатор.
Третья часть представляет собой LM хэш, прекративший использоваться, начиная с Windows Vista/Server 2008. На данный момент вы навряд ли встретите где-либо подобный тип, если только в старых системах. В случае если вы столкнетесь с подобными ситуациями, считайте, что вам повезло, поскольку эти хэши легко взламываются.
Четвертая часть представляет собой NTLM хэш (иногда называемый NTHash). С обновленной версией, используемой в современных системах Windows и более устойчивой ко взломам, мы и будем работать во время реализации атаки pass-the-hash.
Наш сценарий основан на эксплуатации схемы хранения / передачи паролей и механизма аутентификации. Пароли не передаются по сети в открытом виде, а шифруются в момент создания.
Во время аутентификации пароль шифруется сразу же после ввода. Учитывая вышесказанное, можно заключить, что компьютер не видит разницы между паролем и хэшем, и мы можем во время аутентификации воспользоваться хэшем, вместо пароля в чистом виде.
Ситуация становится еще более интересной, когда мы знаем имя пользователя с административными правами и хэш.
Шаг 1: Получение хэша в целевой системе
Вначале нужно скомпрометировать первую цель. При реализации этого сценария мы имеем дело с обычной рабочей станцией на базе Windows 7. Метод можно использовать любой, но мы предполагаем, что система уязвима к эксплоиту EternalBlue.
Эксплуатацию уязвимости будем выполнять при помощи Metasploit. Приступаем:
Запускаем модуль «eternalblue». Для более подробного ознакомления с этим модулем, рекомендуют ознакомиться с руководством по эксплуатации EternalBlue на Windows-сервере.
В Meterpreter есть полезная команда hashdump, позволяющая выгрузить любые LM или NTLM хэши в целевой системе:
По результатам выгрузки отмечаем, что у пользователя «admin2» скорее всего административные привилегии. Этот хэш мы будем использовать для подключения к другой машине.
Предположим, что другой компьютер также находится в сети, например, в роли сервера и, возможно, в качестве контроллера домена на базе Windows Server 2016. Если мы получим доступ к этой машине, то сможем получить контроль над всей сетью и любым компьютером домена.
Шаг 2: Реализация атаки Pass-the-Hash при помощи модуля PsExec
Полученный хэш привилегированного пользователя можно использовать для аутентификации на сервере Windows Server 2016 без знания пароля. Будем использовать модуль psexec (там же в Metasploit).
PsExec представляет собой утилиту, позволяющую работать из командной строки, для запуска программ и команд в удаленных системах. Этот инструмент полезен для администраторов, поскольку интегрирован с консольными приложениями и утилитами с целью удобного перенаправления входных и выходных данных. Однако здесь мы опять сталкиваемся с компромиссом между удобством и безопасность, поскольку PsExec может использоваться злоумышленниками для выполнения вредоносных команд или выступать в качестве бэкдора.
В Metasploit есть модифицированная версия PsExec, позволяющая легко подключаться к удаленным целям. Для поиска местонахождения этого модуля воспользуемся командой search:
Psexec зарекомендовал себя неоднократно. Загружаем этот модуль при помощи команды use.
Смотрим текущие настройки, используя команду options:
Вначале нужно установить IP-адрес цели (то есть сервера, к которому мы хотим подключиться):
Затем мы можем указать имя пользователя и пароль, используя полученный ранее хэш вместо обычного пароля.
Теперь указываем полезную нагрузку. Будем использоваться классический Reverse TCP из Meterpreter: Также указываем IP-адрес локальной машины и желаемый порт:
Остальные опции оставляем по умолчанию. Запускаем команду run:
У нас появилась meterpreter-сессия. Для подтверждения вводим команды getuid / sysinfo и получаем информацию о целевой системе.
Прекрасно. Без знания пароля нам удалось получить доступ к серверу. По сути, у нас полный контроль над системой.
Методы защиты
В целом, довольно сложно защититься от подобного рода атак, поскольку мы используем стандартные механизмы аутентификации. Единственный надежный вариант – реализовать комплекс мероприятий для заблаговременного предотвращения неприятных последствий.
Также следование принципу минимальных привилегий сократит или даже исключит вероятный ущерб в случае, если злоумышленник получит хоть какой-то доступ к сети. Кроме того, нужно предпринимать и другие стандартные меры, как, например, фаервол и системы IDS/IPS для мониторинга и предотвращения любой вредоносной активности.
В Windows можно отключить кэширование учетных записей, чтобы злоумышленник не смог добраться до хэшей в памяти. Не лишним будет и изолировать важные системы в сети.
В этом руководстве мы научились использовать хэши для аутентификации в системе на базе Windows и реализовали атаку pass-the-hash. После компрометирования первоначальной цели, не очень высокого уровня, был получен список хэшей, среди которых оказалась учетная запись с административными правами. Далее при помощи Metasploit был получен системный доступ к серверу.
Один хакер может причинить столько же вреда, сколько 10 000 солдат! Подпишись на наш Телеграм канал, чтобы узнать первым, как выжить в цифровом кошмаре!
Бесплатное онлайн определение типа хеша
Сервис Онлайн определение типа хеша существует уже давно. Он работает очень просто — вы вводите хеш и получаете тип хеша. Ранее он основывался на утилитах hashID и HashTag. Теперь сервис обновлён и работает с утилитами HAITI и Name That Hash — самыми актуальными инструментами для определения типа хеша.
Справка по HashTag
Руководство по HashTag
Этичный хакинг и тестирование на проникновение, информационная безопасность
В статье «Хеши: определение типа, подсчёт контрольных сумм, нестандартные и итерированные хеши» мы уже знакомились с такими утилитами как hashID и HashTag, которые по строке хеша определяют, по какому алгоритму он был вычислен.
Упомянутые инструменты по-прежнему работают, но мир не стоит на месте (а развитие этих программ — стоит). Сейчас появились новые типы хешей, поддержка которых не реализована или имеет ошибки в данных инструментах.
Прямо сейчас, на момент написания, активно развиваются две новые программы для идентификации типов хешей. Они поддерживают больше алгоритмов хеширования и просто во всём лучше старых инструментов. Данная статья посвящена знакомству с новыми инструментами по идентификации типа хеша.
HAITI
HAITI (HAsh IdenTifIer) — это инструмент командной строки (и библиотека) для идентификации типа заданного хеша. Библиотека особенно хороша для написания скриптов, поскольку не нужно заключать инструмент командной строки в подпроцесс.
- Определение типов 382+ хешей
- Поддержка современных алгоритмов (SHA3, Keccak, Blake2 и прочее)
- Краткая информация по использованию хеша с Hashcat и John the Ripper
- Инструмент командной строки и библиотека
- Цветной вывод
Использование программы очень простое — укажите ваш хеш после имени программы:
Причём ОПЦИИ являются необязательными, поведение программы по умолчанию очень сбалансированной и в большинстве случаев вам не захочется менять его какими-либо дополнительными параметрами.
Среди вывода есть и правильный ответ: SHA3-512
В выводе HC — это сокращение для Hashcat, а последующие цифры (например, 1700, 17600 и так далее) это номера режимов в данной программе.
JtR — это сокращение от John the Ripper, а последующие строки — это название алгоритмов хешей для взлома в данной программе (raw-sha512, raw-sha3 и так далее).
Цвет очень хорошо улучшает читаемость вывода, особенно если он обширный. Если вы хотите отключить цветной вывод, то используйте опцию --no-color:
Хотя зачастую вывод содержит более одного предположения о типе хеша, по умолчанию из него исключены алгоритмы с солью. Чтобы показать все возможные алгоритмы хеширования, в том числе с использованием соли используйте опцию -e или --extended:
Если вы хотите только узнать тип хеша и информация о режимах hashcat и john the ripper для вас является излишней, то вы можете указать опцию --short для укороченного вывода:
Список инструментов для тестирования на проникновение и их описание
Связанные статьи:
факультете информационной безопасности от GeekBrains? Комплексная годовая программа практического обучения с охватом всех основных тем, а также с дополнительными курсами в подарок. По итогам обучения выдаётся свидетельство установленного образца и сертификат. По этой ссылке специальная скидка на любые факультеты и курсы!
Примеры запуска HashTag
Определить тип хеша 127e6fbfe24a750e72930c220a8e138275656b8e5d8f48a98c3c92df2caba935:
Хеши необходимо заключать в одинарные кавычки!
Хеши могу включать в себя специальные символы, которые имеют для оболочки специальное значение. Особенно это важно если вы работаете в Linux. Если вы не будете это учитывать, то программа по определению типа хеша хоть и не сообщит об ошибке, но получит строку отличную от той, которую вы думали что ввели.
Причём даже в двойных кавычках оболочка трактует некоторые символы как специальные. Поэтому чтобы не экранировать их, поместите весь хеш в одинарные кавычки.
Необязательно помещать в кавычки хеши, состоящие только из букв и цифр, но я предпочитаю все хеши передавать в одинарных кавычках.
Скриншоты HashTag
Name-That-Hash
С января 2021 года, почти через два года после того, как началась работа над HAITI, появился проект под названием Name-That-Hash, потому что автору требовалась библиотека Python для Ciphey. Теперь есть два актуальных варианта для идентификации хеша.
Name That Hash определяет тип хеша. Программа поддерживает MD5, SHA256 и более 300 других хешей.
Особенности Name That Hash:
- Рейтинги популярности — Сначала вы увидите самые популярные хеши.
- Сводки хешей — Name-that-hash выведет краткую информацию об основах использования каждого хеша, позволяя вам сделать осознанный выбор.
- Цветной вывод — контрастный и наглядный.
- Вывод в JSON и в API — вы можете использовать Name-That-Hash в своём проекте, поскольку программа имеет API и интерфейс командной строки. Используйте вывод JSON или импортируйте программу как модуль Python!
- Актуальна — Name-That-Hash — это проект 2021 года.
- Продуманность — авторы продумали функции, интерфейс и опции с мыслью об удобстве использования.
- Расширяемость — добавляйте новые хеши так быстро, как только сможете редактировать текстовый файл.
- Работа с файлами — программа считывает построчно файл и проверяет тип каждого хеша.
- Поиск хешей — экстремальный режим, который пытается выделить хеш даже если строка содержит мусор.
Для определения типа хеша укажите его с опцией -t (--text):
Хеши разбиты на две группы:
- Most Likely — более вероятные варианты
- Least Likely — менее вероятные варианты
Причём в этих группах они также отсортированы по частоте использования.
В выводе вы можете увидеть уже знакомые строки HC и JtR с номерами и названиями алгоритмов хеширования в Hashcat и John.
Кроме этого, имеется краткое описание применения, например:
- Summary: Used in Bitcoin Blockchain and Shadow Files.
- Summary: Used in Wireguard, Zcash, IPFS and more.
- Summary: Not considered a hash function
Причём обратите внимание, некоторые записи являются гиперсылками (они подчёркнуты точками) и для получения дополнительной информации можно пройти на веб-страницу. Всё это делается для того, чтобы вы могли сориентироваться в предлагаемых типах хешей и выбрать наиболее подходящий.
Для проверки множества хешей используйте опцию -f (--file):
Формат файла — один хеш на строку.
Одна из этих опций (-t или -f) являются обязательной.
Если ваши хеши кодированы в Base64, то используйте опцию -b64 (--base64). Она говорит программе перед идентификацией декодировать хеши из Base64. Для файлов со смешанными строками Base64 и в обычном тексте программа пытается вначале декодировать base64 и если это не получается, то трактует хеш как обычную строку без кодировки.
Обратите внимание, что в качестве хеша (после шапки) показана уже декодированная строка.
По идее, следующие две команды должны дать одинаковый результат:
Но у меня они получились разные. Поэтому используйте этот режим скорее как экспериментальный.
Установка HashTag
Установка в Kali Linux
Установка в BlackArch
Программа предустановлена в BlackArch.
Информация об установке в другие операционные системы будет добавлена позже.
Образцы хешей
Если вам нужны образцы хешей для поверки инструментов, то смотрите раздел «Где посмотреть примеры хешей».
Я отобрал несколько хешей для анализа:
Описание HashTag
HashTag.py — это инструмент на python, который разбирает и идентифицирует различные хеши паролей на основе их типа. HashTag поддерживает определение более 250 типов хешей и сопоставляет их с более чем 110 режимами hashcat. HashTag способен идентифицировать единичный хеш, разобрать единичный файл и определить хеши внутри него или обойти директорию и все поддиректории в поисках потенциальных файлов хешей и идентифицировать все найденные хеши.
Идентификация хешей
Определение типов хешей паролей осуществляется на основе набора символов (шестнадцатеричные, алфавитные и т. д.), длиной хеша, форматом хеша (например, 32-символьный хеш, за которым следует двоеточие и соль), любых специальных подстрок (например, ‘$1$’). Множество строк хешей паролей не могут быть идентифицированные однозначно по этим атрибутам. Например, хеши MD5 и NTLM оба 32-символьные, состоят из шестнадцатеричных строк. В этом случае выводиться исчерпывающий список возможных типов/
Зачем нужны новые инструменты идентификации типа хеша?
hashID не поддерживается с марта 2015 года, hash-identifier не поддерживается с 2011 года, Dagon с июня 2018 года и findmyhash с 2011 года. Все они не имеют вовсе, или имеют неправильную, ошибочную поддержку современных хешей, таких как Keccak/SHA3/Blake2 и т. д. Также такой инструмент, как hash-identifier, который является полностью интерактивным, не имеет параметров и не удобен для использования в скриптах. findmyhash имеет очень ограниченный набор обнаруживаемых хешей. Самый интересный инструмент — hashID (для идентификации хеша), но, поскольку он не поддерживается более 5 лет, проблемы и открытые PR (Pull Request — запросы на внесение изменения в исходный код) накапливаются, ошибки не исправляются, а некоторые функции отсутствуют.
Это всё могло побудить авторов создать новые инструменты с возможностями отсутствующими в предшественниках.
Посмотрим на сравнительную таблицу инструментов по определению типа хеша:
Заключение
Как можно убедиться, трудно выбрать, какая из программ лучше — HAITI или Name That Hash. Можно пользоваться или двумя. Либо если вам нужен вывод в формате JSON или вам нужна поддержка API или библиотека для определения хешей, то вы можете выбрать наиболее подходящую для ваших потребностей.
Читайте также: