Структурированных запросов sql в




Скачать 29.38 Kb.
НазваниеСтруктурированных запросов sql в
Дата23.02.2013
Размер29.38 Kb.
ТипДокументы

УДК 004.056:378(06) Информационная безопасность 


Н.С. МАКЕЕВ

Научный руководитель – В.А. МАЛИ, к.т.н., доцент

Пензенский государственный университет


АНАЛИЗ УЯЗВИМОСТЕЙ ЯЗЫКА
СТРУКТУРИРОВАННЫХ ЗАПРОСОВ SQL



В докладе приводится классификация уязвимостей языка SQL, которые могут быть использованы нарушителем при реализации угроз к СУБД


Язык структурированных запросов (SQL) является основным языком создания, модификации и управления данными в реляционных базах данных. За 30 лет существования, SQL стал единственным стандартным языком баз данных. В настоящее время, язык SQL – один из самых популярных языков программирования[1].

Несмотря на все неоспоримые достоинства этого языка[2], синтаксис SQL содержит в себе потенциальные уязвимости, которые могут быть использованы как нарушителем при реализации атаки, так и легальным пользователем при некорректном написании SQL запроса.

Язык SQL является декларативным языком программирования с контекстно-свободной грамматикой[3]. Декларативность – одна из причин популярности языка, с точки зрения информационной безопасности может являться уязвимостью, сладостью системы. Т.е. при программировании на императивных языках программист описывает ход решения задачи, а при программировании на декларативном языке – результат решения. Таким образом, при составлении логически неправильного запроса, компьютер будет выдавать ошибочно сформированные данные. Следовательно, главной уязвимостью языка SQL, как декларативного языка программирования, будет нетрадиционное использование синтаксиса и малоизвестных конструкций языка.

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


Таблица 1



Уязвимость

Модель нарушитель

Пример уязвимости

1

некорректные запросы, изменяющие данные или схему данных

неопытный сотрудник, не имеющий достаточного опыта в составлении SQL запросов

дизайн команд UPDATE, DELETE[2]

2

сложные, перегруженные запросы, реализующие недокументированные функции

опытный сотрудник, либо эксперементирующий в построении сложных запросов, либо собирающий конфиденциальную информацию.

неограниченное число вложенных запросов, использование хранимых процедур и процедур конкретной СУБД[4];

3

внедрение SQL кода

инсайдер, собирающий конфиденциальную информацию.

использование команды UNION, хранимые процедуры, обработка разделяющих символов, усечение размеров вводимых данных при использовании хранимых процедур[5];

4

внедрение SQL кода извне

злоумышленник, не имеющий прямого доступа к данным.

то же, что и в (3), а также неправильная конфигурация SQL сервера[6].


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


Список литературы


  1. Рейтинг языков программирования: SQL впереди-http://www.cnews.ru/reviews/free/offshore/soft/index3b.shtml

  2. Маркин А.В. Построение запросов и программирование на SQL: Рязань: РГРТУ, 2008.

  3. BNF Grammars for SQL-92, SQL-99 and SQL-2003 - ttp://savage.net.au/SQL/index.html.

  4. Молинаро Э. SQL Cборник рецептов. – Пер. с англ. – СПб: Символ-Плюс, 2009.

  5. Атака путем внедрения кода SQL - http://msdn.microsoft.com/ru-ru/library/ms161953.aspx.

  6. Таблица угроз и уязвимостей - http://msdn.microsoft.com/ru-ru/library/bb895180.aspx



Похожие:

Структурированных запросов sql в iconЛабораторная работа Использование редактора запросов sql borland sql explorer(TM) для создания запросов к данным с использованием языка sql

Структурированных запросов sql в iconЛабораторная работа №5 посвящена оптимизации запросов и работе с индексами
Лабораторные работы заключаются в изучении языка sql. Работы выполняются в sql plus под управлением системы Oracle (версии не ниже...
Структурированных запросов sql в icon3 Определение реляционной модели
Описываются индексирование, связывание таблиц и контроль целостнос­ти связей. Рассматриваются теоретические основы построения языков...
Структурированных запросов sql в iconАктивное администрирование приложений в Microsoft sql server 0
Клиентская часть отвечает за интерфейс пользователя, обработку результатов запросов, двустороннюю связь с базой данных
Структурированных запросов sql в iconЛитература по дисциплине “ Инструментальные программные средства”
Бен Форта. Освой самостоятельно язык запросов sql / Пер с англ. 3-е изд. М.: Диалектика, 2005. 288 с
Структурированных запросов sql в iconБританский Технический Университет Факультет информационных технологий Кафедра Компьютерной инженерии
Субд) и ее архитектура, системы управления реляционной базой данных (сурбд), ее архитектура, терминологией по реляционной модели,...
Структурированных запросов sql в iconTeaching Oracle to Write sql*Plus (Or using sql as a Code Generator)

Структурированных запросов sql в iconНовые поступления книг и препринтов в библиотеку ияи. Выпуск №1 (13. 03. 2007 год). 004. 6 А 65 Андон Филипп. Язык запросов sql / Андон Филипп, Резниченко Валерий. М. и др.: Питер, 2006. 415 с.: ил. (Учебный курс)
Основы теории цепей: Учебник / Атабеков Г. И. 2-е изд., испр. Спб и др.: Лань
Структурированных запросов sql в iconЛабораторная работа №1. Создание функций на pl/sql
Функции предназначены для использования в sql-предложениях, обращающихся к соответствующим отношениям. Они, по возможности, не должны...
Структурированных запросов sql в iconТематика занятий
Язык запросов (dql): соединения, внешние соединения, группировки; функции и древовидные запросы в Oracle. Оптимизация запросов
Разместите кнопку на своём сайте:
Библиотека


База данных защищена авторским правом ©lib.znate.ru 2014
обратиться к администрации
Библиотека
Главная страница