Работа с W3af в Kali Linux — The Codeby
Это вольный перевод статьи http://pentesterconfessions.blogspot.ru/2007/10/how-to-use-w3af-to-audit-web.html по работе в w3af.
Перевод прислал Entest, спасибо ему, что поделился с нами этим материалом!
Введение
W3af (Web Application Attack and Audit Framework) — это open-source сканер веб-уязвимостей.
Этот сканер имеет как графический интерфейс, так и возможность работы из-под консоли. В общем, это фреймворк с большим количеством различных плагинов.
В данной статье будет описано как осуществить проверку веб-приложения на уязвимости XSS, CSRF и Sqli работая в w3af из под консоли.
Как пользоваться W3af
Для запуска W3af в консольном виде надо открыть терминал и напечатать:
w3af_console
Для того чтобы посмотреть список всех опций напишем:
w3af>>> help
И получим:
|-----------------------------------------------------------------------------| | start | Запустить сканирование.| | plugins | Включение и настройка плагинов. | | exploit | Эксплуатировать уязвимость. | | profiles | Показать список и использовать профайлы сканирования. | | cleanup | Очистить перед началом нового сканирования. | |-----------------------------------------------------------------------------| | help | Показать помощь. Наберите: help [команда] , чтобы увидеть | | | больше помощи по конкретной "команде" | | version | Показать информацию о версии w3af. | | keys | Показать сочетания клавиш. | |-----------------------------------------------------------------------------| | http-settings | Задать HTTP настройки фреймворка. | | misc-settings | Изменить остальные настройки w3af. | | target | Настроить целевой URL.
| |-----------------------------------------------------------------------------| | back | Вернуться в предыдущее меню. | | exit | Выход из w3af. | |-----------------------------------------------------------------------------| | kb | Просмотреть уязвимости, доступные в Базе Знаний. | |-----------------------------------------------------------------------------|
Прежде всего надо сказать как настроить w3af для работы.
Для выбора опции достаточно напечатать ее название, для того чтобы вернуться к предыдущему уровню следует напечатать «back».
Если напечатать команду «view» то на экран будет выведен список настраиваемых параметров выбранной опции.
Теперь рассмотрим опцию «target». В ней задается URL для проводимой проверки.
Настройка опций:
w3af>>> target w3af/config:target>>> help
Для данной опции доступны следующие параметры:
|-----------------------------------------------------------------------------| | view | Список доступных опций и их значения.| | set | Установить значение параметра. | | save | Сохранить новую конфигурацию. | |-----------------------------------------------------------------------------| | back | Вернуться в предыдущее меню. | | exit | Выйти из w3af. | |-----------------------------------------------------------------------------|
Установим URL для проверки:
w3af/config:target>>> set target http://localhost w3af/config:target>>> view
Для дальнейшей работы необходимо настроить плагины.
w3af/config:target>>> back w3af>>> plugins w3af/plugins>>> help
|---------------------------------------------------------------------------------------------------| | list | Список доступных плагинов. | |---------------------------------------------------------------------------------------------------| | back | Перейти к предыдущему меню.| | exit | Выйти из w3af. | |---------------------------------------------------------------------------------------------------| | grep | Просмотр, настройка и включение плагинов grep | | audit | Просмотр, настройка и включение плагинов аудита | | evasion | Просмотр, настройка и включение плагинов уклонения | | crawl | Просмотр, настройка и включение плагинов обхода контента | | auth | Просмотр, настройка и включение плагинов аутентификации | | mangle | Просмотр, настройка и включение плагинов искажения | | output | Просмотр, настройка и включение плагинов вывода | | bruteforce | Просмотр, настройка и включение плагинов брутфорса | | infrastructure | Просмотр, настройка и включение плагинов инфраструктуры | |---------------------------------------------------------------------------------------------------|
Для аудита веб-приложения нам потребуется настроить как минимум четыре плагина. Audit, crawl, infrastructure и output.
Если мы напечатаем audit, то увидим все доступные настройки для этого плагина, такие как xss, csrf, sql и ldap инъекции и т.д. Кроме этого там также указано какие из настроек в данный момент включены.
Для включения определенных настроек следует напечатать:
w3af/plugins>>> audit xss,csrf,sqli
Для выбора всех настроек:
w3af/plugins>>> audit all
Нам как раз и нужно проверить веб-приложение на эти уязвимости. Кроме того мы хотим чтобы результат проверки отображался в консоли и был сохранен в виде html.
Для этого включим необходимые плагины crawl и output.
w3af/plugins>>> crawl web_spider,pykto w3af/plugins>>> infrastructure hmap w3af/plugins>>> output console,html_file
Немного информации об используемых плагинах:
Web_spider — Плагин представляет из себя классического web-паука. Он бродит по сайту и извлекает все ссылки и адреса форм.
Pykto
Hmap — Плагин опознаёт удалённый веб-сервер, его тип, версию и установленные исправления.
Идентификация происходит не только через заголовок «Server». По сути плагин представляет из себя обёртку для hmap Dustin`a Lee.
Console — Этот плагин пишет отчёт о работе фреймворка в консоль.
Html_file — Плагин пишет отчёт о работе фреймворка в HTML-файл.
Для начала аудита выполняем следующие команды:
w3af/plugins>>> back w3af>>> start
Сканер работает довольно долго, так что придется запастись терпением. В итоге получим примерно такой отчет:
w3af>>> start Auto-enabling plugin: discovery.allowedMethods Auto-enabling plugin: discovery.error404page Auto-enabling plugin: discovery.serverHeader The Server header for this HTTP server is: Apache/2.2.3 (Ubuntu) PHP/5.2.1 Hmap plugin is starting. Fingerprinting may take a while. The most accurate fingerprint for this HTTP server is: Apache/2.0.55 (Ubuntu) PHP/5.1.2 pykto plugin is using "Apache/2.0.55 (Ubuntu) PHP/5.1.2" as the remote server type. This information was obtained by hmap plugin. pykto plugin found a vulnerability at URL: http://localhost/icons/ . Vulnerability description: Directory indexing is enabled, it should only be enabled for specific directories (if required). If indexing is not used, the /icons directory should be removed. The vulnerability was found in the request with id 128. pykto plugin found a vulnerability at URL: http://localhost/doc/ . Vulnerability description: The /doc directory is browsable. This may be /usr/doc. The vulnerability was found in the request with id 1865. pykto plugin found a vulnerability at URL: http://localhost/> . Vulnerability description: The IBM Web Traffic Express Caching Proxy is vulnerable to Cross Site Scripting (XSS).
CA-2000-02. The vulnerability was found in the request with id 3385. New URL found by discovery: http://localhost/ New URL found by discovery: http://localhost/test2.html New URL found by discovery: http://localhost/xst2.html New URL found by discovery: http://localhost/xst.html New URL found by discovery: http://localhost/test.html
И результат, сохраненный в results.html:
Работа с W3af в Kali Linux
MrFastGamer
- Автор темы
- #1
Введение
Web Application Attack and Audit Framework(W3af) — это сканер веб-уязвимостей с открытым исходным кодом.
Этот сканер имеет графический интерфейс, но так же можно работы и из-под консоли. В общем, это фреймворк имеющий большое количество разных плагинов.
Далее будет описано как осуществить проверку веб-приложения на уязвимости XSS, CSRF и Sqli работая в w3af из под консоли.
Как пользоваться W3af
Для запуска W3af введите в терминале »w3af_console». Для просмотра всех команд пишем »help» и видим следующие:
Прежде всего я вам расскажу как настроить W3af для работы
Для выбора опции достаточно написать ее название, а для возвращения к предыдущему уровню написать »
Теперь рассмотрим опцию «target«. С помощью нее задается URL для проводимой проверки.
Настройка опции:
Для данной опции доступны следующие параметры:
Установим URL для проверки:
Для дальнейшей работы необходимо настроить плагины:
Для аудита веб-приложения нужно настроить минимум 4 плагина.
Audit, crawl, infrastructure и output
Если мы напечатаем audit, то увидим все доступные настройки для этого плагина, такие как xss, csrf, sql и ldap инъекции и т.д.
Кроме этого там также указано какие из настроек в данный момент включены.
Для включения определенных настроек следует напечатать:
Для выбора всех настроек:
Нам как раз и нужно проверить веб-приложение на эти уязвимости. Кроме того мы хотим чтобы результат проверки отображался в консоли и был сохранен в виде html.
Для этого включим необходимые плагины crawl и output.
Немного информации об используемых плагинах:
Web_spider — Плагин представляет из себя классического web-паука. Он бродит по сайту и извлекает все ссылки и адреса форм.
Pykto — Плагин представляет из себя сканнер nikto, портированный на python. Он использует базу данных из nikto (scan_database) для поиска уязвимых ссылок.
Hmap — Плагин опознаёт удалённый веб-сервер, его тип, версию и установленные исправления.
Идентификация происходит не только через заголовок «Server». По сути плагин представляет из себя обёртку для hmap Dustin`a Lee.
Console — Этот плагин пишет отчёт о работе фреймворка в консоль.
Html_file — Плагин пишет отчёт о работе фреймворка в HTML-файл.
Для начала аудита выполняем следующие команды:
Сканер работает довольно долго, так что придется запастись терпением. В итоге получим примерно такой отчет:
И результат, сохраненный в results.html:
Последнее редактирование:
Drager
Работающий пенсионер
- #2
Тема классно оформлена, но фрейм сам по себе немного кривой, частенько может выдать ошибки) Лучше пользоваться чем то более стабильным)
Запуск w3af — w3af — структура атаки и аудита веб-приложений Документация 2019.

w3af
имеет два пользовательских интерфейса: консольный пользовательский интерфейс и графический
пользовательский интерфейс. В этом руководстве пользователя основное внимание будет уделено пользовательскому интерфейсу консоли, где
проще объяснить особенности фреймворка. Чтобы запустить пользовательский интерфейс консоли
выполнить:
$ ./w3af_console w3af>>>
Из этого приглашения вы сможете настроить параметры фреймворка и плагинов,
запустить сканирование и в конечном итоге использовать уязвимость. В этот момент вы можете начать
ввод команд. Первая команда, которую вы должны выучить, это помощь
(обратите внимание
эти команды чувствительны к регистру):
w3af>>> help |------------------------------------------------- ---------------| | начать | Запустите сканирование. | | плагины | Включить и настроить плагины. | | эксплуатировать | Воспользуйтесь уязвимостью. | | профили | Перечислите и используйте профили сканирования.| | уборка | Очистка перед началом нового сканирования. | |------------------------------------------------- ---------------| | помощь | Показать справку. Выдача: help [команда] , печатает | | | более конкретная помощь по "команде" | | версия | Показать информацию о версии w3af. | | ключи | Показать сочетания клавиш. | |------------------------------------------------- ---------------| | http-настройки | Настройте параметры HTTP фреймворка. | | разное-настройки | Настройте прочие параметры w3af. | | цель | Настройте целевой URL. | |------------------------------------------------- ---------------| | назад | Перейти в предыдущее меню. | | выход | Выход из w3af. | |------------------------------------------------- ---------------| | кб | Просмотрите уязвимости, хранящиеся в папке | | | База знаний | |------------------------------------------------- ---------------| w3af>>> w3af>>> помогите цели Настройте целевой URL. w3af>>>
Команды главного меню объясняются в справке, показанной выше. внутренности каждого меню будут показаны далее в этом документе. Как вы уже
заметил, что команда
help
может принимать параметр, а если имеется, то подробную
будет показана помощь для этой команды, например. справочные ключи
.
Другая интересная особенность пользовательского интерфейса консоли — это возможность завершение с вкладками (введите «плю», а затем TAB) и историю команд (после вводя некоторые команды, перемещайтесь по истории с помощью стрелок вверх и вниз).
Чтобы войти в меню конфигурации, вам просто нужно ввести его имя и нажать Enter, вы увидите, как изменится приглашение, и теперь вы находитесь в этом контексте:
w3af>>> http-settings w3af/config:http-настройки>>>
Все меню конфигурации содержат следующие команды:
помощь
вид
набор
задняя часть
Вот пример использования этих команд в http-настройки
меню:
w3af/config:http-настройки>>> помощь |------------------------------------------------- ----------------| | вид | Перечислите доступные параметры и их значения.| | набор | Установите значение параметра. | | сохранить | Сохраните настроенные параметры. | |------------------------------------------------- ----------------| | назад | Перейти в предыдущее меню. | | выход | Выход из w3af. | |------------------------------------------------- ----------------| w3af/config:http-настройки>>> посмотреть |------------------------------------------------- -------------------------------------------------------------| | Настройка | Значение | Описание | |------------------------------------------------- -------------------------------------------------------------| | URL_параметр | | Добавьте заданный параметр URL к каждому доступному URL. | | | | Пример: http://www.foobar.com/index.jsp;<параметр>?id=2 | | тайм-аут | 15 | Тайм-аут подключения к HTTP-серверу | | заголовки_файл | | Установите имя файла заголовков. Этот файл имеет дополнительные заголовки| | | | которые добавляются к каждому запросу. | |------------------------------------------------- -------------------------------------------------------------| .
.. |------------------------------------------------- -------------------------------------------------------------| | basic_auth_user | | Установить имя пользователя для базовой аутентификации для HTTP-запросов | | basic_auth_passwd | | Установить пароль базовой аутентификации для HTTP-запросов | | basic_auth_domain | | Установить базовый домен аутентификации для HTTP-запросов | |------------------------------------------------- -------------------------------------------------------------| w3af/config:http-settings>>> установить тайм-аут 5 w3af/config:http-настройки>>> сохранить w3af/config:http-настройки>>> назад w3af>>>
Подводя итог, команда view
используется для вывода списка всех настраиваемых параметров,
с их значениями и описанием. Команда set
используется для изменения
ценить. Наконец, мы можем выполнить обратно
или нажать CTRL+C, чтобы вернуться к предыдущему
меню. Подробную справку по каждому параметру конфигурации можно получить с помощью параметр справки
как показано в этом примере:
w3af/config:http-settings>>> тайм-аут справки Справка по тайм-ауту параметра: ============================ Установите низкие тайм-ауты для использования локальной сети и высокие тайм-ауты для медленных интернет-соединений.w3af/config:http-настройки>>>
Меню конфигурации http-settings
и misc-settings
используются для
установить общесистемные параметры, которые используются фреймворком. Все параметры
имеют значения по умолчанию, и в большинстве случаев их можно оставить как есть. w3af
был
разработан таким образом, что позволяет новичкам запускать его без необходимости многому учиться
его внутренностей.
Он также достаточно гибок, чтобы его могли настраивать специалисты, которые знают, чего хотят, и необходимо изменить внутренние параметры конфигурации для выполнения своих задач.
Запуск w3af с пользовательским интерфейсом GTK
Фреймворк также имеет графический пользовательский интерфейс, который можно запустить, выполнив:
$ ./w3af_gui
Графический пользовательский интерфейс позволяет выполнять все действия,
framework предлагает гораздо более простой и быстрый способ начать сканирование и
анализировать результаты.
Примечание
Графический интерфейс пользователя зависит от других сторонних производителей и может потребовать от вас установить дополнительные пакеты ОС и Python.
Конфигурация плагинов
Плагины настраиваются с помощью меню конфигурации «плагины».
w3af>>> плагины w3af/плагины>>> помощь |------------------------------------------------- ----------------------------| | список | Список доступных плагинов. | |------------------------------------------------- ----------------------------| | назад | Перейти в предыдущее меню. | | выход | Выход из w3af. | |------------------------------------------------- ----------------------------| | выход | Просмотр, настройка и включение выходных плагинов | | аудит | Просмотр, настройка и включение подключаемых модулей аудита | | ползать | Просмотр, настройка и включение подключаемых модулей сканирования | | перебор | Просмотр, настройка и включение плагинов брутфорса | | грэп | Просмотр, настройка и включение подключаемых модулей grep | | уклонение | Просмотр, настройка и включение плагинов уклонения | | инфраструктура | Просмотр, настройка и включение подключаемых модулей инфраструктуры | | авторизация | Просмотр, настройка и включение подключаемых модулей аутентификации | | калечить | Просмотр, настройка и включение плагинов mangle | |------------------------------------------------- ----------------------------| w3af/плагины>>>
В этом меню можно настроить все плагины, кроме Attack
. Перечислим все плагины типа
аудит
:
w3af>>> plugins w3af/plugins>>> аудит списка |------------------------------------------------- ----------------------------| | Имя плагина | Статус | конф | Описание | |------------------------------------------------- ----------------------------| | слепой_sqli | | Да | Выявление слепых SQL-инъекций | | | | | уязвимости. | | буфер_переполнение | | | Найдите уязвимости, связанные с переполнением буфера. | ...
Чтобы включить подключаемые модули xss
и sqli
, а затем убедиться, что команда
понял фреймворк, выдаем такой набор команд:
w3af/plugins>>> audit xss, sqli w3af/плагины>>> аудит |------------------------------------------------- ---------------------------| | Имя плагина | Статус | конф | Описание | |------------------------------------------------- ---------------------------| | слай | Включено | | Найдите ошибки SQL-инъекций. | | сси | | | Найти включение на стороне сервера | | | | | уязвимости.| | ssl_сертификат | | Да | Проверить срок действия SSL-сертификата | | | | | (если используется https). | | un_ssl | | | Узнайте, может ли защищенный контент также | | | | | быть полученным с помощью http. | | путь | | | Найти инъекцию XPATH | | | | | уязвимости. | | сс | Включено | Да | Определение межсайтового скриптинга | | | | | уязвимости. | | хст | | | Найти межсайтовую трассировку | | | | | уязвимости. | |------------------------------------------------- ---------------------------| w3af/плагины>>>
Или, если пользователь хочет точно знать, что делает плагин, он также может
запустите команду desc
следующим образом:
w3af/plugins>>> audit desc xss Этот плагин находит уязвимости межсайтового скриптинга (XSS). Существует один настраиваемый параметр: - persist_xss Чтобы найти ошибки XSS, плагин отправит набор строк javascript на каждый параметр и найдите этот ввод в ответе. Параметр persistent_xss заставляет плагин хранить все данные отправлено в веб-приложение и в конце снова запросить все URL-адреса поиск этих специально созданных строк.w3af/плагины>>>
Теперь мы знаем, что делает этот плагин, но давайте проверим его внутренности:
w3af/plugins>>> audit config xss w3af/plugins/audit/config:xss>>> вид |------------------------------------------------- ----------------------------| | Настройка | Значение | Описание | |------------------------------------------------- ----------------------------| | постоянный_xss | Правда | Выявление постоянных межсайтовых сценариев | | | | уязвимости | |------------------------------------------------- ----------------------------| w3af/plugins/audit/config:xss>>> установить persist_xss False w3af/plugins/audit/config:xss>>> назад Конфигурация сохранена. w3af/плагины>>>
В меню конфигурации плагинов также есть команда set
для
изменение значений параметров и команду view
для вывода списка существующих
значения. В предыдущем примере мы отключили постоянный межсайтовый скриптинг.
проверяет в плагине xss.
Сохранение конфигурации
После того, как конфигурация плагина и фреймворка настроена, ее можно сохранить. информация к профилю:
w3af>>> profiles w3af/profiles>>> save_as туториал Профиль сохранен.
Профили сохраняются как файлы в ~/.w3af/profiles/
. Сохраненная конфигурация
можно загрузить для запуска нового сканирования:
w3af>>> profiles w3af/profiles>>> использовать fast_scan Плагины, настроенные профилем сканирования, включены, и их параметры настроены. Пожалуйста, установите целевой URL-адрес(а) и запустите сканирование. w3af/профили>>>
Совместное использование профиля с другим пользователем может быть проблематичным, поскольку они включают
полные пути к файлам, на которые ссылаются конфигурации плагина, которые потребуют
пользователей, чтобы поделиться профилем, файлами, на которые есть ссылки, и вручную отредактировать профиль, чтобы
соответствовать текущей среде. Для решения этой проблемы автономный флаг
добавлено:
w3af>>> профили w3af/profiles>>> save_as самостоятельный учебник Профиль сохранен.
Автономный профиль
объединяет все файлы, на которые есть ссылки, внутри профиля
и могут быть легко переданы другим пользователям.
Запуск сканирования
После настройки всех необходимых плагинов пользователь должен установить целевой URL и наконец, запустите сканирование. Выбор цели делается так:
w3af>>> target w3af/config:target>>> установить цель http://localhost/ w3af/config:цель>>> назад w3af>>>
Наконец, запустите start
, чтобы запустить все настроенные плагины.
w3af>>> старт
В любой момент во время сканирования вы можете нажать
, чтобы получить
состояние ядра w3af. Строки состояния выглядят следующим образом:
Статус: Выполняется discovery.web_spider на http://localhost/w3af/ | Метод: ПОЛУЧИТЬ.
Пошаговое руководство и руководство по W3af | Infosec Resources
w3af (среда аудита и атак веб-приложений) — это платформа для аудита и эксплуатации веб-приложений. В этой серии статей мы рассмотрим почти все функции, которые может предложить w3af, и обсудим, как их использовать для тестирования на проникновение веб-приложений. В первой части этой серии мы будем работать с консолью w3af и знакомиться с командами. Мы также рассмотрим различные типы плагинов, которые может предложить w3af, и обсудим, как их использовать для достижения оптимальной производительности.
Некоторые из основных особенностей w3af:
- Он имеет подключаемые модули, которые взаимодействуют друг с другом. Например. Плагин обнаружения в w3af ищет разные URL-адреса для проверки на наличие уязвимостей и передает их плагину аудита, который затем использует эти URL-адреса для поиска уязвимостей.
- Он устраняет некоторые головные боли, связанные с ручным тестированием веб-приложений, благодаря функции генератора нечетких и ручных запросов. Его также можно настроить для работы в качестве прокси-сервера MITM. Перехваченные запросы могут быть отправлены в генератор запросов, а затем ручное тестирование веб-приложений может быть выполнено с использованием переменных параметров.
- Он также имеет функции для использования найденных уязвимостей.
Важно понимать, что ни один автоматический сканер веб-приложений не идеален, и всегда будут возникать ложные срабатывания. С w3af первый и самый важный шаг — убедиться, что у нас установлена последняя версия. Это очень важно, потому что разработчики w3af (Андрес Рианчо и команда w3af) постоянно исправляют ошибки, и поэтому очень важно убедиться, что у нас самая свободная от ошибок версия. Чтобы открыть консоль w3af, введите команду, как показано на рисунке ниже.
w3af может попросить вас обновить версию. Желательно обновляться до последней версии. Итак, теперь, когда мы находимся в консоли, введите help , чтобы просмотреть список доступных команд.
Мы можем увидеть список доступных нам опций. Введите команду keys , чтобы просмотреть различные доступные нам сочетания клавиш. Я рекомендую вам ознакомиться с ними.
Давайте посмотрим на плагины, доступные в w3af. Тип плагины . Вы можете увидеть изменение вывода консоли на w3af/plugins . Введите back , чтобы вернуться назад, или введите help , чтобы отобразить список доступных плагинов.
Чтобы узнать информацию о конкретном плагине, просто введите help pluginName . Например, если я хочу узнать о плагине обнаружения, я бы набрал help discovery .
Мы видим, что существует около 9 типов различных плагинов.
1)Открытие — Плагин обнаружения помогает найти больше URL-адресов, форм и т. д., которые можно использовать для сканирования уязвимостей. Затем эта информация передается в подключаемый модуль аудита. Существует множество различных плагинов для обнаружения, таких как webSpider, spiderMan, hmap и т. д. Все эти плагины имеют разные функции. Пользователь может включить один или несколько плагинов одновременно.
Чтобы увидеть плагины обнаружения, просто введите discovery .
Чтобы найти конкретную информацию о конкретном плагине, просто введите тип_плагина desc имя_плагина . Например, если я хочу узнать больше информации об индексном плагине SpiderMan, я бы написал команду discovery desc spiderMan .
Здесь важно отметить, что плагин SpiderMan имеет 2 настраиваемых параметра. Чтобы установить настраиваемые параметры, введите следующие команды, как показано на рисунке ниже. Как видно из рисунка ниже, я установил listenPort на 55555.
Вот некоторые другие команды, которые можно использовать.
1) Discovery pluginType1, pluginType2 — выбор двух подключаемых модулей.
2) Discovery all — Включает все плагины (не рекомендуется, так как это может занять много времени).
3) discovery !all — Удаляет все включенные плагины.
4) включено обнаружение списка — список всех включенных в данный момент плагинов.
На приведенном ниже снимке экрана показаны некоторые из этих команд в действии.
Теперь запустим один из подключаемых модулей обнаружения. Я буду использовать плагин hmap для обнаружения, чтобы узнать версию сервера, работающего на удаленном хосте. Как видно из рисунка ниже, я включил плагин hmap.
Как только это будет сделано, пришло время указать местоположение целевого сервера. Введите назад , чтобы вернуться назад. Затем введите следующие команды, как показано на рисунке ниже, чтобы установить цель. Как мы видим, цель задается командой set target target-address .
После этого введите назад, , чтобы вернуться назад, и введите start, , чтобы запустить плагин. Как мы видим, w3af определил версию Apache и php, работающих на моем сервере. Мы обсудим дополнительные функции плагина обнаружения позже.
2) Аудит — Плагины аудита используются для обнаружения уязвимостей в URL-адресах или формах, предоставляемых плагинами обнаружения. Вот здесь и приходит на помощь взаимодействие между плагинами в w3af. Плагин аудита имеет опции для тестирования различных типов уязвимостей, таких как xss, sqli, csrf и т. д. Он делает это, вводя различные строки в свой запрос, а затем ища определенное значение (соответствующее входной строке) в ответе. Во время этого процесса могут возникать ложные срабатывания. Если я хочу узнать, как работает плагин sqli, я могу ввести команды, как показано на рисунке ниже.
Опять же, я могу установить различные параметры конфигурации при выборе конкретного плагина. Например, на рисунке ниже я увеличиваю количество проверок при выполнении аудита XSS.
3)Grep — Плагин grep используется для поиска интересной информации в запросах и ответах, таких как учетные записи электронной почты, формы с возможностью загрузки файлов, хэши, номера кредитных карт, адреса электронной почты и т. д. Вы можете установить тип информации, которую вы хотите искать, установив соответствующий плагин. Поскольку подключаемый модуль grep анализирует только запрос и ответ, важно, чтобы для его работы был включен какой-либо подключаемый модуль обнаружения. В противном случае плагины grep бесполезны. Как вы можете видеть на рисунке ниже, я настроил grep для использования плагина getMails.
4)Перебор — Плагины перебора можно использовать для перебора форм входа в систему, а также для входа по http-auth. Как только плагин обнаружения находит любую форму с вводом на основе формы или вводом http-auth, он автоматически запускает против нее атаку грубой силы, если включен соответствующий плагин грубой силы. Некоторые из важных вещей, которые нужно знать о грубой силе, — это параметры конфигурации.
Рекомендуется использовать собственный файл конфигурации для списка имен пользователей и паролей. Также не забудьте взглянуть на некоторые другие варианты. Как вы можете видеть на рисунке ниже, я установил для параметра passEqUser значение false просто потому, что я не думаю, что у пользователей не будет паролей, совпадающих с их именем пользователя.
Одним из других хороших настраиваемых параметров является параметр useMails. Эта опция использует адреса электронной почты, которые w3af находит (возможно, через плагин grep), в качестве одного из входных данных для поля имени пользователя. Например, если одно из имен пользователей — [email protected], то пробное имя пользователя будет example. Это еще один пример того, как взаимодействие между различными плагинами может сделать работу намного более эффективной.
5)Вывод — Плагин вывода помогает нам выбрать формат, в котором мы хотим получить вывод. w3af поддерживает множество форматов, таких как console, emailReport, html, xml, text и т. д. Опять же, вы можете установить здесь различные параметры, такие как имя файла, подробность и т. д. На рисунке ниже я установил verbose на True, так как мне нужен очень подробный отчет о приложении, которое я тестирую.
6) Mangle — Плагин mangle используется для управления запросами и ответами на лету. Он имеет только один плагин с именем sed (редактор потока), который используется для изменения запросов и ответов с использованием различных регулярных выражений. Выражения должны иметь определенный формат. Использование вполне очевидно из описания.
Как видно из рисунка ниже, я настроил плагин на поиск строки Yahoo и замену ее на Google в заголовке запроса.
7)Evasion — Плагины уклонения используют различные методы для обхода WAF (брандмауэров веб-приложений). Например, одна из опций rndHexEncode случайным образом кодирует URL-адрес в шестнадцатеричном формате, чтобы избежать обнаружения, в то время как плагин fullWidthEncode выполняет кодирование URL-адреса по всей ширине, чтобы обойти системы сканирования содержимого Http, используя описанную здесь уязвимость.
8)Аутентификация — последнее, но не менее важное: плагин аутентификации — один из самых важных плагинов в w3af. Он имеет только один тип, называемый универсальным. Это связано с тем, что при сканировании целевого веб-приложения, если w3af попадает в форму входа, ему необходимо автоматически отправить учетные данные, чтобы продолжить поиск информации.