12 бесплатных инструментов для поиска уязвимостей и вредоносных программ на сайте
2.8KОдним из наиболее важных вопросов в области информационных технологий является безопасность. Знаете ли вы, что 96% тестируемых приложений имеют уязвимости?
Ниже приведена диаграмма от Cenzic, на которой показаны различные типы найденных уязвимостей.
В этой статье я расскажу о бесплатных инструментах для сканирования сайта на наличие уязвимостей и вредоносных программ.Список рассматриваемых инструментов:
- Scan My Server;
- SUCURI;
- Qualys SSL Labs, Qualys FreeScan;
- Quttera;
- Detectify;
- SiteGuarding;
- Web Inspector;
- Acunetix;
- Asafa Web;
- Netsparker Cloud;
- UpGuard Web Scan;
- Tinfoil Security.
ScanMyServer предоставляет один из самых полных отчетов по тестам безопасности: SQL-инъекциям, межсайтовому скриптингу, инъекциям PHP-кода, раскрытию источника, установке HTTP-заголовков и многое другое.
SUCURI является самым популярным бесплатным сканером вредоносных программ. Вы можете быстро протестировать сайт на наличие вредоносного кода, SPAM-инъекций и его присутствие в различных черных списках.
SUCURI также очищает и защищает сайт от онлайн-угроз. Инструмент работает на любых CMS, включая WordPress, Joomla, Magento, Drupal, phpBB и т. д.
SSL Labs является одним из популярных инструментов для сканирования веб-сервера SSL. Он обеспечивает углубленный анализ https URL-адреса, общий рейтинг, шифр, версию SSL / TLS, имитацию рукопожатий, информацию о протоколе, BEAST и многое другое.
FreeScan проверяет сайты на OWASP Top Risks и вредоносные программы, по параметрам безопасности SCP, а также выполняет другие тесты. Чтобы выполнить сканирование, необходимо зарегистрировать бесплатную учетную запись.
Quttera проверяет сайт на наличие вредоносных программ и уязвимостей.
Этот инструмент сканирует сайт на наличие вредоносных файлов, подозрительных файлов, потенциально подозрительных файлов, phishTank, а также присутствие в списках безопасного просмотра (Google, Yandex) и списках вредоносных программ.
Detectify — это сканер сайта, основанный на SaaS. Он позволяет проводить более 100 автоматических тестов безопасности, включая тест OWASP Top 10, наличие вредоносного программного обеспечения и многие другие.
Detectify предоставляет 21-дневную бесплатную ознакомительную версию.
SiteGuarding позволяет проверить домен на наличие вредоносного программного обеспечения, присутствия в черных списках, инъекций спама и многого другого.
Сканер совместим с WordPress, Joomla, Drupal, Magento, osCommerce, Bulletin и другими платформами.
SiteGuarding также помогает удалить вредоносное программное обеспечение с сайта.
Web Inspector сканирует сайт и предоставляет отчеты — «черный список», «фишинг», «вредоносные программы», «черви», «бэкдоры», «трояны», «подозрительные фреймы», «подозрительные подключения».
Acunetix проверяет весь сайт на наличие более 500 различных уязвимостей.
Инструмент предоставляет бесплатную пробную версию на 14 дней.
AsafaWeb предлагает сканирование трассировки, пользовательских ошибок, трассировки стека, патча Hash DoS, журнала EMLAH, HTTP Only Cookies, Secure Cookies, Clickjacking и многого другого.
Netsparker Cloud — это сканер безопасности корпоративных веб-приложений, который способен обнаружить более 25 критических уязвимостей. Он бесплатен для проектов с открытым исходным кодом. Также можно запросить пробную версию инструмента.
UpGuard Web Scan — это инструмент оценки внешних рисков, который использует общедоступную информацию по различным факторам, включая SSL, атаки Clickjack, Cookie, DNSSEC, заголовки и т. д. Он все еще находится на стадии бета-тестирования, но его стоит попробовать.
Tinfoil Security сначала проверяет сайт на наличие 10 уязвимостей OWASP, а затем на другие известные угрозы. В конечном итоге вы получите отчет о действиях и сможете повторно просканировать сайт после внесения необходимых исправлений.
Полная настройка займет около 5 минут. Просканировать сайт можно даже если он защищен или для входа на него требуется регистрация.
Одним из основных факторов безопасности любого сайта является постоянный контроль, поэтому вы получите уведомление, когда он дает сбой или подвергается взлому.
Перечисленные инструменты позволяют сканировать сайт по запросу и запланировать автоматическую проверку безопасности. Надеюсь, что приведенный список специализированных средств поможет вам выполнить проверку безопасности сайта.
Данная публикация представляет собой перевод статьи «12 Online Free Tools to Scan Website Security Vulnerabilities & Malware» , подготовленной дружной командой проекта Интернет-технологии.ру
Обзор бесплатных инструментов для пентеста web-ресурсов и не только v2 / Habr
Как-то давно я уже писал об этом, но немного скудно и сумбурно. После я решил расширить список инструментов в обзоре, добавить статье структуры, учесть критику (большое спасибо Lefty за советы) и отправил ее на конкурс на СекЛаб (и опубликовал ссылку, но по всем понятным причинам ее никто не увидел). Конкурс закончен, результаты объявили и я с чистой совестью могу ее (статью) опубликовать на Хабре.Бесплатные инструменты пентестера веб-приложений
В данной статье я расскажу о наиболее популярных инструментах для пентестинга (тестов на проникновение) веб-приложений по стратегии «черного ящика».
Для этого мы рассмотрим утилиты, которые помогут в данном виде тестирования. Рассмотрим следующие категории продуктов:
- Сетевые сканеры
- Сканеры брешей в веб-скриптах
- Эксплойтинг
- Автомазация инъекций
- Дебаггеры (снифферы, локальные прокси и т.п.)
Некоторые продукты имеют универсальный «характер», поэтому буду относить их к той категории, в которой они имеют больший результат (субъективное мнение).
Сетевые сканеры.
Основная задача — раскрыть доступные сетевые сервисы, установить их версии, определить ОС и т. д.
Nmap
Nmap («Network Mapper») это бесплатная утилита с открытым исходным кодом для анализа сети и аудита безопасности систем. Яростные противники консоли могут использовать Zenmap, это GUI к Nmap’у.
Это не просто «умный» сканер, это серьезный расширяемый инструмент (из «необычных фишек» — наличие скрипта для проверки узла на наличие червя «Stuxnet» (упоминалось тут). Типовой пример использования:
nmap -A -T4 localhost
-A для определения версии ОС, сканирования с использованием скриптов и трассировки
-T4 настройка управления временем (больше — быстрее, от 0 до 5)
localhost — целевой хост
Что-нибудь по жестче?
nmap -sS -sU -T4 -A -v -PE -PP -PS21,22,23,25,80,113,31339 -PA80,113,443,10042 -PO --script all localhost
Это набор опций из профиля «slow comprehensive scan» в Zenmap. Выполняется довольно долго, но и дает в итоге более детальную информацию, которую можно узнать о целевой системе. Справочное руководство на русском языке, если решили углубиться, а так же советую перевод статьи Beginner’s Guide to Nmap.
Интересный момент, Nmap можно увидеть в фильмах «Матрица: Перезагрузка», «Крепкий орешек 4», «Ультиматум Борна», «Хоттабыч» и других.
IP-Tools
IP-Tools — эдакий набор из разных сетевых утилит, поставляется с GUI, «посвящена» windows юзерам.
Сканер портов, общих ресурсов (расшаренные принтеры/папки), WhoIs/Finger/Lookup, telnet клиент и многое другое. Просто удобный, быстрый, функциональный инструмент.
Нет особого смысла рассматривать остальные продукты, так как очень много утилит в данной области и все они имеют схожий принцип работы и функционал. Все же самым часто используемым остается nmap.
Сканеры брешей в веб-скриптах
Пытаются найти популярные уязвимости (SQL inj, XSS, LFI/RFI и т.д.) или ошибки (не удаленные временные файлы, индексация директорий и т.п.)
Acunetix Web Vulnerability Scanner
Acunetix Web Vulnerability Scanner — по ссылке заметно что это xss сканер, но это не
Nikto
Nikto это Open Source (GPL) веб-сканер. Избавляет от рутинной ручной работы. Ищет на целевом сайте неудаленные скрипты (какие-нибудь test.php, index_.php и т.п.), инструменты администрирования бд (/phpmyadmin/, /pma и подобные) и т.д., то есть проверяет ресурс на самые частые ошибки, возникшие обычно из-за человеческого фактора.
Плюс, если находит какой-нибудь популярный скрипт, то проверяет его на вышедшие эксплоиты (которые есть в базе).
Сообщает о доступных «нежелательных» методах, типа PUT и TRACE
Ну и так далее. Очень удобно, если ты работаешь аудитором и каждый день проводишь анализ сайтов.
Из минусов хотел бы отметить высокий процент ложных срабатываний. К примеру если ваш сайт вместо 404 ошибки (когда она должна возникнуть) отдает все время главную, то сканер скажет, что на вашем сайте все скрипты и все уязвимости из его базы. На практике такое не так часто встречается, но как факт, многое зависит от структуры вашего сайта.
./nikto.pl -host localhost
Если нужно быть авторизованным на сайте, можно выставить cookie в файле nikto.conf, переменная STATIC-COOKIE.
Wikto
Wikto — Nikto под Windows, но с некоторыми дополнениями, как «нечеткой» логикой при проверке кода на ошибки, использование GHDB, получение ссылок и папок ресурса, реал-таймовым мониторингом HTTP запросов/ответов. Wikto написан на C# и требует .NET framework.
skipfish
skipfish — сканер веб-уязвимостей от Michal Zalewski (известного под ником lcamtuf). Написан на С, кроссплатформинен (для Win нужен Cygwin). Рекурсивно (и очень долго, порядка 20~40 часов, хотя последний раз у меня работал 96 часов) обходит весь сайт и находит всевозможные бреши в безопасности. Так же генерирует очень много трафика (по несколько гб входящего/исходящего). Но все средства хороши, тем более, если есть время и ресурсы.
Типичное использование:
./skipfish -o /home/reports www.example.com
В папке «reports» будет отчет в html, пример.
w3af
w3af — Web Application Attack and Audit Framework, open-source сканер веб-уязвимостей. Имеет GUI, но можно работать из под консоли. Точнее, это фреймворк, с кучей плагинов.
Рассказывать про его преимущества можно долго, лучше испробовать его :]
Типичная работа с ним сводится к выбору профиля, указания цели и, собственно, запуска.
Mantra Security Framework
Mantra is a dream that came true. Коллекция свободных и открытых инструментов по ИБ, встраиваемых в веб-браузер.
Очень полезны при тестировании веб-приложений на всех этапах.
Использование сводится к установке и запуску браузера.
На самом деле очень много утилит в данной категории и довольно сложно выделить из них конкретный список. Чаще всего каждый пентестер сам определяет набор нужных ему инструментов.
Эксплойтинг
Для автоматизированного и более удобного использования уязвимостей в программном обеспечении и скриптах пишут эксплойты, которым нужно только передать параметры, чтобы использовать брешь в безопасности. А есть продукты, которые избавляют от ручного поиска эксплоитов, да и еще и применяют их «на лету». Об этой категории сейчас и пойдет речь.
Metasploit Framework
The Metasploit® Framework — эдакий монстр в нашем деле. Он столько умеет, что инструкция выйдет на несколько статей. Мы рассмотрим автоматический эксплоитнг (nmap + metasploit). Суть такова, Nmap проанализирует нужный нам порт, установит сервис, а metasploit попробует применить к нему эксплоиты, исходя из класса сервиса (ftp, ssh и т.п.). Вместо текстовой инструкции я вставлю видео, довольно популярное на тему autopwn
А можно просто автоматизировать работу нужного нам эксплойта. К примеру:
msf > use auxiliary/admin/cisco/vpn_3000_ftp_bypass
msf auxiliary(vpn_3000_ftp_bypass) > set RHOST [TARGET IP]
msf auxiliary(vpn_3000_ftp_bypass) > run
На самом деле возможности данного framework очень обширны, поэтому, если решили углубиться, переходим по ссылке
Armitage
Armitage —
Скринкаст:
Tenable Nessus®
Tenable Nessus® vulnerability scanner — очень много чего умеет, но нам от него нужна одна из возможностей — определение, для каких сервисов есть эксплойты. Бесплатная версия продукта «home only»
Использование:
- Скачали (под свою систему), установили, зарегистрировали (ключик приходит на почту).
- Запустили сервер, добавили юзера в Nessus Server Manager (кнопка Manage users)
- Заходим по адресу
https://localhost:8834/
и получаем флэш-клиент в браузере - Scans -> Add -> заполняем поля (выбрав подходящий нам профиль сканирования) и жмем Scan
Для проверки практической уязвимости сервисов к эксплоитам можно использовать выше описанный Metasploit Framework или попробовать найти эксплоит (к примеру на Explot-db, packet storm, explot search и др.) и использовать его вручную против своей системы
ИМХО: слишком громоздкий. Привел его как одного из лидеров в данном направлении софтверной индустрии.
Автоматизация инъекций
Поиск инъекций производят многие из web app sec сканеров, но они все же просто общие сканеры. А есть утилиты, которые конкретно занимаются поиском и эксплуатацией инъекций. О них сейчас и пойдет речь.
sqlmap
sqlmap — open-source утилита для поиска и эксплуатации SQL инъекций. Поддерживает такие сервера БД, как: MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, SQLite, Firebird, Sybase, SAP MaxDB.
Типичное использование сводится к строчке:
python sqlmap.py -u "http://example.com/index.php?action=news&id=1"
Хватает мануалов, в том числе и на русском языке. Софтина очень облегчает работу пентестера при работе над данным направлением.
Добавлю официальную видео демонстрацию:
bsqlbf-v2
bsqlbf-v2 — скрипт на perl, брутфорсер «слепых» Sql инъекций. Работает как и с integer значениями в url, так и со строковыми (string).
Поддерживает БД:
- MS-SQL
- MySQL
- PostgreSQL
- Oracle
./bsqlbf-v2-3.pl -url www.somehost.com/blah.php?u=5 -blind u -sql "select table_name from imformation_schema.tables limit 1 offset 0" -database 1 -type 1
-url www.somehost.com/blah.php?u=5 — Ссылка с параметрами
-blind u — параметр для инъекции (по умолчанию забирается последний из адресной строки)
-sql «select table_name from imformation_schema.tables limit 1 offset 0» — наш произвольный запрос в базу
-database 1 — сервер БД: MSSQL
-type 1 — тип атаки, «слепая» инъекция, основанная на True и Error (к примеру синтаксические ошибки) ответах
Дебаггеры
Эти инструменты в основном используют разработчики, при проблемах с результатами выполнения своего кода. Но это направление полезно и при пентестинге, когда можно подменять нужные нам данные «на лету», анализировать, что приходит в ответ на наши входные параметры (к примеру при фаззинге) и т.д.
Burp Suite
Burp Suite — набор утилит, которые помогают при тестах на проникновение. В Сети лежит хороший обзор на русском языке от Raz0r (правда за 2008 год).
В бесплатную версию входит:
- Burp Proxy — локальный прокси, позволяет изменять уже сформированные запросы от браузера
- Burp Spider — паук, ищет существующие файлы и директории
- Burp Repeater — ручная отправка HTTP-запросов
- Burp Sequencer — анализ случайных значений в формах
- Burp Decoder — стандартный кодер-декодер (html, base64, hex и т.п.), коих тысячи, которые можно быстро написать на каком-нибудь языке
- Burp Comparer — компонент сопоставления строк
Fiddler
Fiddler — Fiddler это отладочный прокси, логирующий весь HTTP(S) трафик. Позволяет исследовать этот траффик, устанавливать breakpoint’ы и «играться» с входящими или исходящими данными.
Есть еще и Firesheep, монстр Wireshark и другие, выбор за пользователем.
Заключение
Естественно, каждый пентестер имеет свой арсенал и свой набор утилит, так как их просто множество. Я постарался привести одни из наиболее удобных и популярных. Но чтобы любой желающий мог ознакомится и с другими утилитами в этом направлении, я приведу ссылки ниже.
Различные топы/списки сканеров и утилит
Дистрибутивы Linux, в состав которых уже входит куча разных утилит для пентестинга
upd: Документация по BurpSuite на русском от команды «Hack4Sec» (добавил AntonKuzmin)
P.S. Нельзя умолчать про XSpider. Не участвует в обзоре, хотя он условно-бесплатен (узнал, когда отправил статью на СекЛаб, собственно из-за этого (не знания, да и неимения последней версии 7.8) и не включил его в статью). И по идее планировался его обзор (у меня заготовлены для него непростые тесты), но не знаю, увидит ли его мир.
P.P.S. Некоторый материал из статьи будет использован по прямому назначению в грядущем докладе на CodeFest 2012 в секции QA, в котором будут неупомянутые здесь инструменты (бесплатные, ессно), а так же рассказан алгоритм, по какому порядку что использовать, какой результат ожидать, какие конфигурации использовать и всякие хинты и трюки при работе (размышляю над докладом почти каждый день, постараюсь рассказать от себя все лучшее по теме топика)
Кстати, по данной статье было занятие на Open InfoSec Days (тэг на Хабре, сайт), можно грабить корованы глянуть материалы.
habr.com
Striker — сканер на уязвимости | Информация о сайте
Striker – сканер на уязвимости | Информация о сайте
Striker – сканер на уязвимости, который даёт информацию о каждом сервисе, сайте. Его можно использовать для нахождения уязвимостей собственного сайта, так как он даст полную информацию о DNS, CMS, проверит сайт на уязвимости и используемые IP-адреса.
Данный скрипт можно запускать на любой ОС, он написан на Python и по-этому нужно иметь сканер установленный Python 3 версии на ПК.
Striker – сканер на уязвимости | Установка и функционал скрипта
Установка Striker осуществляется одной командой. Вместе с Python3 нужно установить pip – это пакетный менеджер.
git clone https://bit.ly/2K5a6j4 cd Striker pip install -r requirements.txt python striker.py
Функционал Striker – сканер на уязвимости:
- Проверка и обход Cloudflare
- Восстановить сервер и использовать заголовки
- Отпечаток операционной системы веб-сервера
- Обнаружение CMS (поддерживаются 197 + CMS)
- Запустите WPScan, если цель использует WordPress
- Получить файл robots.txt
- Поиск Whois
- Проверьте, является ли цель honeypot
- Сканирование портов с захватом баннеров
- Сбрасывает все виды записей DNS
- Создание карты для визуализации поверхности атаки
- Собирайте письма, связанные с целью
- Поиск веб-сайтов, размещенных на одном и том же веб-сервере
- Поиск хостов с помощью Google
- Обход веб-сайта для URL-адресов, имеющих параметры
- SQLi-сканирование с использованием онлайн-реализации
- SQLMap (занимает <3 мин.)
- Основное сканирование XSS
Рекомендуется использовать Kali Linux, так как он уже имеет все предустановленные зависимости, которые требует Striker. Все уязвимости устанавливаются из файла requirements.txt.
Данный скрипт может обойти очень популярную DDOS защиту, которую предоставляет Cloudflare. Очень интересная особенность, которая выделяет Striker – сканер на уязвимости от других сканеров, коих в Интернете великое множество.
Подписывайтесь на обновления сайта, а также наш Telegram.
www.make-info.com
13 cканеров Web-безопасности с открытым исходным кодом для поиска уязвимостей
Интересный отчет Symantec показывает, что 76% отсканированных веб-сайтов имели вредоносное ПО.
и если вы используете WordPress, то в другом отчете SUCURI показано, что более 70% отсканированных веб-сайтов были заражены одной или несколькими уязвимостями.
Как владелец веб-приложения, как вы гарантируете, что ваш сайт защищен от онлайн-угроз? Или от утечки конфиденциальной информации?
Если вы используете облачное решение для обеспечения безопасности, то, скорее всего, регулярное сканирование уязвимостей является частью плана защиты.
Однако, если нет, вам нужно выполнить рутинное сканирование и предпринять необходимые действия для смягчения рисков.
Существует два типа сканера.
1.Коммерческий — дает вам возможность автоматизировать сканирование для обеспечения непрерывной безопасности, отчетности, оповещений, подробных инструкций по смягчению рисков и т. д. Некоторые из известных имен в этой отрасли:
Acunetix
Detectify
Qualys
Open Source / Бесплатные — вы можете загружать и выполнять проверку безопасности по требованию.
Не все из них смогут охватить широкий спектр уязвимостей, таких как коммерческий.
Давайте посмотрим на следующие сканеры уязвимостей с открытым исходным кодом.
1. Arachni
Arachni — высокопроизводительный сканер безопасности, построенный на основе Ruby для современных веб-приложений.
Он доступен в двоичном формате для Mac, Windows и Linux.
Это не только решение для базового статического или веб-сайта с CMS, но также Arachni способен выполнять интеграцию со следующиим платформами.
Он выполняет активные и пассивные проверки.
Windows, Solaris, Linux, BSD, Unix
Nginx, Apache, Tomcat, IIS, Jetty
Java, Ruby, Python, ASP, PHP
Django, Rails, CherryPy, CakePHP, ASP.NET MVC, Symfony
Некоторые из обнаруженных уязвимостей:
NoSQL / Blind / SQL / Code / LDAP / Command / XPath injection
Подделка запросов межсайтовый скриптинг
Обход пути
Включение локального / удаленного файла
Разделение ответа
Межсайтовый скриптинг
Неопределенные перенаправления DOM
Раскрытие исходного кода
2. XssPy
Сканер уязвимостей XSS (межсайтовый скриптинг) на основе python используется многими организациями, включая Microsoft, Stanford, Motorola, Informatica и т.д.
XssPy by Faizan Ahmad — умный инструмент. Вместо того, чтобы просто проверять домашнюю страницу или страницу, она проверяет всю ссылку на веб-сайтах.
XssPy также проверяет субдомен.
3. w3af
w3af, проект с открытым исходным кодом, начатый еще в конце 2006 года, основан на Python и доступен для Linux и ОС Windows. w3af способен обнаруживать более 200 уязвимостей, включая OWASP top 10.
Он поддерживает различные методы ведения журнала для отчетности. Пример:
Пример:
CSV
HTML
Консоль
Текст
XML
Эл. адрес
Он построен на архитектуре плагина, и вы можете проверить все доступные плагины.
4. Nikto
Проект с открытым исходным кодом, спонсируемый Netsparker, направлен на поиск неправильной конфигурации веб-сервера, плагинов и уязвимостей в Интернете.
Nikto выполняет всесторонний тест на более чем 6500 предметов риска.
Он поддерживает HTTP-прокси, SSL, с аутентификацией NTLM и т. д.
И может определять максимальное время выполнения для каждого целевого сканирования.
Nikto также доступен в Kali Linux.
5. Wfuzz
Wfuzz (Web Fuzzer) — это инструмент оценки приложений для тестирования на проникновение.
Вы можете заглушить данные в HTTP-запросе для любого поля, чтобы использовать веб-приложение и проверять его.
Wfuzz требует наличия Python на компьютере, на котором вы хотите запустить сканирование.
6. OWASP ZAP
ZAP (Zet Attack Proxy) — один из известных инструментов тестирования на проникновение, который активно обновляется сотнями добровольцев во всем мире.
Это кросс-платформенный Java-инструмент, который может работать даже на Raspberry Pi.
ZIP находится между браузером и веб-приложением для перехвата и проверки сообщений.
Некоторым из следующих функций ZAP, которые следует упомянуть.
Fuzzer
Автоматический и пассивный сканер
Поддержка нескольких языков сценариев
Принудительный просмотр
7. Wapiti
Wapiti просматривает веб-страницы заданной цели и ищет сценарии и форму для ввода данных, чтобы узнать, является ли оно уязвимым.
Это не проверка безопасности исходного кода, а скорее проверка блэк боксов.
Он поддерживает методы GET и POST HTTP, прокси HTTP и HTTPS, несколько аутентификаций и т. д.
8. Vega
Vega разработан Subgraph, многоплатформенное программное обеспечение, написанное на Java, для поиска XSS, SQLi, RFI и многих других уязвимостей.
Vega получил удобный графический интерфейс и способен выполнять автоматическое сканирование, войдя в приложение с заданными учетными данными.
Если вы разработчик, вы можете использовать vega API для создания новых модулей атаки.
9. SQLmap
Как вы можете догадаться по имени, с помощью sqlmap вы можете выполнить тестирование проникновения в базу данных, чтобы найти недостатки.
Он работает с Python 2.6 или 2.7 на любой ОС. Если вы хотите найти SQL-инъекцию и использовать базу данных, то sqlmap будет полезен как никогда.
10. Grabber
Это небольшой инструмент, основанный на Python, делает несколько вещей достаточно хорошо.
Некоторые из функций Grabber:
Анализатор исходного кода JavaScript
Межсайтовый скриптинг, SQL-инъекция, слепое внедрение SQL
Тестирование PHP-приложений с использованием PHP-SAT
11. Golismero
Фреймворк для управления и запуска некоторых популярных инструментов безопасности, таких как Wfuzz, DNS recon, sqlmap, OpenVas, анализатор роботов и т. д.).
Golismero может консолидировать отзывы от других инструментов и показать один результат.
12. OWASP Xenotix XSS
Xenotix XSS OWASP — это расширенная инфраструктура для поиска и использования межсайтовых скриптов.
Он имеет встроенные три интеллектуальных фьюзера для быстрого сканирования и улучшения результатов.
13. Metascan
Сканер по поиску уязвимостей веб-приложений от отечественных разработчиков
Подробнее в статье:
itsecforu.ru
Лучшие инструменты пен-тестера: сканеры безопасности
Содержание статьи
У каждого из команды ][ — свои предпочтения по части софта и утилит для
пентеста. Посовещавшись, выяснили: выбор так разнится, что можно составить
настоящий джентльменский набор из проверенных программ. На том и решили. Чтобы
не делать сборную солянку, весь список мы разбили на темы. Сегодня мы коснемся
святая святых любого пентестера — сканера уязвимостей.
Nessus
Сайт:
www.nessus.org/plugins/index.php
Распространение: Free/Shareware
Платформа: Win/*nix/Mac
Если кто-то и не пробовал Nessus, то, по меньшей мере, слышал о нем.
Один из самых известных сканеров безопасности имеет богатую историю: будучи
когда-то открытым проектом, программа перестала распространяться в открытых
исходниках. К счастью, осталась бесплатная версия, которая изначально была
сильно обделена в доступе к обновлениям для базы уязвимостей и новым плагинам,
но позже разработчики сжалились и лишь ограничили ее в периодичности апдейтов.
Плагины — ключевая особенность архитектуры приложения: любой тест на
проникновение не зашивается наглухо внутрь программы, а оформляется в виде
подключаемого плагина. Аддоны распределяются на 42 различных типа: чтобы
провести пентест, можно активировать как отдельные плагины, так и все плагины
определенного типа — например, для выполнения всех локальных проверок на
Ubuntu-системе. Причем никто не ограничивает тебя в написании собственных тестов
на проникновения: для этого в Nessus был реализован специальный скриптовый язык
— NASL (Nessus Attack Scripting Language), который позже
позаимствовали и другие утилиты.
Еще большей гибкости разработчики добились, отделив серверную часть сканера,
выполняющего все действия, от клиентской программы, представляющей собой не
более чем графический интерфейс. В последней 4.2 версии демон на 8834 порту
открывает веб-сервер; с ним можно управлять сканером через удобный интерфейс на
Flash’е, имея один лишь браузер. После установки сканера серверная запускается
автоматически, как только укажешь ключ для активации: ты бесплатно можешь
запросить его на домашнем сайте Nessus. Правда, для входа, и локального,
и удаленного, понадобится предварительно создать пользователя: в винде это
делается в два клика мыши через GUI-админку Nesus Server Manager, с ее же
помощью можно запускать и останавливать сервер.
Любой тест на проникновение начинается с создания так называемых Policies —
правил, которых сканер будет придерживаться во время сканирования. Здесь-то и
выбираются виды сканирования портов (TCP Scan, UDP Scan, Syn Scan и т.д.),
количество одновременных подключений, а также типичные чисто для Nessus
опции, как, например, Safe Checks. Последняя включает безопасное сканирование,
деактивируя плагины, которые могут нанести вред сканируемой системе. Важный шаг
в создании правил — это подключение нужных плагинов: можно активизировать целые
группы, скажем, Default Unix Accounts, DNS, CISCO, Slackware Local Security
Checks, Windows и т.д. Выбор возможных атак и проверок — огромный! Отличительная
черта Nessus — умные плагины. Сканер никогда не будет сканировать сервис только
по номеру его порта. Переместив веб-сервер со стандартного 80-го порта, скажем,
на 1234-й, обмануть Nessus не удастся — он это определит. Если на FTP-сервере
отключен анонимный пользователь, а часть плагинов используют его для проверки,
то сканер не будет их запускать, заведомо зная, что толку от них не будет. Если
плагин эксплуатирует уязвимость в Postfix’е, Nessus не будет пытать
счастья, пробуя тесты против sendmail’а — и т.д. Понятно, что для выполнения
проверок на локальной системе, необходимо предоставить сканеру Credentials
(логины и пароли для доступа) — это завершающая часть настройки правил.
OpenVAS
Сайт: www.openvas.org
Распространение: Freeware
Платформа: Win/*nix/Mac
Несмотря на то, что исходные коды Nessus стали закрытыми, движок Nessus 2 и
часть плагинов по-прежнему распространяются по лицензии GPL в виде проекта
OpenVAS (OpenSource Vulnerability Assessment Scanner). Сейчас проект
развивается совершенно независимо от своего старшего брата и делает немалые
успехи: последняя стабильная версия вышла как раз перед отправкой номера в
печать. Неудивительно, что OpenVAS так же использует клиент-серверную
архитектуру, где все операции сканирования выполняются серверной частью — она
работает только под никсами. Для запуска потребуется закачать пакеты
openvas-scanner, а также набор библиотек openvas-libraries. В качестве
клиентской части для OpenVAS 3.0 доступна только никсовая GUI-программа,
но, думаю, что, как у предыдущих версий, скоро появится порт для винды. В любом
случае, проще всего воспользоваться OpenVAS при помощи небезызвестного
LiveCD Bactrack (4-ая версия), в котором он уже установлен. Все основные
операции для начала работы вынесены в пункты меню: OpenVAS Make Cert (создание
SSL-сертификата для доступа к серверу), Add User (создание юзера для доступа к
серверу), NVT Sync (обновление плагинов и баз уязвимостей), и, в конце концов,
OpenVAS Server (запуск сервера через пункт меню). Далее остается только
запустить клиентскую часть и выполнить подключение к серверу для начала пентеста.
Открытость и расширяемость OpenVAS позволила сильно прокачать
программу. Помимо непосредственно плагинов для анализа защищенности, в нее
интегрировано немало известных утилит: Nikto для поиска уязвимых CGI-сценариев,
nmap для сканирования портов и моря других вещей, ike-scan для обнаружения IPSEC
VPN узлов, amap для идентификации сервисов на портах, используя fingerprinting,
ovaldi для поддержки OVAL — стандартного языка для описания уязвимостей — и
множество других.
XSpider 7
Сайт:
www.ptsecurity.ru/xs7download.asp
Распространение: Shareware
Платформа: Win
Первые строчки кода XSpider были написаны 2 декабря 1998 года, а за
прошедшие с тех пор 12 лет этот сканер стал известен каждому российскому
специалисту по информационной безопасности. Вообще, Positive Technologies — одна
из немногих компаний на отечественном рынке информационной безопасности, чьи
сотрудники умеют реально что-то ломать, а не только красиво продавать услуги.
Продукт был написан не программистами, а специалистами по ИБ, знающими, как и
что надо проверять. Что в итоге? Имеем очень качественный продукт с одним лишь,
но весьма серьезным для нас минусом: XSpider платный! Задаром
разработчики предлагают урезанную демо-версию, в которой не реализован целый ряд
проверок, в том числе эвристических, а также онлайн-обновления для базы
уязвимостей. Более того, силы разработчиков сейчас всецело направлены на другой
продукт — систему мониторинга информационной безопасности MaxPatrol, для
которой, увы, нет даже и демки.
Но даже при всех ограничениях XSpider является одним из самых удобных
и эффективных инструментов анализа безопасности сети и конкретных узлов.
Настройки сканирования, как и в случае Nessus, оформляются в виде специального
набора правил, только в данном случае они называются не Policies, а профилями.
Настраиваются как общие параметры для сетевого анализа, так и поведение сканера
для конкретных протоколов: SSH, LDAP, HTTP. Тип исследуемого демона на каждом
порту определяется не по общепринятой классификации, а с использованием
эвристических алгоритмов fingerprinting’а — опция включается одним кликом в
профиле сканирования. Отдельного слова заслуживает обработка RPC-сервисов (Windows
и *nix) с полной идентификацией, благодаря которой удается определить уязвимости
различных сервисов и детальную конфигурацию компьютера в целом. Проверка
слабости парольной защиты реализует оптимизированный подбор паролей практически
во всех сервисах, требующих аутентификации, помогая выявить слабые пароли.
Результат сканирования оформляется в виде удобного отчета, причем для каждой
найденной потенциальной уязвимости выдается крохотное описание и внешний линк,
куда можно обратиться за подробностями.
GFI LANguard
Сайт:
www.gfi.com/lannetscan
Распространение: Freeware/Shareware
Платформа: Win
За что я особенно люблю этот продукт, так это за набор предустановленных
профилей для сканирования. Помимо полного сканирования удаленной системы,
подразумевающего все виды доступных проверок (кстати, есть специальная версия
для медленного коннекта — например, для тормозного VPN-соединения через Штаты),
есть масса отдельных групп проверок. Например, можно быстро проверить десятки
хостов на наличие уязвимостей из Top20, составленной известной
security-корпорацией SANS. Тут же можно активировать и поиск машин с
неустановленными патчами или сервис-паками, выбрать профиль для пентеста
веб-приложений и т.д. Причем, кроме профилей, непосредственно направленных на
поиск уязвимостей, есть и ряд средств для аудита: поиск шар, умный сканер
портов, в том числе для поиска открытых малварью соединений, определение
конфигурации компьютера и т.д. Получается, в одном продукте уживаются масса
полезных утилит.
Постоянно обновляемая база уязвимостей GFI LANguard включает более чем
15000 записей, позволяя сканировать самые разные системы (Windows, Mac OS, Linux),
в том числе, установленные на виртуальных машинах. Сканер автоматически
подтягивает обновления для базы, которые в свою очередь формируются по отчетам
BugTraq, SANS и других компаний. Реализовать свои собственные проверки, как
водится, можешь и ты сам. Для этого тебе предоставляется специальный скриптовый
язык, совместимый с Python и VBScript (какова связка!), а для полного удобства
еще и удобный редактор с дебагером — получается настоящая IDE. Еще одна
уникальная фишка LANguard’а — возможность определения того, что машина запущена
в виртуальном окружении (пока поддерживается VMware и Virtual PC) — это одна из
уникальных фишек сканера.
Retina Network Security Scanner
Сайт: www.eeye.com
Распространение: Shareware
Платформа: Win
Главное разочарование этого легендарного сканера постигло меня сразу после
запуска. Установщик последней версии, выругавшись, сказал, что запустить
Retina на Windows 7 или Windows Server 2008 R2 на текущий момент нельзя. Не
очень-то вежливо, пришлось открывать виртуальную машину, но я-то знал: оно того
стоит. Retina — один из лучших сканеров, который определяет и анализирует
хосты локальной сети. Физические и виртуальные серверы, рабочие станции и
ноутбуки, маршрутизаторы и аппаратные брандмауэры — Retina представит
полный список подключенных к сети устройств, выведет информацию о беспроводных
сетях. Каждый из них она всячески будет пытать в поиске хоть какого-то намека на
уязвимость, и делает это очень шустро. На сканирование локальной сети класса С
уходит примерно 15 минут. Продукт Retina определяет уязвимости ОС,
приложений, потенциально опасные настройки и параметры. В результате можно
получить обзорный план сети с отображением потенциально уязвимых мест. База с
уязвимостями, по заверениям разработчиков, обновляется ежечасно, а информация об
уязвимости попадает в базу не позднее 48 часов после появления о ней первого
багтрака. Впрочем, сам факт, что это продукт фабрики eEye, уже является своего
рода гарантией качества.
Microsoft Baseline Security Analyzer
Сайт: www.microsoft.com
Распространение: Freeeware
Платформа: Win
Что это такое? Анализатор безопасности от компании Microsoft, который
проверяет компьютеры в сети на соответствие требованиям Microsoft, которых
набралось немалое количество. Самый главный критерий — это, конечно же, наличие
на системе всех установленных обновлений. Не надо напоминать, что сделал
Conficker, используя брешь MS08-67, патч для которой вышел за 2 месяца до
эпидемии. Помимо отсутствующих в системе патчей, MBSA обнаруживает и некоторые
распространенные бреши в конфигурации. Перед началом сканирования программа
скачивает обновления для своих баз, поэтому можно быть уверенным: Microsoft
Baseline Security Analyzer знает все о вышедших апдейтах для винды. По
результатам сканирования (домена или диапазона IP-адресов) выдается сводный
отчет. И без того наглядный репорт можно перенести на условную схему сети,
отобразив результаты сканирования в Visio. Для этого на сайте программы доступен
специальный соединитель, который отобразит символами различные узлы локалки,
заполнит параметры объектов, добавив туда информацию о сканировании, и в
удобнейшей форме позволит посмотреть, какие проблемы есть на том или ином компе.
SAINT
Сайт:
http://www.saintcorporation.com
Распространение: Shareware
Платформа: -nix
Всего лишь два IP-адреса, на которые ты сможешь натравить SAINT в
течение триального периода, жестко зашиваются в ключ, и он отправляется тебе на
е-мейл. Ни шагу влево, ни шагу вправо — но этот продукт обязательно стоит
попробовать, даже с такими драконовскими ограничениями. Управление сканером
реализуется через веб-интерфейс, что неудивительно — решения SAINT
продаются, в том числе, в виде серверов для установки в стойку (SAINTbox), а тут
нужно следовать моде. С помощью аскетичного веб-интерфейса очень просто можно
запустить тестирование и использовать многолетние наработки для поиска
потенциально уязвимых мест в системе. Скажу больше: один из модулей SAINTexploit
позволяет не только обнаружить, но еще и эксплуатировать уязвимость! Возьмем
пресловутую ошибку MS08-67. Если сканер обнаруживает неприкрытую дырку и знает,
как ее эксплуатировать, то прямо рядом с описанием уязвимости дает ссылку с
близким сердцу словом EXPLOIT. В один клик ты получаешь описание сплоита и,
более того, — кнопку Run Now для его запуска. Далее, в зависимости от сплоита,
указываются различные параметры, например, точная версия ОС на удаленном хосте,
тип шелла и порт, на котором он будет запущен. Если эксплуатирование цели удачно
завершено, то во вкладке Connections модуля SAINTexploit появляется IP-адрес
жертвы и выбор действий, которые стали доступными в результате запуска
эксплоита: работа с файлами на удаленной системе, командная строка и т.д!
Представляешь: сканер, который сам ломает! Недаром слоган продукта: «Examine.
Expose. Exploit». Система проверок самая разнообразная, причем в последней 7-й
версии появился модуль для пентеста веб-приложений и дополнительные возможности
для анализа баз данных. Обозначив цель через веб-интерфейс, можно наблюдать за
действиями сканера со всеми подробностями, точно зная, что и как сканер делает в
текущий момент.
X-Scan
Сайт: http://www.xfocus.org
Распространение: Freeware
Платформа: Win
Последняя версия этого сканера вышла еще в 2007 году, что вовсе не мешает
использовать его сейчас благодаря системе подключаемых плагинов и скриптов,
написанных на языке NASL, таком же, который используется в Nessus/OpenVAS. Найти
и отредактировать имеющиеся скрипты несложно — все они находятся в папке scripts.
Для запуска сканера необходимо обозначить параметры сканирования через меню
Config -> Scan Parameter. В качестве объекта сканирования может выступать как
конкретный IP, так и диапазон адресов, но в последнем случае надо быть морально
готовым к тому, что тестирование будет длительным. Сканер, увы, не самый
быстрый. На скорость пропорционально влияет и количество подключенных модулей:
дополнения, проверяющие стойкость паролей для SSH/VNC/FTP, одни из самых
прожорливых. Внешне X-Scan больше напоминает самоделку, созданную кем-то
для собственных нужд и пущенную в паблик на свободное плавание. Возможно, он бы
и не получил такой популярности, если не поддержка скриптов Nessus, которые
активируются с помощью модуля Nessus-Attack-Scripts. С другой стороны, стоит
посмотреть отчет о сканировании, и все сомнения в полезности сканера отходят на
второй план. Он не будет оформлен по одному из официальных стандартов ИБ, но
точно расскажет много нового о сети.
Rapid 7 NeXpose
Сайт: www.rapid7.com
Распространение: Freeeware-версия
Платформа: nix/Win
Rapid 7 — одна из самых быстро растущих компаний, специализирующихся
на информационной безопасности в мире. Именно она недавно приобрела проект
Metasploit Framework, и именно ее рук дело — проект NeXpose. Стоимость
«входа» для использования коммерческой версии составляет без малого $3000, но
для энтузиастов есть Community-версия с чуть-чуть урезанными возможностями.
Такая бесплатная версия легко интегрируется с Metasploit’ом (нужна версия не
ниже 3.3.1). Схема работы достаточно хитрая: сначала запускается NeXpose, далее
Metasploit Console (msfconsole), после чего можно запускать процесс сканирования
и настраивать его с помощью ряда команд (nexpose_connect, nexpose_scan,
nexpose_discover, nexpose_dos и другие). Прикольно, что можно совмещать
функциональность NeXpose и других модулей Metasploit’а. Самый простой, но
действенный пример: искать компьютеры с некой уязвимостью и тут же
эксплуатировать ее с помощью соответствующего модуля Metasploit — получаем
авторутинг на новом качественном уровне.
WARNING
Пентест серверов и ресурсов владельца ресурсов без его воли — деяние уголовно
наказуемое. В случае использования полученных знаний в незаконных целях автор и
редакция ответственности не несут.
xakep.ru
Лучшие инструменты пен-тестера: исследование веб-приложений
Содержание статьи
У каждого из команды ][ — свои предпочтения по части софта и утилит для
пентеста. Посовещавшись, выяснилось, что выбор так разнится, что можно
составить настоящий джентльменский набор из проверенных программ. На том и
решили. Чтобы не делать сборную солянку, весь список мы разбили на темы. Поиск
уязвимостей — это определенно одна из интереснейших тем.
Подставив кавычку в нужном месте — и нашел возможность для инъекции?
Проснись! Давно прошли времена, когда пионерские способы помогали найти ошибки
даже в серьезных проектах. Поиск уязвимых мест стал намного более изощренным,
как и техники для успешной эксплуатации уязвимостей. Если раньше худо-бедно
можно было все реализовать вручную, то теперь без вспомогательных инструментов
не обойтись. Последние не только выполнят муторную работу за тебя, но и
подскажут, как можно воспользоваться багой, а в некоторых случаях — даже
автоматизируют процесс эксплуатации. Итак, приступим?
Nikto
Сайт:
www.cirt.net/nikto2
Платформа: Windows, Unix
Назвав свой сканнер «никто» разработчики сильно слукавили. На деле — это
известный сканнер веб-уязвимостей, способный сканировать удаленные хосты и
проводить сложные тесты безопасности. В базе программы имеется информация об
более чем 3500 уязвимых сценариев. Информация об уязвимостях обновляется в
виде специальных баз, подключаемых к программе как плагины. Увы, последний
апдейт приложения был еще в далеком 2007 году, но базы с уязвимостями (http://www.cirt.net/nikto/UPDATES/2.03)
по-прежнему обновляются. Программа даже поддерживает автоматическое обновление
баз, но лучше б этот плюс компенсировался более частыми и серьезными апдейтами.
Прога написана на Perl’е, поэтому вся работа осуществляется из командной
строки. Помимо поиска уязвимых сценариев, Nikto попробуем определить
версию веб-демона, отыскать файлы с открытыми паролями, а также выполнить
десяток других проверок. Полноценная поддержка прокси (с возможностью
авторизации), а также SSL-соединения при правильном подходе гарантируют твою
безопасность. Правда, о незаметном сканированию придется забыть. С самого начала
разработчики сделали упор на скорость скана, не заморачиваясь по поводу
stealth-методов. С другой стороны, Nikto поддерживает ряд методик для
обмана IDS, реализованных в библиотеке LibWhisker, но, увы, и они по большей
части устарели.
IBM Rationa Appscan
Сайт:
www-01.ibm.com/software/awdtools/appscan/
Платформа: Windows
Маститый коммерческий продукт который изначально разрабатывался авторитетной
компанией Watchfire, а потом был куплен IBM. Это уже не любительская поделка
вроде Nikto. Rational Appscan предназначен для аудита WEB-приложений и
содержит не один десяток эвристических методов для корректного изучения каждого
узла. Многие организации готовы выложить за него немалые деньги потому, что он
действительно здорово облегчает работу. Поиск уязвимостей осуществляется
автоматически, главное — правильно задать все параметры сканирования с помощью
специального мастера. На выходе ты получишь отчет о проделанной работе паука, с
помощью которой воссоздается, структура сайта, а также возможных уязвимостях.
Appscan конкретно указывает уязвимые сценарии, распределяя уязвимые места в
соответствии с категорией уязвимостей. SQL Injection, Cross-Site Cripting,
Posion Null Byte Files Retrieval, HTTP response splitting, parameter tampering,
hidden field manipulation, backdoors/debug options, buffer overflows — это все
лишь малая часть списка. Список возможных брешей впечатляет: если взять SQL
Injection, то в отчете ты легко найдешь разделы с возможными слепыми инъекциями,
инъекциями с помощью кукисов, инъекции на странице авторизации и т.д. Причем сам
сканнер покажет, какой именно параметр можно эксплуатировать. Одна из
немаловажных особенностей это сканирование сложных приложений, содержащих обилие
Java Script / AJAX — кода, Adobe Flash вставки. Специалистам по информационной
безопасности Appscan полезен еще и тем, что содержит 40 готовых отчетов о
соответствии требованиям, включая требования стандартов безопасности данных PCI,
ISO 17799, ISO 27001, Basel II, SB 1386 и PABP (Payment Application Best
Practices), что не может не радовать.
HP WebInspect
Сайт: www.hp.com
Платформа: Windows
Этот сканнер, который теперь принадлежит компании HP, также ранее
разрабатывался командой security-специалистов — SPI Dynamics. И это один из
самых удачный сканнеров безопасности. Почему? Ну, во-первых, весь процесс
сопровождается интерактивным отчётом, что позволит быстро войти в курс дела.
Во-вторых, разработчики позаботились о том, чтобы максимально заточить его для
выполнения тестов на проникновение. Объектом исследования могут быть
всевозможные скрипты, динамически обновляемые сервлеты и фреймворки.
WebInspect позволяет выявлять большинство существующих уязвимостей, которые
наиболее часто встречаются на сайтах. В то время как многие простецкие сканнеры
курят в сторонке, WebInspect отлично справляется с анализом сложных Web
2.0 сайтов, построенных на современных JS-фреймворках и повсеместным применением
Ajax. Также как и Appscan, продукт умеет декомпилировать SWF-файлы, т.е.
элементы сайта на Flash’е и анализировать ActionScript код. Причем помимо
непосредственно сканнера, в продукт входит дюжина вспомогательных утилит: для
создания дампа базы данных, используя SQL-инъекцию, фаззер для проверки
передаваемых значений, брутфорс форм, редактор и снифер HTTP запросов и т.д.
Acunetix Web Security Scanner
Сайт: www.acunetix.com
Платформа: Windows
Еще один коммерческий сканнер, который вместе с AppScan и WebInspect, входит
в тройку самых-самых. Продукт серьезно раскрученный, но ему ни за что ни удалось
бы добиться такой популярности, если бы не убойный функционал. Acunetix Web
Security Scanner представляет собой полностью автоматизированный сканнер
уязвимостей. Сначала программа исследует и формирует структуру сайта,
обрабатывая все найденные ссылки и собирая информация обо всех обнаруженных
файлах. Затем приступает к тестированию всех веб-приложения, моделируя ввод
данных с использованием фаззера, использованием подстановок различных параметров
и сниппетов, которые могут помочь задетектить брешь в защите. Среди доступных
для обнаружения уязвимостей все виды SQL injection, Cross site scripting, CRLF
injection и т.д. Важно, что сканнер производит анализ с умом, учитывает
специфику удаленной системы — но для этого для сканирования необходимо выбрать
правильный профиль.
Есть у Acunetix Web Security Scanner фишка, которая заслуживает
особенное внимание — это технология AcuSensor. Стандартные методы сканирования
основываются на анализе ответов, которые возвращает веб-приложение на различные
запросы. AcuSensor позволяет провести намного более глубокое тестирование при
условии, что у тебя на руках есть исходники приложения (форум, чат, CMS, онлайн
магазин — любой публично доступный скрипт). В этом случае можно комбинировать
стандартные механизмы сканирования с глубоким анализом кода, имея четкое
представление о ходе выполнения программы изнутри! Что в результате? В итоге ты
получаешь не просто информацию о возможной уязвимости, но и конкретный кусок
кода, где она найдена, включая номер строки, трейс стека и содержанием
SQL-запроса, который при этом отправляется серверу база данных. И более того —
ты получаешь возможность искать баги, которые при стандартном сканировании найти
практически невозможно. Это касается инъекций в INSERT запросах: отыскать и
эксплуатировать их крайне непросто из-за того, что они не возвращают результата.
На текущий момент технология AcuSensor доступна для PHP и .NET приложений. Супер
фича!
Burp Suite
Сайт:
portswigger.net/suite/
Платформа: Windows, Unix, Mac
По сути, это не одна утилита — а целый комплекс тулз для пентестера. Самая
главная часть программы является Burp Proxy, который устанавливается в качестве
локального веб-сервера и перехватывает весь HTTP/HTTPS трафик. Другие утилиты, а
именно Spider, Intruder, Scanner, Repeater, Sequencer, Decoder и Comparer
связаны как с этой самой прокси, так и между собой. Например, часть
перехваченных Burp Proxy параметров можно протестировать на предмет проверки со
стороны сервера. Для этого достаточно отправить его на растерзание Intruder’у.
Последний заслуживает особенное внимание, потому как именно с его помощью можно
отыскать и SQL-инъекции, и XSS уязвимости — и много чего еще. На вход утилите ты
передаешь объект проверки, определяешь параметры, которые будут изменяться (на
основе специально сформированных шаблонов) и выбираешь тип атаки. Большая часть
пакета предназначены не для автоматического взлома, а для помощи пентестеру.
Зато утилита Scanner, доступная в Pro-редакции, представляют собой полностью
автоматизированный сканнер, способный самостоятельно обнаруживать уязвимости в
веб-приложениях. Любопытным представляется режим «Live scanning», который
проверяет на вшивость те сайты, который ты в данный момент просматриваешь.
Paros Proxy
Сайт: www.parosproxy.org
Платформа: Windows, Unix, Mac
Для того чтобы найти уязвимость нужно, как минимум, иметь перед собой картину
того, что передается между сервером и клиентом по протоколу HTTP/HTPPS: запросы,
кукисы, поля форм. Вдвойне здорово, когда такой HTTP-снифер изначально рассчитан
на поиск уязвимостей. С Paros Proxy ты не просто можешь на лету изменить
сходящие HTTP/HTTPS запросы, логировать собственный траф, но и использовать
встроенные сканнеры, с помощью которых тут же проверять сценарии на наличие
уязвимостей SQL Injection и XSS. Сам Paros Proxy работает в виде прокси-сервера,
собирая всевозможную информацию во время твоего серфинга. Различные виды
сканирования осуществляются за счет плагинов, которые в принципе можно писать
саму. Увы, разработчики не развивают дальше проект, полностью переключившись на
свое коммерческое детище MileSCAN Web Security Auditor (www.milescan.com/hk/).
Wapiti 2.1.0
Сайт:
wapiti.sourceforge.net
Платформа: Windows, Unix, Mac
Консольная утилита для аудита веб-приложений. В основе — знакомый под другим
сканнерам принцип черного ящика (blackbox), когда анализируются не исходники
приложения, а ответы сервера на хитрые запросы с измененными параметрами. Для
этого прога сначала анализирует структуру сайта, ищет доступные сценарии,
анализирует параметры, а затем включает на всю катушку свой фаззер. Продолжая
смаковать до тех пор, пока все уязвимые скрипты не будут найдены. Сейчас в
арсенале методики для определения инъекций в базы данных (включая HP/JSP/ASP SQL
и XPath инъекции), XSS, LDAP инъекции, CRLF баги (HTTP Response Splitting),
ошибки в обработке файлы (локальный и удаленный include, fopen, readfile и
т.д.), возможность выполнения команд (eval(), system(), passtru()). В отличие от
Nikto, который использует базу дырявых сценариев (а я напомню, что обновляется
она не часто), Wapiti настроен на поиск неизвестных уязвимостей.
ProxyStrike
Сайт:
www.edge-security.com
Платформа: Windows, Unix
Активная веб-прокси для поиск уязвимостей в веб-сценариях, с которыми в
данный момент ты имеешь дело. Это особенно актуально для сложных приложений,
построенный на базе JS и Ajax: ведь никакой скрипт не может полностью
сымитировать работу пользователя и проследить за всеми этапами выполнения
приложения. На данный момент разработчиками реализованы модули для поиска SQL-инъекций, XSS и локальных инклудов. Сам процесс использования утилиты выглядит
очень просто. ProxyStrike работает в виде обычной прокси, которая висит
по умолчанию на 8008 порту, но помимо стандартных для прокси действий, она в
фоном режиме выполняет фаззинг параметров, который ты передаешь на сервер. В
результате твоя работы с веб-приложением ничем не выделяется, хотя на самом деле
в этот же самый момент происходят активные действия.
Архитектура приложения изначально серьезно расширяема, и ты можешь сам
реализовать нужный функционал, написав соответствующий плагин.
XSpider
Сайт: www.ptsecurity.ru
Платформа: Windows
Первые строчки кода сканера XSpider были написаны 2 декабря 1998 года,
— за прошедшие с тех пор 11 лет XSpider стал известен каждому российскому
специалисту по информационной безопасности. Тулза с самого начала
разрабатывалась как решение для анализа самых разных системы и обнаружения
широкого круг уязвимостей. И хотя это тема для отдельного обзора, нельзя не
отметить его модуль за анализ веб-приложений, благодаря которому программа и
попала в сегодняшний обзор. Автоматический сканнер быстро анализирует скрипты на
заданном HTTP-сервере и выдает о найденных уязвимостях, в том числе инъекций,
инъекций кода, запуска произвольных программ, получения файлов, межсайтовый
скриптинг (XSS), HTTP Response Splitting. Более того осуществляется поиск и
анализ директорий доступных для просмотра и записи, давая возможность находить
слабые места в конфигурации. А база сканнера, по заявлением разработчика,
ежедневно обновляется новыми уязвимостями и проверками.
sqlmap
Сайт:
sqlmap.sourceforge.net
Платформа: Windows, Unix, Mac
sqlmap — это уже более узкоспециализированная утилита, предназначенная
специально для автоматизации SQL инжекций. Написанная на Python’е тулза может
обнаружить на сайте и эксплуатировать любые SQL инжекции в веб-приложениях.
Причем поддерживаются самые разные методики, включая самые сложные слепые
инъекции. Если sqlmap обнаружил SQL-инъекцию, будь уверен — что-то да ты
накопаешь. Впрочем, ничего не стоит использовать ее в связке с более
универсальными сканнерами. Если Appscan или, скажем, продукт от Acunetix нашел
SQL-уязвимость, ничего не стоит натравить на уязвимый сценарий sqlmap.
Найти более мощного инструмента в паблике достаточно сложно. Во время поиска
багов и эксплуатации уязвимостей скрипт учитывает специфику MySQL, Oracle,
PostgreSQL, Microsoft SQL Server. Помимо этого частично поддерживаются Microsoft
Access, DB2, Informix, Sybase и Interbase. Для того, чтобы понять с какой СУБД,
мы имеем дело, sqlmap использует сложные методики fingerprint’а,
основанные на анализе баннеров сервисов, сообщений об ошибках, форматировании
вывода. Конечно, никакой автоматический скрипт не сможет расковырять столько,
сколько ты можешь сделать вручную вместе с полуавтоматическими средствами. Но
sqlmap — это отличный помощник, эксплуатирующий как самые простые инъекции,
так и последовательность запросов, а также самые сложные слепые (blind)
инъекции. В общем, если возможно что-то вытащить из базы, он не заставить себя
ждать. Возможно, системный баннер, имена текущего пользователя и базы, а также
проверить, является ли юзер администратором. А быть может повезет и с помощью
найденного бага sqlmap тут же вытащит список пользователя с хешами паролей, баз
данных, таблиц, колонок — или вообще сделать дамп всех записей в таблицах, или
выполнить произвольный SQL-запрос. Мало этого, сканнер известно и о багах,
позволяющих читать произвольные текстовые и бинарные файлы на серверах, где
используются MySQL, PostgreSQL и Microsoft SQL Server. Если на сервер
используется magic_quotes_gpc в настройках PHP, Rational Appscan само собой
будет кодировать строку запроса с помощью CHAR() или другой подходящей опции. Да
всех опций и наворотов, которые есть в арсенале не перечислишь — это не просто
утилита, это настоящий musthave!
sqlsus
Сайт: sqlsus.sf.net
Платформа: Windows, Unix, Mac
Специальная утилита для реализации инъекций в базы данных MySQL. С помощью
sqlsus ты намного проще сможешь эксплуатировать найденный баг, получив
структуру базы, внедрив SQL запрос, скачав с сервера нужные файл, закачав бэкдор
и т.д. и т.п. Примечательно, что в качестве инструмента для хранения полученных
дампов используется база SQLite, что чрезвычайно удобно. Можно например сделать
копию базы, таблицы или колонки с уязвимого сервера себе в локальную SQLite базы
и полноценно работать с ней. Помимо этого, в sqlsus реализована несколько других
полезных фич. Если ты не можешь обратиться к базе information_schema, или если
ее не существует, тулза поможет пробрутфорсить название таблиц и колонок. В
арсенале sqlsus и инструменты для реализации Blind-инъекций. Впрочем, для
реализации этого вида атак лучше заюзать следующую утилиту.
bsqlbf-v2
Сайт:
code.google.com/p/bsqlbf-v2/
Платформа: Windows, Unix
Эта тулза специально разработана для эксплуатирования слепых SQL-инъекций.
Причем изначально поддерживалась только MySQL, но в обновленной версии
реализованы методики для 3 других СУБД: MS SQL, PostrgeSQL, Oracle. bsqlbf
написана на Perl и принимает SQL запросы через командную строку и способна
реализовать инъекцию в целочисленные и строковые поля. Всего поддерживается 6
видов слепых инъекций, тип атаки обозначается с помощью ключа для запуска
«-type»:
./bsqlbf-v2.3.pl -url
http://192.168.1.1/injection_string_post/1.jsp?p=1 -type 4 -match "true" -cmd
"ping xakep.ru"
В данном примере эксплуатируется уязвимость ORACLE dbms_export_extension
exploit, позволяющая с помощью слепой инъекции выполнить произвольную команду.
На чем потренироваться во взломе?
Попробовать свои силы в проникновении на удаленную систему проще всего на
специальном дистрибутиве Damn Vulnerable Linux (www.damnvulnerablelinux.org).
Среди дырявых сервисов, для которых легко пишется эксплоит, простых паролей для
системных пользователей и прочих бед горе-администора есть и уязвимые
веб-сценарии, на которых ты можешь попрактиковаться. Система легко запускается
под виртуальной машиной VMware или VirtualBox. Другая менее известная сборка с
уязвимыми приложениями, распространяющаяся в виде образа для WMware носит
название Moth (www.bonsai-sec.com/en/research/moth.php).
Помимо этого существует специальный проект — Damn Vulnerable Web App (www.ethicalhack3r.co.uk).
Написанное на PHP/MySQL, приложение содержит самые разные типы уязвимостей,
которые только могут быть у веб-приложений. Если хочешь сэкономить время на
настройку веб-сервера, поставь уже готовые сборки: Denwer (www.denwer.ru)
или XAMPP (www.apachefriends.org/xampp-en.html).
Другие аналогичные проекты: OWASP WebGoat (www.owasp.org/index.php/Category:OWASP_WebGoat_Project),
Mutillidae (www.irongeek.com/i.php?page=security/mutillidae-deliberately-vulnerable-php-owasp-top-10),
Stanford SecuriBench (suif.stanford.edu/~livshits/securibench/).
Площадки для демонстрации способностей своих продуктов, создают и
разработчики коммерческих сканнеров, участвующих в обзоре. Acutenix предлагает
сразу три сайта на разных платформах:
testphp.acunetix.com,
testasp.acunetix.com,
testaspnet.acunetix.com. Тестовый ресурс от HP располагается по адресу
zero.webappsecurity.com.
Родной ресурс от пентестеров IBM —
demo.testfire.net.
xakep.ru
Запах пропасти: программы поиска уязвимостей на сайтах
Содержание статьи
Человек — существо по своей сути ленивое, и большинство полезностей в этом мире появилось именно из-за лени и для облегчения жизни. В таком разрезе лень — это не зло, это прогресс, и производительность труда от подобных «ленивых» изобретений повышается. Чтобы не искать ошибки на web-страницах руками, «лентяи» создали множество программ, которые могут проверить сайт на уязвимости и просигнализировать, если найдено что-то подозрительное. попробуем разобраться, так ли эффективны подобные утилиты.
Откуда берутся ошибки? Можно выделить две основные проблемы: плохое образование и человеческий фактор. Тотальная нехватка программистов лет пять назад стала превращать в кодеров всех подряд. Ладно, человек стал программистом без специального образования, но надо же учиться, совершенствоваться, а не «просиживать» рабочее место за большую зарплату! Сейчас в Европе и США с кодингом попроще: стали использовать оффшор и открыли кучу представительств в странах, где программистов хватает, но качество кода, создаваемого в оффшоре и представительствах, все же оставляет желать лучшего.
Все мы «человеки», и все мы ошибаемся, и именно человеческий фактор является второй значимой проблемой и причиной половины ошибок. Даже профессионалы могут ошибаться в абсолютно очевидных ситуациях. Чисто машинально можно поставить не тот символ или из-за невнимательности забыть сделать проверку.
Искать ошибки вручную не так уж и сложно, но программисты не любят тщательно тестировать свое творение, надеясь на правильность кода и всемогущий авось. А надежда умирает последней, точнее, сразу после взлома. Если перефразировать Ленина, то нужно тестировать, тестировать и еще раз тестировать после каждого изменения кода.
Так нудно просматривать все страницы и все параметры… Но надо, Вася, надо! Причем именно после каждого изменения кода, даже незначительного. Тестировать нужно абсолютно все, ведь изменение в одном сценарии или настройках в базе данных может привести к ошибке совершенно в неожиданном месте и на той странице, сценарий которой не был изменен.
CyD NET Utils
Сайт: http://www.cydsoft.com
Лицензия: Shareware
Цена: для России 300 руб
CyD NET Utils — набор сетевых утилит для облегчения собственной жизни
Недавно в программе появился новый модуль — Security Test, который позволяет протестировать сервер на наиболее популярные уязвимости. На данный момент web-сайты тестируются на SQL-Injection, XSS, PHP-инклудинг и тому подобные упущения в коде. Алгоритм поиска пока не идеален, но постоянно совершенствуется, — обновления выкладываются практически каждый месяц.
Программа может работать как напрямую с интернетом, так и через proxy-сервер. При этом настройки proxy можно сохранить глобально для всех тестов программы или выбрать индивидуально для каждого конкретного, к примеру, если хочешь сделать тест через анонимный прокси, чтобы тебя никто не вычислил.
Для теста программы проверим сайт www.apahelpcenter.org. Запусти программу и выбирай в меню «File-> Security test». В появившемся окне нажимаешь кнопку «Test web server», она первая на панели инструментов окна «Security test». Перед тобой появится окно, где нужно указать URL сайта, который необходимо протестировать, и настройки соединения (прямой коннект или через прокси-сервер). В качестве URL указываем www.apahelpcenter.org и нажимаем OK. Понеслась. Хотя алгоритм не сильно напрягает трафик, хорошая скорость желательна.
Результат тестирования сайта www.apahelpcenter.org
Терпения и желания у нас хватило на тестирование пяти сценариев и в трех из них найдены уязвимости SQL-Injection. Авторы, наверное, вообще не задумывались о безопасности. По завершении сканирования программа предлагает небольшой отчет о проделанной работе и ссылки в Сети с описанием найденных ошибок с вариантами их исправления (если у тебя нет проблем с английским, то это описание может пригодиться).
На данный момент программа ищет ошибки в сценариях на PHP и ASP. В ближайшее время будет добавлен Macromedia Cold Fusion. Ошибки в сценариях Perl пока добавлять не планируется, — с точки зрения web-кодинга этот язык постепенно вымирает. По крайней мере, количество сайтов, написанных на нем, сокращается, а новые практически не появляются.
Acunetix Web Vulnerability Scanner
Сайт: http://www.acunetix.com
Лицензия: Shareware
Цена: $349
Разработчиком программы является раскрученная Acunetix (в недавнем времени — малоизвестная). Рекламу этой программы довольно часто можно встретить в Google ads. В триальной версии дозволено тестировать только сайты testphp.acunetix.com, testasp.acunetix.com и testaspnet.acunetix.com. Они созданы компанией специально для тестирования программы, но не факт, что на других серверах данный сканер безопасности покажет такие же результаты сканирования и найдет хотя бы половину ошибок. Алгоритм поиска нам не известен, а разработчик его не афиширует. Так что реально проверить качество тестирования невозможно: будем отталкиваться от того, что известно и доступно.
Acunetix Web Vulnerability Scanner
Vulnerability Scanner позволяет искать ошибки в сценариях на языках PHP, ASP и ASP.NET. Помимо этого, программа может проверять на ошибки JavaScript-сценарии, что смело относим к преимуществам. Можно тестировать не только напрямую, но и через HTTP или SOCKS прокси-сервер — для обеспечения анонимности.
Итак, что имеем на выходе:
- Богатые, но не подтвержденные боевыми тестами возможности;
- Красивый и удобный интерфейс;
- Поиск уязвимостей xss, sql-injection, php-инклудинг, поиск хакерских запросов по базе google, обход каталога, crlf-injection, общедоступные резервные копии сценариев;
- Хорошая служба поддержки, которая всегда отвечает, но не всегда вовремя (на наши вопросы разработчики ответили через три дня, правда, два из них были выходными).
Если у тебя есть лишние 350 баксов, то можешь купить программу и юзать на здоровье.
SQL Injection Tools
Автор: SQLHacK
Лицензия: Халява
Сайт: на диске к ноябрьскому Хакеру за 2006 год
Эта утилита не ищет ошибки на сайте, а использует их для получения определенной информации о сервере/базе данных. Она помогает узнать версию сервера БД, ее имя, пользователя, подобрать имена таблиц и полей через уже найденную уязвимость. Некоторые любят повторять, что через найденную уязвимость и обезьяна сможет узнать всю информацию. Но почему бы не облегчить себе труд?
SQL Injection Tools
Если нашел уязвимый URL, но не знаешь, как им воспользоваться, загружай SQL-Injection Tools:
- Введи url c параметрами, например http://www.target.com/index.php?id=123. Уязвимый параметр обязательно должен быть последним в url — «id=123».
- В поле «что ищем» введи кусок текста или слово, которое отображается, если загрузить, например, http://www.target.com/index.php?id=123, и не отображается, если загрузить http://www.target.com/index.php?id=123‘.
- Дальше все ясно, кнопки говорят сами за себя.
Утилита позволяет серьезно сэкономить время, — нужно только создать хороший словарик и скормить его SQL-Injection Tools.
Paros
Сайт: parosproxy.org
Автор: paros
Лицензия: Халява
Это не просто программа для сканирования, это прокси-сервер, написанный на Java с продвинутыми возможностями для анализа.
Сканер и прокси-сервер в одном флаконе
После загрузки Paros создает на твоей машине прокси. По умолчанию он работает на 8080 порте. Запускаешь браузер и идешь в свойства. Установи работу через прокси, укажи локальную машину 127.0.0.1 и порт 8080. Теперь можешь работать с интернетом, а в это время Paros будет сканировать открываемые сайты на наличие уязвимостей. Только приготовься потерять уйму трафика: кушает Paros с аппетитом (для тех, кто сидит на безлимитке, это не так критично).
Программа позволяет модифицировать запросы к серверу, имеет кучу фильтров, может работать через удаленный прокси, обладает хорошими возможностями журналирования, но анализатор еще сырой. Явный недостаток — откровенно убогий и неудобный интерфейс.
Отлично подойдет для анализа пакетов, но для автоматического поиска уязвимостей не рекомендовал бы.
n4n0bit
Сайт: http://n4n.cup.su/
Автор: n4n0bit
Лицензия: Халява
Эта программа написана нашим соотечественником на Perl и ее любимая среда — Linux. Ищет SQL/PHP-Injection (в том числе, и в исходниках), XSS через web, а также имеет небольшой CGI-сканер. К сожалению, ограниченность одним только языком PHP открывает не очень широкое поле боевых действий, но хороший анализатор перебивает недостаток.
Сайт программы n4n0bit
Итого
Когда сайт состоит из одного файла сценария и получает немного параметров, проверить все руками достаточно просто. А если у тебя целый портал, который состоит из сотен сценариев? В таком случае на полноценные ручные тесты может уйти больше времени, чем на кодинг. Делать беглый тест не имеет смысла – обязательно что-нибудь да пропустишь, и тогда взлом не за горами. Для облегчения жизни есть программы, автоматизирующие этот процесс.
Может ли программа решить проблему? Решить-то может, а вот гарантировать результат — нет. Алгоритмы поиска не идеальны и зависят от множества факторов. Какая-то мелочь может повлиять на результат, и программа не найдет уязвимости, а вот хакер ручками ошибку выудит. Что же тогда делать? В случае со средствами безопасности, особенно тестами, рекомендуем использовать несколько разных программ. Если одна не найдет ошибку, то вполне возможно, что другая ее увидит. Ведь каждая программа использует свой алгоритм, который может быть эффективным в той или иной ситуации.
Но даже при использовании автоматического тестирования ручной способ исключать нельзя. При регулярной проверке автоматом достаточно хотя бы раз в неделю просматривать основные места самому (лучше, конечно же, все). Солидные компании нанимают хакеров, чтобы они тестировали их серверы на предмет безопасности. Мелкие компании и индивидуальные владельцы сайтов не могут позволить себе такого счастья, поэтому приходится ограничиваться автоматикой.
Мы показали разноплановые программы. Но информация быстро устаревает, появляются новые утилиты, а некоторые из старых могут «умирать».
Плюс помни, что программы автоматизации не могут дать гарантии, что нет уязвимости на сервере. В большинстве случаев они находят откровенные ляпы, особенно когда включены сообщения об ошибках. Но если ошибки не выводятся и некоторые символы все же фильтруются, автоматический тест может ничего не дать. А вот обход фильтров вручную может быть куда более результативным.
С другой стороны, «быстрый» тест позволяет понять, смогут ли данный сайт взломать начинающие, малоопытные «хакеры» с набором чужих программ. Несмотря на отсутствие 100% результата, рекомендуем использовать представленные программки для экспресс-анализа.
|
xakep.ru