Работа с W3af в Kali Linux
Life-HackЭто вольный перевод статьи 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
И получим:
Прежде всего надо сказать как настроить w3af для работы.
Для выбора опции достаточно напечатать ее название, для того чтобы вернуться к предыдущему уровню следует напечатать "back".
Если напечатать команду "view" то на экран будет выведен список настраиваемых параметров выбранной опции.
Теперь рассмотрим опцию "target". В ней задается URL для проводимой проверки.
Настройка опций:
w3af>>> target
w3af/config:target>>> help
Для данной опции доступны следующие параметры:
Установим URL для проверки:
w3af/config:target>>> set target http://localhost
w3af/config:target>>> view
Для дальнейшей работы необходимо настроить плагины.
w3af/config:target>>> back
w3af>>> plugins
w3af/plugins>>> help
Для аудита веб-приложения нам потребуется настроить как минимум четыре плагина. 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 — Плагин представляет из себя сканнер nikto, портированный на python. Он использует базу данных из nikto (scan_database) для поиска уязвимых ссылок.
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:
Источник