Searchsploit kali linux как пользоваться

Обновлено: 02.07.2024

Когда я думал над дальнейшим вектором развития Vulners, я обратил внимание на наших старших братьев — базу данных Exploit-DB. Одной из основных утилит в их арсенале является searchsploit. Это консольная утилита, которая позволяет искать эксплойты по пользовательским поисковым запросам и сразу же получать их исходные коды. Она является базовой частью Kali Linux и оперирует данными по эксплойтам из базы Exploit-DB. Что самое "вкусное", что утилита умеет работать с локальной базой и ты можешь всегда взять ее с собой. Так чем же мы хуже? Мы собрали в Vulners не только коллекцию эксплойтов из Exploit-DB, но и Packet Storm, 0day.today, Seebug, Zero Science Lab и многих других. Что же, давайте изобретем новый велосипед с преферансом и поэтессами.

Смотрим внимательнее на searchsploit

И видим внутри bash скрипт длиною 711 строчек. Он скачивает с публичного репозитария exploit-database копию данных и ищет уже по ней. Но где же Google-style синтаксис и прочие прелести современного поиска? Увы, в их подходе нашлись и плюсы и минусы. Плюсы оказались в том, что они способны находить эксплойты по критериям применимости. Минусы — довольно бедный функционал для неточного поиска. На этом идея интегрироваться с ним была отброшена и решение писать свой форк стала доминирующей.

Что должен делать getsploit?

Начнем с того, что определимся с функциональностью.

  • Поиск эксплойтов по всей коллекции Vulners с применением Full Text Search и Lucene
  • Сохранение исходных кодов эксплойтов на диск
  • Offline-поиск с локальной базой данных
  • Кроссплатформенность и минимум зависимостей
  • Быть Open source

Let there be code

В итоге утилита была реализована на Python с совместимостью от Python 2.6 до Python 3.6. Основные ключи я постарался сохранить идентичными searchsploit для того, что бы не приходилось привыкать заново.

Основная механика поиска строится на базе Vulners API. Таким образом вы всегда получите актуальные данные на момент "здесь и сейчас". Что же, поищем эксплойты под Wordpress?


Довольно неплохо, да? Попробуем теперь ограничить нас только коллекцией Packet Storm. Синтаксис выражений полностью совпадает с поисковой строкой сайта и его можно подглядеть на страничке help.


Так, нужные нам эксплойты найдены. Теперь их нужно сохранить для последующего использования. Для этого нужно использовать ключик "-m". После этого утилита создаст папку с вашим поиском и загрузит эксплойты туда.


Но что же делать, если у нас нет онлайн подключения к интернету? Вспомнить об этом пока он еще доступен и сделать "--update"!

При таком запросе getsploit скачает SQLite базу данных со всей коллекцией эксплойтов. Это порядка 594 мегабайт данных на момент написания статьи.

Обратите внимание, что если у вас Python скомпилирован без поддержки sqlite3 (что в принципе редкость), то локальная база, увы, работать не будет.

Здесь пришлось пожертвовать совместимостью ради скорости работы и возможности полнотекстового поиска с FTS4 модулем SQLite.

Но все не так плохо, основная масса сборок Python по умолчанию идет с модулем sqlite3. Попробуем найти эксплойты локально?


Отлично! Теперь можно взять с собой всю коллекцию эксплойтов с Vulners и использовать ее в оффлайне без регистрации и смс.

Ну и конечно же, исходные коды лежат на нашем GitHub.
Pull-request'ы крайне приветствуются.

Представляем вашему вниманию полный Гид по 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)

3. Тестирование на проникновение беспроводных сетей

  • Лучшие совместимые с 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

6. Анализ уязвимостей в операционных системах и серверном программном обеспечении

  • Сканирование уязвимостей с 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: программа для автоматического брутфорса всех служб

Используя продукты Контура, специалисты делают внутренний контроль бизнеса систематизированным, снижают объем ручной работы и эффективно предупреждают нарушения.

Я надеюсь, Вам понравилось взламывать. Давайте рассмотрим другие инструменты Kali Linux. Мы уже рассмотрели некоторый перечень инструментов, такие как «nmap», «netdiscover», «nessus» и т.д.

Также я упоминал «wpscan», «drupalscan». Мы рассмотрели анализ баз данных, и подобрали имя пользователя и пароль к ней. В рамках данного курса мы не будем рассматривать раздел беспроводных атак, а также реверс-инжиниринг. Это темы для отдельных курсов. Продолжим рассматривать инструменты Kali, и перейдем в раздел сниффинг и спуфинг. В частности нас будет интересовать инструмент для сниффинга, который называется «wireshark»:

wireshark

Этот инструмент работает на нашем компьютере, анализируя сетевой трафик и перехватывая все пакеты. Также можно указать, какие пакеты перехватывать. В этом уроке мы рассмотрим wireshark более детально, и я покажу Вам, как искать имена пользователей и пароли, которые передаются в Вашей сети.

Для начала выбираем меню «Capture», далее «Options»:

capture - options wireshark

Здесь нужно выбрать сетевой интерфейс, с которого Вы будете перехватывать трафик. Давайте я объясню подробнее. У большинства современных компьютеров или ноутбуков есть несколько сетевых интерфейсов. Как правило, это проводной и беспроводной интерфейс.

Например, если Вы используете стационарный компьютер в университете, то на не используется проводной интерфейс, т.е. к нему подключен сетевой кабель, который обеспечивает доступ к сети.

Если Вы работаете с ноутбука дома, то скорее всего у Вас беспроводной интерфейс.

Обратите внимание, что я использую Kali в качестве виртуальной машины. Виртуальная машина думает, что это проводное соединение, а не беспроводное, т.е. eth0. Мы проговаривали это в лекции по настройке сети. Имейте ввиду, что если бы использовалось беспроводное соединение, то сетевой интерфейс отображался как адаптер «wlan0», но так как у меня проводное соединение, то указан интерфейс «eth0».

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

Нажимаем кнопку «start», чтобы начать мониторить или сниффить сеть:

мониторинг сети

Итак, я вернулся на сервер TomCat, и авторизировался на нем. Таким образом, появляется сценарий, при котором пользователь admin, т.е. я, авторизируется в панеле управления, а хакер сидит в wireshark, и надеется получить учетные данные TomCat. После авторизации у нас будут появляться пакеты, и так как я использую закрытую сеть, то используется немного пакетов. Однако, если использовать другие инструменты, открытую сеть, то в Wireshark будет использовано больше пакетов.

В этом потоке очень сложно найти нужную информацию, поэтому используются фильтры. По сути фильтр отображает то, что нам нужно, и он игнорирует все остальные пакеты, и отображает только нужные. Для редактирования используем кнопку «Expression»:

tomcat authorisation
expression

протокол http wireshark

http contains wireshark

WireShark не понимает то, что мне нужно. Если остановить курсор мыши на слове «contains», мы получим вывод более полного перечня информации.

основное окно wireshark

Мы можем поиграться с фильтром, выводя различные пакеты:

http contains admin wireshark

И если кликать по выведенным пакетам, то отображается их содержимое.

Например, я ищу TomCat:

http contains tomcat wireshark

В этом видео нас интересуют учетные данные (имя пользователя и пароль), который админ использовал при авторизации в панели управления. Они нам нужны для того, чтобы взломать систему.

Пользователь, исходя из этих данных успешно авторизировался. Просматривая содержимое этого пакета мы можем увидеть информацию «Authorization: Basic»:

Authorization: Basic

Итак, почему нам нужна именно эта строка? На самом деле – это есть имя пользователя и пароль, который использовал admin. Данная строка не зашифрована, а обфусцированна, и в данном случае она закодирована с помощью base64. Это тип кодирования, который можно определить по символу равно «=» в конце. На самом деле base64 – это один из самых простых методов кодировки, и его очень легко раскодировать.

Копируем данную запись, нажав правую клавишу мыши и далее «Copy» «Value».

В интернете ищем декодер base64:

decoder base64

Как видим, внизу страницы находятся имя пользователя и пароль, которые были закодированы.

Мы выбрали WireShark, потому что он самый популярный, и настроили его для перехвата трафика из сети, а затем использовали фильтры просмотра, чтобы получить закодированные учетные данные и раскодировали их.

Нам совершенно не важно какой длины будет пароль, так как мы можем перехватить любую его длину.

После того, как мы перехватили логин и пароль, нам нужно авторизироваться в панели управления, чтобы проверить наличие доступа, а затем вернуться в Metasploit, настроить эксплойт, и получить доступ к системе.

Инструменты которые я использую в соревнованиях CTF

В этой статье я собрал список моих наиболее часто используемых инструментов при участии в соревнованиях CTF.

Сканирование портов

  • NMAP (Network Mapper): сканирование портов, обнаружение уязвимостей, перечисление сервисов и многое другое. См. также «Сканер уязвимостей из Nmap и Vulscan».
  • RustScan: он использует другой метод для сканирования портов намного быстрее, чем nmap, который затем может быть передан механизму сценариев nmap.

Другое

  • Wireshark: Анализатор трафика и сетевых протоколов. См. также «Как перехватить пароли в WireShark».
  • Aircrack-NG: Набор инструментов для взлома паролей WiFi. См. также «Актуальные методы взлома Wi-Fi»

Веб-приложение

  • GoBuster: в основном используется для брутфорса папок, но у него есть и другие возможности. Можете установить его в Kali Linux с помощью команды « sudo apt install gobuster ».
  • Nikto: Мощный сканер уязвимостей веб-приложений.
  • Burpsuite: универсальный инструмент для тестирования веб-приложений. См. также «Автоматизация атак в Burp Suite».
  • OWASP ZAP: бесплатный сканер веб-приложений с открытым исходным кодом.
  • WPScan: инструмент для взлома сайтов на WordPress. Получение списка плагинов и тем, оценка уязвимости сайта (для этого нужен токен api, можно получить его, создав учетную запись здесь) и многое другое. См. также «Как проверить сайт на уязвимости».
  • SQLMap: с помощью этого инструмента можно сканировать сайт на наличие уязвимостей.
  • SQL-инъекций, включая формы, параметры и многое другое.

Хеширование и криптография

Онлайн

Офлайн

  • John The Ripper: мощный инструмент для взлома хешей.
  • Hashcat (взлом хеша). См. также «Как пользоваться Hashcat в Kali Linux».
  • Декодирование base64 из консоли с использованием echo “base64_code” | base64 -d
  • Скрипты John The Ripper: можно найти их в Kali Linux в каталое /usr/share /john .

Стеганография и скрытые данные

Стеганография

  • Steghide: скрывает и извлекает данные из файлов. Устанавливается в Kali командой sudo apt install steghide
  • Stegpy: извлечение скрытых данных из png, bmp, gif, webp и wav.
  • Audacity: редактор звуковых дорожек. : скрывает и извлекает данные.

Скрытые данные

  • Binwalk: поиск в двоичном файле исполняемого кода.
  • ExifTool: чтение, запись и редактирование метаданных разных типов файлов.
  • strings: команда для просмотра и поиска текстовых строк в двоичном файле. Есть в Kali.

Реверс-инжиниринг

Эксплуатация

  • searchsploit: инструмент командной строки для поиска уязвисмотей Exploit-DB. Установлен по умолчанию в Kali. См. также «Лучшие сайты для поиска уязвимостей».
  • Metasploit: самый популярный фреймворк для тестирования на проникновение. См. также «Как пользоваться Metasploit Framework».
  • Pwntools: фреймворк CTF. Он предназначен для быстрого прототипирования и разработки и призван максимально упростить написание эксплойтов.

На этом все. Это был мой список инструментов, которые я использую в соревнованиях CTF. А какими инструментами пользуетесь вы?

Читайте также: