Спонсор публикаций Cyber-512

Готовим специалиста в области ИБ  - Воспитаем специалиста в области ИБ с нуля до начального уровня. После обучения сможете оказывать услуги по проведению тестирования на проникновение ( легальный хакинг )

SQLChop — это новый механизм обнаружения SQL инжектов, построенный на выявлении определённых маркеров SQL и анализе синтаксиса. Принимаемые данные (URLадрес, body, cookie и т. д.) вначале будут декодированы и приведены к виду, наиболее близкому к виду, соответствующему выполняемой в веб-приложении функции, затем будет произведён анализ для классификации результата. SQLChop основывается на знании компилятора и теории автоматов и работает на временной сложности O(N).

Исходный код доступен здесь: https://github.com/chaitin/sqlchop

Документация: http://sqlchop.chaitin.com/doc.html

Есть возможность проверить свои запросы онлайн, поиграться с SQLChop. По этой ссылке введите интересующие вас SQL запросы и посмотрите, будут ли они классифицированы как попытка SQL-инъекции.

01

Зависимости SQLChop

Альфа релиз SQLChop, предназначенный для тестирования, включает C++ заголовок и разделяемые объекты, библиотеку python, а также несколько примеров использования. Этот выпуск был протестирован на большинстве дистрибутивов Linux.

Если будете использовать с Python'ом, то нужно установить protobuf-python, например, так:

Если вы используете C++, то вам нужно установить protobuf, protobuf-compiler и protobuf-devel, например так:

Собираем SQLChop

Загрузите последний выпуск с https://github.com/chaitin/sqlchop/releases

Make

Запустите python2 test.py или LD_LIBRARY_PATH=./ ./sqlchop_test



is_sqli

Получив строку запрос определим, является ли SQL-инъекцией

Параметр: строка

Возвращаемое значение: тип bool, возвращает True для SQLi (инжект), возвращает False для нормальных случаев.

classify

Получив ввод для веб-приложения, classify API декодирует этот ввод и ищут возможный SQL-инжект внутри. Если SQLi найден, то будет выведен запрос.

  • Параметр 1: объект со следующими ключами
  1. urlpath: полный адрес веб-запроса
  2. body: строка, тело http запроса POST/PUT
  3. cookie: строка, содержимое куки веб-запроса
  4. raw: строка, другое обычное поле, которое нуждается в обычном декодировании.
  • Параметр 2: детали, если возвращаемое значение True, то будут возвращены детали по запросу, если False, то будет возвращён только результат, которые выполняется быстрее.
  • Return: объект содержит результат и запрос
  1. result: int, положительная величина, показывающая содержит ли веб-запрос sql-инжект
  2. payloads: список объектов, содержащих key, score, value и source
  • key: строка, зарезервирована
  • source: строка, показывает, как рабочий запрос включён в оригинальный веб-запрос и как рабочий запрос раскодирован
  • value: раскодированный sqli запрос
  • score: источник декодированного запроса sqli

Пример:

Настройка

is_sqli API (в sqlchop.py) выявляют SQLi, дают оценку в качестве некоторой величины, вы можете настроить порог этой величины и вызвать действие в соответствии со сценарием использования.



Похожие темы

Что такое Vim, для чего он нужен и с чего начать е... Что такое Vim Vim — это редактор командной строки. Не очень сложный и достаточно функциональный. Он позволяет прямо из командной строк...
Анализ и эксплуатация. SS7, VoIP, SIP с помощью Si... SiGploit - представляет собой систему тестирования безопасности сигнализации, предназначенную для профессионалов и специалистов в области телекоммун...
Редактируем PDF файлы на Linux и на Windows... Некоторое время назад мне понадобилось отредактировать файл PDF. Ничего подходящего на моём компьютере на нашлось, есть Foxit Reader, но в своей бес...
Установка, запуск и работа в Adobe Photoshop Light... Наконец-то! Наконец-то мы этого дождались. После двух недель усилий, удалось заставить работать Adobe Photoshop Lightroom 5.4 и более высоких версий...
Как скрыть версии веб-сервера Apache и PHP (на Lin... Сокрытие версий Apache и PHP — это один из элементов в обеспечении безопасности веб-сервера. Знание версий этих программ может облегчить задач...