Сдам Сам

ПОЛЕЗНОЕ


КАТЕГОРИИ







Тестирование КВИС на наличие уязвимости





При вводе в эксплуатацию системы, требующей соответствия какому-либо уровню защищенности, хорошей практикой является ее предварительная проверка на наличие уязвимостей. Данная проверка производится с использованием СПО, осуществляющего автоматическое тестирование продукта на наличие уязвимости, с помощью организаций, производящих такие проверки, или самостоятельно, вручную, в тех частях системы, где по-вашему, это необходимо.

В ходе проверки, необходимо обнаружить SQL-инъекцию и затем “закрыть дыру” в, безопасности вашего продукта. Подтверждением того, что в какой-либо части системы была обнаружена уязвимость будет служить некорректный поток данных системы. На рисунках 1 и 2 приведены примеры корректной и некорректной работы КВИС в штатном режиме работы и во время реализации уязвимости, соответственно.

Рисунок 1 – Поток данных в КВИС в штатном режиме работы

На рисунке 1 показан поток данных системы в штатном режиме работы. Пользователь посылает GET запрос по адресу сервера, который затем преобразуется в SQL-запрос к базе данных системы. При правильном значении параметра 'id’ GET-запроса, пользователю возвращается документ под соответствующим номером. Это нормальный режим работы КВИС.

На втором же рисунке, при проверке наличия уязвимости в данном параметре, мы наблюдаем изменения данных, отдаваемых КВИС пользователю. При правильном изменении передаваемого параметра, становится возможным исполнить произвольный код в СУБД MySQL. Это может привести к полному копированию базы данных и, следовательно, получения доступа ко всем хранящимся в ней сведениям. В приведенным примере уязвимость используется, чтобы похитить пароль пользователя системы.

Рисунок 2 – Поток данных в КВИС во время реализации уязвимости

Фильтрация потока данных во время работы системы

Третьим способом является фильтрация входящих данных в виде GET-запросов, заголовков, user agent-ов и т.д. во время работы видов SQL-запросов, фильтрация которых поможет отсеять потенциальные SQL-инъекции.

1. SQL, в котором предложение UNION, вызывает обращение к другой таблице или представлению.

2. SQL, в котором добавлен необоснованный SUB-SELECT.

3. SQL, в котором предложение WHERE было зациклено, путем дополнения строки типа '' = '' или 1=1.

4. SQL, в котором происходит необоснованный вызов встроенных или сохраненных процедур.

5. SQL, в котором выполнен доступ к системным таблицам и/или пользовательским приложениям и идентификационным таблицам.

6. SQL, в котором, предложение WHERE было сокращено с помощью комментария – ‘—'.

7. Анализ некоторых классов ошибок, указывающих на то, что выбранные классы имеют неправильное количество аргументов или неправильный тип данных. Это может указать на то, что кто-то пытается создать дополнительный запрос, используя предложение UNION.

Данные приемы типичны для попыток реализации данной уязвимости и с очень маленькой вероятностью являются запросами пользователей.

Однако, при составлении правил фильтрации следует быть осторожным. Важно не “перегнуть палку” с предположениями о том, что действительно является легальным SQL, а что создано злоумышленником. Остерегайтесь ложных плюсов. Делайте это просто и действенно - используйте, если возможно, более одного метода, расширяйтесь и учитесь.

На рисунке 3 приведена схема системы с установленным фильтром запросов и ее работа во время попытки реализации уязвимости.

Рисунок 3 – Использование Firewall-а для защиты от SQL-инъекции.

 

Выводы

 

В данной работе было приведено определение уязвимости типа SQL-инъекция, проведена классификация уязвимостей данного вида, а также классификация данной уязвимости в соответствии с ГОСТ, был представлен паспорт уязвимости. Так же данная уязвимость была реализована, посредством взлома базы данных сайта в сети Интернет.

Был произведен обзор средств и методов защиты критически важных информационных сегментов от уязвимости типа SQL-инъекция. Таким образом, в конечном итоге, все эти методы сводятся к одному — внимательности разработчика.

 

 







Что делать, если нет взаимности? А теперь спустимся с небес на землю. Приземлились? Продолжаем разговор...

Что способствует осуществлению желаний? Стопроцентная, непоколебимая уверенность в своем...

Живите по правилу: МАЛО ЛИ ЧТО НА СВЕТЕ СУЩЕСТВУЕТ? Я неслучайно подчеркиваю, что место в голове ограничено, а информации вокруг много, и что ваше право...

Система охраняемых территорий в США Изучение особо охраняемых природных территорий(ООПТ) США представляет особый интерес по многим причинам...





Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:


©2015- 2024 zdamsam.ru Размещенные материалы защищены законодательством РФ.