О SearchSploit — инструменте для поиска эксплойтов

В статье расскажем об инструменте, его особенностях и возможностях в работе.

Что такое SearchSploit?

Инструмент поиска в командной строке, включающий в себя репозиторий баз данных эксплойтов. С его помощью база данных эксплойтов всегда под рукой.

C SearchSploit можно выполнять детальный поиск в автономном режиме по локальной копии репозитория. Это особенно полезно при аудите информационной безопасности в изолированных сетях без доступа в Интернет.

База данных Exploit Database — архив общедоступных эксплойтов и соответствующего уязвимого программного обеспечения, предназначенный для пентестеров.

Многие эксплойты содержат ссылки на бинарные файлы, которые не включены в стандартный репозиторий, но могут быть найдены в репозитории бинарных эксплойтов базы данных Exploit Database. Если предполагается, что во время оценки у вас не будет доступа к Интернету, проверьте оба репозитория, чтобы получить наиболее полный набор данных.


Как установить SearchSploit в Linux.

Если вы используете стандартную GNOME-сборку Kali Linux, то пакет exploitdb включен в нее по умолчанию. Однако если вы используете вариант Kali Light или собственный ISO, то установить пакет можно с этой командой:

sudo apt update && sudo apt -y install exploitdb

Можно установить и другие связанные пакеты: exploitdb-papers и exploitdb-bin-sploits.

Если вы не используете Kali Linux, пакет exploitdb может быть недоступен в менеджере пакетов. В этом случае можно установить SearchSploits, следуя инструкциям на вкладке 'Git'.


Обновление SearchSploit

Если используете Kali Linux, то пакет exploitdb обновляется еженедельно, а если вы используете Homebrew или Git, то ежедневно (05:05 UTC).

Независимо от того, как вы установили SearchSploit, вот как можно его обновить:

searchsploit -u

Если вы используете пакеты Kali Linux и не обновляли их с 20 сентября 2016 года (возможно ли такое?), то сначала необходимо обновить пакеты традиционным способом:

sudo apt update && sudo apt -y full-upgrade

Не рекомендуется использовать для обновления пакет GitHub .zip или устаревший пакет archive.tar.bz2.


Как пользоваться SearchSploit

Команда -h позволяет увидеть все доступные функции и опции:

 searchsploit -h

Обычный поиск

Просто задайте необходимое количество слов или фраз для поиска:

Обратите внимание, что в SearchSploit используются операторы AND, а не OR. Чем больше терминов используется, тем больше результатов будет отобрано.

Поиск по названию

По умолчанию searsploit проверяет на наличие эксплойтов как имя, так и путь к файлу. В зависимости от критериев поиска это может привести к ложным срабатываниям (особенно при поиске терминов, соответствующих платформам или номерам версий). В таких случаях следует использовать параметр -t для поиска только по имени и оптимизировать поиск:

Если бы опция -t не использовалась, то результат был бы не 9, а 94 (6 строк в заголовке/строке).

Исключение нежелательных результатов

Опция -exclude может быть использована для исключения нежелательных результатов. Также можно исключить сразу несколько терминов, разделив их значения символом | :

Так мы сокращаем результаты до 30 с возможных 41 (6 строк приходится на заголовок/ колонтитул).

Возможно, вы также заметили, что “3.2” не всегда отображается в результатах. Это потому, что SearchSploit по умолчанию пытается определить версию, а затем ищет между любыми значения в заголовках. Это поведение можно отключить, используя флаг -s.

Передача результатов (альтернативный метод удаления нежелательных результатов)

Результаты работы searchsploit могут быть направлены в другие программы, что особенно удобно при выводе результатов в формате JSON (с помощью опции -j). grep может быть использован для удаления всех нежелательных эксплойтов. В приведенном ниже примере grep используется для фильтрации всех результатов 'Denial of Service (DoS)'.

Передав результаты поиска в grep, можно сузить их с 17 до 5 строк (6 строк находятся в заголовке/сноске)!

Цветной вывод

По умолчанию searchsploit выделяет поисковые термины при отображении результатов поиска пользователю. Для этого в выдачу вставляется невидимый текст до и после изменения цвета.

В этом случае, если передать результаты (например, в grep) и попытаться выделить фразу из выделенного и не выделенного текста в результатах, то это не удастся. Эту проблему можно решить с помощью опции -colour (опция -colour также является допустимой).

Копирование в буфер обмена

Теперь, когда вы нашли искомый эксплойт, существуют различные способы быстрого доступа к нему.

С помощью -p можно получить подробную информацию об эксплойте и скопировать его полный путь в буфер обмена:

Скопировать в папку

Рекомендуется не модифицировать эксплойты в локальной копии базы данных. Вместо этого сделайте копию интересующего вас эксплойта и используйте его из своего рабочего каталога. Опция m позволяет выбрать любое количество эксплойтов для копирования в ту же папку, в которой вы находитесь в данный момент:


Exploit-DB Online

Репозиторий Exploit Database — это основное ядро Exploit-DB, которое делает SearchSploit эффективным и удобным в использовании. Однако он не содержит метаданных (например, скриншотов, установочных файлов, тегов, отображений уязвимостей) для некоторых эксплойтов. Чтобы получить доступ к ним, необходимо посетить сайт.

Опция -w может быть использована для быстрой генерации ссылок на интересующие эксплойты:

Примечание: Информация для исследования, обучения или проведения аудита. Применение в корыстных целях карается законодательством РФ.

Last updated