MD5, SHA-1 и SHA-256 любого файла с готовыми ссылками для поиска в VirusTotal и MalwareBazaar.
Хеш фавикона (mmh3)
Сам инструмент доступен на английском языке; на этой странице приведено его описание на вашем языке.
Используйте Хеш фавикона (mmh3)
Для чего это нужно
Перетащите фавикон или вставьте его Base64, чтобы получить хеш mmh3 в стиле Shodan, MD5 и SHA-256, а также готовые поисковые запросы для Shodan, FOFA, ZoomEye и Censys. Иконка не покидает ваш браузер.
Приложение работает полностью в браузере: никакие введенные вами данные не передаются на сервер.
Как использовать Хеш фавикона (mmh3)
- Получите точную иконку. Сохраните фавикон сайта в том виде, в каком его отдаёт сервер, например /favicon.ico, в изолированной среде. Не пересохраняйте и не конвертируйте его.
- Перетащите файл или вставьте Base64. Перетащите или выберите файл (до 10 МБ) либо вставьте его Base64 или data: URI и нажмите Compute hash (вычислить хеш).
- Прочитайте хеши. Значение mmh3 — для Shodan и FOFA, MD5 — для ZoomEye и Censys. SHA-256 идентифицирует сам файл.
- Ищите. Скопируйте готовый запрос или нажмите Search, чтобы открыть поисковик только с хешем. Для ZoomEye откройте сайт и вставьте запрос.
- Проверьте каждое совпадение. Изучите каждый найденный сервер, прежде чем связывать его с фишинговым сайтом: стандартные иконки встречаются у многих не связанных между собой сайтов.
Пример
Иконка PNG 16 × 16 в Base64
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAM0lEQVR42mPgFhT/TwlmABF2z7aShWljwMevX/Biog1At20IGkD1MCA5FkayAQOTFyjBAJ3am11k6YHEAAAAAElFTkSuQmCCPasted Base64
108 B (108 bytes) · PNG
SHODAN / FOFA HASH (MMH3, SIGNED 32-BIT)
2033577382
MD5 OF THE FILE
687bba8c4cd9980ec195986b32ee42cb
SHA-256 OF THE FILE
989e1ac28e0a5bf7ffcf0eed14a30126aabb5761daa360596619280b485e8ad7
Search queries
Shodan
Search ↗
http.favicon.hash:2033577382
FOFA
Search ↗
icon_hash="2033577382"
ZoomEye
Open ZoomEye ↗
iconhash:"687bba8c4cd9980ec195986b32ee42cb"
Censys Search (legacy)
Search ↗
services.http.response.favicons.md5_hash: 687bba8c4cd9980ec195986b32ee42cb
Censys Platform
Search ↗
host.services.endpoints.http.favicons.hash_md5 = "687bba8c4cd9980ec195986b32ee42cb"
The Search links open the engine in a new tab and send only the hash in the address; most engines need a free account to show results. ZoomEye’s link opens its site: paste the copied query there. The ZoomEye and Censys queries use the MD5 of the file, Shodan and FOFA the mmh3 value.
A favicon hash only finds servers that return byte-identical icon bytes. A resized, re-saved or re-compressed icon, or the same picture as PNG instead of ICO, gives a different hash. Hash the file exactly as the server sends it (for example saved with curl -o favicon.ico in an isolated environment), not a copy exported by an image editor or a screenshot.Декодируется в PNG размером 108 байт. Хеш mmh3 — 2033577382, поэтому запрос для Shodan — http.favicon.hash:2033577382; MD5 687bba8c4cd9980ec195986b32ee42cb подставляется в запросы для ZoomEye и Censys.
Что проверяется
| Сигнал | Что это означает |
|---|---|
| Строка формата | Определённый формат (PNG, ICO, GIF, JPEG, BMP, WebP, SVG или unknown format) и размер в байтах. |
| Предпросмотр | Изображения показываются в виде превью размером 32 пикселя, чтобы вы могли убедиться, что хешируете нужную иконку. |
| Предупреждение о HTML-странице | Байты — это веб-страница, а не иконка. Серверы часто отвечают на запрос отсутствующего /favicon.ico страницей ошибки, и её хеш находит только такую же страницу. |
| Хеш для Shodan / FOFA | MurmurHash3 от иконки в кодировке Base64, показанный как знаковое 32-битное число. Отрицательные значения — это нормально. |
| MD5 файла | Используется в запросах для ZoomEye и Censys. |
| SHA-256 файла | Идентифицирует конкретный файл; пригодится в жалобах и для сопоставления собранных вами копий. |
| Поисковые запросы | Shodan http.favicon.hash, FOFA icon_hash, ZoomEye iconhash и две формы для Censys. Большинству поисковиков для показа результатов нужна бесплатная учётная запись. |
| Правило побайтовой идентичности | Иконка с изменённым размером, пересжатая или сконвертированная даёт другой хеш, поэтому отсутствие результатов может означать лишь то, что байты отличаются. |
Еще примеры
Маленькая SVG-иконка в виде data: URI
data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSIjMGEwIi8+PC9zdmc+Pasted Base64, 108 B, SVG. Хеш mmh3 — -1417999905, поэтому запрос для Shodan — http.favicon.hash:-1417999905, а для FOFA — icon_hash="-1417999905"; MD5 10a8f1de4d94f66724532d5315194e33 подставляется в запросы для ZoomEye и Censys.
Страница ошибки вместо иконки
PGh0bWw+PGJvZHk+PGgxPjQwNCBOb3QgRm91bmQ8L2gxPjwvYm9keT48L2h0bWw+48 B, HTML page, с предупреждением, что эти байты — HTML-страница, а не иконка. Её значение mmh3, -1700126198, совпадает только у серверов, которые отдают ту же страницу.
Имя файла вместо Base64
favicon.icoCould not decode the pasted text: this is not valid Base64 (не удалось декодировать вставленный текст: это некорректный Base64). Вставьте Base64 файла иконки, с префиксом data: или без него.
Часто задаваемые вопросы
Как вычисляется хеш фавикона для Shodan?
Shodan берёт сырые байты фавикона, кодирует их в Base64 так, как это делает base64.encodebytes в Python (строки по 76 символов, каждая заканчивается переводом строки), и хеширует этот текст 32-битным MurmurHash3 с seed 0, показывая результат как знаковое целое число. icon_hash в FOFA использует то же значение, а запросы для ZoomEye и Censys здесь используют MD5 файла.
Почему поиск по хешу ничего не находит или находит не те серверы?
Хеш совпадает только у серверов, которые отдают побайтово идентичный фавикон, поэтому копия с изменённым размером, пересохранённая или перекодированная даёт другое значение, а сайт, у которого /favicon.ico возвращает страницу ошибки, даёт хеш этой страницы. Стандартные иконки хостинговых панелей и фреймворков используются тысячами не связанных между собой сайтов, поэтому считайте совпадения зацепками для проверки, а не доказательством общего владельца.
Загружает ли инструмент фавикон или отправляет его куда-нибудь?
Нет. Он хеширует предоставленный вами файл или Base64 в вашем браузере и не делает сетевых запросов. Поисковые ссылки открывают Shodan, FOFA, ZoomEye или Censys в новой вкладке только по вашему клику и содержат только хеш.
Почему хеш — отрицательное число?
Shodan выводит MurmurHash3 как знаковое 32-битное целое, поэтому примерно у половины всех иконок значение отрицательное. Сохраняйте знак минус: без него поиск будет искать другую иконку.
Как исследователи используют хеш фавикона?
Фишинг-киты часто используют один и тот же файл иконки во всех копиях поддельного сайта. Поиск по его хешу в Shodan или FOFA может выявить другие серверы с тем же китом, которые затем проверяют по одному.
Можно ли вставить иконку из HTML-кода страницы?
Да, если страница встраивает её как data: URI: вставьте значение целиком, и префикс будет удалён перед декодированием. Иконку, подключённую по URL, сначала нужно сохранить как файл, потому что этот инструмент ничего не загружает из сети.
Почему один и тот же сайт в другой день даёт другой хеш?
Сайты меняют иконки, а некоторые серверы отдают разным посетителям разные байты, например безобидную страницу сканерам. У каждой версии свой хеш, поэтому записывайте дату и то, как вы получили иконку.