
инструмент разведки, который позволяет искать URL-адреса, раскрываемые через сервисы сокращения ссылок
o Utku Sen's
_/\o
( Oo) |/
(=-) .===O- U -O-
/ _/U' hunter /|RL
|| |/
\ | utkusen.com
|K || twitter.com/utkusen_en
urlhunter — это инструмент разведки, который позволяет искать URL-адреса, раскрытые через сервисы сокращения ссылок, такие как bit.ly и goo.gl. Проект написан на Go.
Группа под названием URLTeam (спасибо им) подбирает URL-сокращатели методом перебора и ежедневно публикует результаты. urlhunter загружает их коллекции и позволяет вам анализировать их.
Вы можете загрузить готовые бинарные файлы со страницы релизов и запустить. Например:
tar xzvf urlhunter_0.1.0_Linux_amd64.tar.gz
./urlhunter --help
Установите Go в вашу систему.
Выполните: go install github.com/utkusen/urlhunter@latest
Примечание для пользователей Windows: urlhunter использует XZ Utils, которые предустановлены в системах Linux и macOS. Для Windows вам необходимо загрузить их с https://tukaani.org/xz/
urlhunter требует 3 параметра для запуска: -keywords, -date.
Например: urlhunter --keywords keywords.txt --date 2020-11-20
Вам нужно указать txt-файл, содержащий ключевые слова для поиска по URL-адресам. Ключевые слова должны быть записаны построчно. У вас есть три способа указать ключевые слова:
Одно ключевое слово: urlhunter будет искать указанное ключевое слово как подстроку. Например:
acme.com будет соответствовать как https://acme.com/blabla, так и https://another.com/?referrer=acme.com
Несколько ключевых слов: urlhunter будет искать указанные ключевые слова с логикой AND. Это означает, что URL должен содержать все указанные ключевые слова. Ключевые слова должны быть разделены символом ,. Например:
acme.com,admin будет соответствовать https://acme.com/secret/adminpanel, но не будет соответствовать https://acme.com/somethingelse
Значения регулярных выражений: urlhunter будет искать указанное регулярное выражение. В файле ключевых слов строка, содержащая формулу регулярного выражения, должна начинаться со строки regex . Формат: regex REGEXFORMULA. Например:
regex 1\d{10} будет соответствовать https://example.com/index.php?id=12938454312, но не будет соответствовать https://example.com/index.php?id=abc223
urlhunter загружает архивные файлы за указанную дату(ы). У вас есть три способа указать дату:
Последняя: urlhunter загрузит последний архив. -date latest
Одна дата: urlhunter загрузит архив за указанную дату. Формат даты: ГГГГ-ММ-ДД. Например: -date 2020-11-20
Год: urlhunter загрузит архив за указанный год. Формат года: ГГГГ. Например: -date 2024
Диапазон дат: urlhunter загрузит все архивы между указанными начальной и конечной датами. Например: -date 2020-11-10:2020-11-20
Вы можете указать выходной файл с помощью параметра -o. Например: -o out.txt
Вы можете указать параметр -rm, чтобы удалить загруженные папки архивов после обработки. Это полезно для экономии места на диске.
Archive.org ограничивает скорость при загрузке файлов. Поэтому загрузка архива занимает больше времени, чем обычно. В качестве обходного пути вы можете загрузить архивы через торрент и поместить их в папку archive/, которая находится в том же каталоге, что и бинарный файл urlhunter. Дерево каталогов будет выглядеть так:
|-urlhunter
|---urlhunter(binary)
|---archive
|-----urlteam_2020-11-20-11-17-04
|-----urlteam_2020-11-17-11-17-04
urlhunter может быть полезен для киберразведки и программ bug bounty. Например:
Ключевые слова docs.google.com/a/acme.com и drive.google.com/a/acme.com позволяют находить публичные ссылки на общие документы Google Docs&Drive компании Acme.
Ключевое слово acme.com,password_reset_token может позволить вам найти действующие токены сброса пароля сайта acme.com.
trello.com позволяет находить публичные адреса Trello.
Особая благодарность Самету Бекмезджи (@sametbekmezci), который подал мне идею этого инструмента.