Существуют ли кросс-платформенные инструменты для написания атак XSS непосредственно в базе данных?

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

Я попытался запустить его на Mono, так как моя платформа разработки - Linux. К сожалению, он падает с System.ArgumentNullException глубоко внутри Microsoft.Practices.EnterpriseLibrary, и я, похоже, не могу найти достаточную информацию о программном обеспечении (это, кажется, проект с одним выстрелом без главной страницы и без дальнейшей разработки).

Кто-нибудь знает о подобном инструменте? Предпочтительно это должно быть:

  • кросс-платформенный (Java, Python,.NET/Mono, даже кросс-платформенный C в порядке)
  • с открытым исходным кодом (мне очень нравится иметь возможность проверять мои инструменты безопасности)
  • способен разговаривать с широким спектром продуктов БД (самые большие: MySQL, Oracle, SQL Server,...)

Изменить: Я хотел бы уточнить свою цель: мне нужен инструмент, который напрямую записывает результат успешного XSS/SQL injection в базу данных. Идея состоит в том, что я хочу проверить, что каждое место в моем приложении исправляет выходную кодировку. Обнаружение и предотвращение попадания данных в первую очередь - совсем другое (и может быть невозможно, когда я показываю данные, которые записываются в БД сторонним приложением).

Редактировать 2: Corneliu Tusnea, автор инструмента, с которым я связан выше, с тех пор выпустил инструмент как бесплатное программное обеспечение на codeplex: http://xssattack.codeplex.com/

Ответ 1

Я думаю, что metasploit имеет большинство атрибутов, которые вы ищете. Это может быть даже единственный, у кого есть все, что вы указали, поскольку все остальные, о которых я могу думать, являются закрытыми. Существует несколько существующих модулей, которые относятся к XSS, и, в частности, вы должны заглянуть в: HTTP-таблицу Microsoft SQL Injection Table XSS Infection. Из звуков этого модуля он способен делать именно то, что вы хотите сделать. Структура написана в Ruby, я полагаю, и, как предполагается, ее легко расширить с помощью ваших собственных модулей, которые вам могут понадобиться/хотят сделать. Надеюсь, что это поможет.

http://www.metasploit.com/

Ответ 2

Не уверен, что это то, что вам нужно, его параметр fuzzer для HTTP/HTTPS.

Я не использовал его в то время, но IIRC он выполняет прокси-сервер между вами и рассматриваемым веб-приложением - и вставляет строки атаки XSS/SQL Injection в любые поля ввода, прежде чем посчитать, был ли ответ "интересным", или нет, таким образом, является ли приложение уязвимым или нет.

http://www.owasp.org/index.php/Category:OWASP_WebScarab_Project

Из вашего вопроса я предполагаю, что это тип fuzzer, который вы ищете, и один специально для XSS и веб-приложений; если я прав, тогда это может вам помочь!

Его часть проекта Open Web Application Security (OWASP), который "jah" связал с вами выше.

Ответ 4

Мой друг продолжает говорить, что php-ids довольно хорош. Я сам не пробовал, но это звучит так, как будто это может приблизиться к вашему описанию:

  • Open Source (LGPL),
  • Cross Platform - PHP не входит в ваш список, но, возможно, это нормально?
  • Обнаруживает "все виды XSS, SQL Injection, впрыскивание заголовков, обход каталога, атаки RFE/LFI, DoS и LDAP" (это из FAQ)
  • Журналы в базах данных.

Ответ 5

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

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

Намного лучше, я думаю, будет выполнять обзоры кода.

Вам может показаться полезным взглянуть на некоторые из ресурсов, доступных в http://owasp.org, а именно на стандарт проверки безопасности приложений ( ASVS), Руководство по тестированию и Руководство по обзору кода.