Elettracompany.com

Компьютерный справочник
3 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Методы защиты баз данных

Методы защиты и безопасность базы данных

физико-математические науки

  • Дудкина Анастасия Сергеевна , бакалавр, студент
  • Баш­кирс­кий го­су­дарст­вен­ный аг­рар­ный уни­вер­си­тет
  • Похожие материалы

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

    К основным средствам защиты информации относят следующие:

    • парольная защита;
    • защита полей и записей таблиц БД.
    • установление прав доступа к объектам БД;
    • шифрование данных и программ;

    Защита БД производится на двух уровнях:

    • на уровне пароля;
    • на уровне пользователя (защита учетных записей пользователей и идентифицированных объектов).

    Безопасная система авторизации и регистрации является одним из важнейших элементов при создании проекта. Один из возможных способов — это создание системы регистрации с помощью PHP и MySQL.

    РhpMyAdmin — это программа написанная на PHP и предназначенная для управления сервером MySQL через всемирную сеть. phpMyAdmin поддерживает широкий набор операций над MySQL. Наиболее часто используемые операции поддерживаются с помощью пользовательского интерфейса (управление базами данных, таблицами, полями, связями, индексами, пользователями, правами, и т. д.), одновременно вы можете напрямую выполнить любой SQL запрос.

    Обеспечение информационной безопасности разрабатываемого проекта осуществляется на нескольких уровнях. На первом уровне защиту информации обеспечивает сама система «phpMyAdmin» начиная со входа в панель управления где панель требуется ввести логин и пароль.

    Рисунок 1. Авторизация в системе «phpMyAdmin»

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

    Рисунок 2. Обзор учетных записей

    Кроме того, также можно ограничить доступ не только к самой системе управления базами данных, но и отдельно к базам данных, к таблицам базы данных, к записям конкретных таблиц и даже к значениям полей таблиц или записей. Стоит отметить, что встроенные функции шифрования присутствуют далеко не во всех СУБД. Следовательно, универсальным данный метод назвать нельзя. Данная СУБД предлагает два однотипных набора функций шифрования, в одном из которых реализован алгоритм DES, а в другом — AES. Кроме того, в MySQL реализовано несколько алгоритмов хэширования. Набор криптографических функций данной СУБД выглядит так:

    Таблица 1. Криптографические функции СУБД

    Зашифрование данных алгоритмом AES.

    Расшифрование данных алгоритмом AES.

    Зашифрование данных алгоритмом DES.

    Расшифрование данных алгоритмом DES.

    Зашифрование данных функцией crypt().

    Хэширование данных алгоритмом MD5.

    Хэширование данных алгоритмом SHA-1.

    Функции шифрования данных алгоритмом AES используют 128-битный ключ шифрования, т. е. шифрование ключами размером 192 и 256 бит, предусмотренными стандартом AES , в MySQL не реализовано. Ключ шифрования задается явным образом как один из параметров функции. В отличие от них, функции DES_ENCRYPT() и DES_DECRYPT(), которые шифруют алгоритмом TripleDES, помимо явного задания ключа шифрования, допускают простейший вариант управления ключами в виде ключевого файла, содержащего пронумерованные значения ключей. Однако, данные функции по умолчанию выключены, для их использования необходимо включить поддержку протокола SSL в конфигурации СУБД.

    Функция ENCRYPT() может быть использована только в операционных системах семейства Unix, поскольку она шифрует данные с помощью системного вызова crypt(). Что касается используемых функций хэширования, то в документации на MySQL содержится предупреждение о том, что лежащие в их основе алгоритмы взломаны (подробно об этом написано, в частности, в, поэтому использовать их следует с осторожностью. Однако, MySQL пока не предлагает более стойких функций хэширования взамен существующих. Перечисленные выше криптографические функции также весьма просты в использовании. Например, следующий запрос помещает в таблицу table значение “text”, зашифрованное на ключе “password” : INSERT INTO table VALUES ( 1, AES_ENCRYPT( ‘text’, ‘password’ ) ); Отметим, что формат поля, в которое записывается зашифрованное значение, должен соответствовать ограничениям, накладываемым используемым криптоалгоритмом — в данном случае, оно должно быть двоичным (например, типа VARBINARY) и предполагать выравнивание в соответствии со 128-битным размером блока алгоритма AES.

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

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

    1. Мельников,В.П.Информационная безопасность и защита информации. / В.П.Мельников,
    2. С.А.Клейменов, А.М.Петраков // 3-е изд., стер. — М.: Академия, 2008. — 336 с.
    3. Панасенко С.П. Комплексная защита информации. // Информационные технологии. -2001 — № 3 — с. 14-16
    4. Рабочая программа дисциплины «Информационная безопасность» : направление подготовки 080500 Бизнес-информатика [Электронный ресурс] : профиль подготовки Информационные системы в бизнесе : квалификация (степень) выпускника Бакалавр / Башкирский ГАУ, [Каф. информатики и информационных технологий ; сост. А. Р. Басыров]. — Уфа : [б. и.], 2013. — 16 с. — Б. ц.
    5. Сайт PHP веб-приложения «phpMyAdmin» [Электронный ресурс]. – Режим доступа: http://www.phpmyadmin.net/home_page/ , свободный

    Электронное периодическое издание зарегистрировано в Федеральной службе по надзору в сфере связи, информационных технологий и массовых коммуникаций (Роскомнадзор), свидетельство о регистрации СМИ — ЭЛ № ФС77-41429 от 23.07.2010 г.

    Соучредители СМИ: Долганов А.А., Майоров Е.В.

    Средства защиты базы данных

    Дата добавления: 2013-12-23 ; просмотров: 16016 ; Нарушение авторских прав

    Средства защиты БД в различных СУБД несколько отличаются друг от друга. На основе анализа современных СУБД Borland и Microsoft можно утверждать, что средства защиты БД условно делятся на две группы, основные и дополнительные.

    К основным средствам защиты информации можно отнести следующие средства:

    — шифрование данных и программ;

    — установление прав доступа к объектам БД;

    — защита полей и записей таблиц БД.

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

    Шифрование данных (всей базы или отдельных таблиц) применяется для того, чтобы другие программы не могли прочитать данные. Шифрование исходных текстов программ позволяет скрыть от несанкционированного пользователя описание соответствующих алгоритмов.

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

    По отношению к таблицам в общем случае могут предусматриваться следующие права доступа.

    — просмотр (чтение) данных;

    — изменение (редактирование) данных;

    — добавление новых записей;

    — добавление и удаление данных;

    — все операции, в том числе изменение структуры таблицы.

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

    Применительно к защите данных в полях таблиц можно выделить следующие уровни прав доступа:

    — полный запрет доступа;

    — разрешение всех операций (просмотр, ввод новых значений, удаление и изменение).

    По отношению к формам могут предусматриваться две основные операции: вызов для работы и разработка (вызов Конструктора). Запрет вызова Конструктора целесообразно делать для экранных форм готовых приложений, чтобы конечный пользователь случайно не испортил приложение. В самих экранных формах отдельные элементы могут быть тоже защищены. Например, некоторые поля исходной таблицы вообще могут отсутствовать или скрыты от пользователя, а некоторые поля – доступны только для просмотра.

    Отчеты во многом похожи на экранные формы, за исключением следующего. Во-первых, они не позволяют изменять данные в таблицах, а во-вторых, основное их назначение – вывод информации на печать. На отчеты, так же, как и на экранные формы, может накладываться запрет на вызов средств их разработки.

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

    К дополнительным средствам защиты БД можно отнести такие, которые нельзя прямо отнести к средствам защиты, но которые непосредственно влияют на безопасность данных. Это следующие средства:

    • встроенные средства контроля значений данных в соответствии с типами;

    • повышения достоверности вводимых данных;

    • обеспечения целостности связей таблиц;

    • организации совместного использования объектов БД в сети.

    Редактируя БД, пользователь может случайно ввести такие значения, которые не соответствуют типу поля, в которое это значение вводится (например, ввод в числовое поле текстовой информации). В этом случае СУБД с помощью средств контроля значений блокирует ввод и сообщает пользователю об ошибке.

    Средства повышения достоверности вводимых значений в СУБД служат для более глубокого контроля, связанного с семантикой обрабатываемых данных. Они обычно обеспечивают возможность при создании таблицы указывать следующие ограничения на значения: минимальное и максимальное значения, значение, принимаемое по умолчанию (если нет ввода), требование обязательного ввода; задание маски (шаблона) ввода и т.д.

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

    Решение прикладной задачи, как правило, требует выбора информации из нескольких таблиц. Таблицы в базе данных могут быть связаны. Функции поддержания логической целостности связанных таблиц берет на себя СУБД. Если СУБД не реализует эти функции, то ответственность за корректность связей возлагается на приложение.

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

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

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

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

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

    Блокировки бывают явные и неявные. Явные блокировки накладываются пользователем или приложением с помощью команд. Неявные блокировки организует сама система, чтобы избежать возможных конфликтов. Например, в случае попытки изменения структуры БД во время редактирования информации устанавливается запрет реструктурирования БД до завершения редактирования данных.

    Способы защиты баз данных

    Базовые средства защиты баз данных

    Первая линия безопасности баз данных должна исходить от IT-отдела компании и от администраторов СУБД в частности. Базовая защита БД — это настройка межсетевых экранов перед СУБД, чтобы заблокировать любые попытки доступа от сомнительных источников, настройка и поддержание в актуальном состоянии парольной политики и ролевой модели доступа. Это действенные механизмы, которым должно уделяться внимание. Следующий этап защиты информации в базах данных — аудит действий пользователей, прямая задача отдела информационной безопасности. Значимость аудита объясняется тем, что в промышленной системе сложно тонко настроить права доступа к данным, к тому же бывают и исключительные ситуации.

    Например, сотруднику отдела “А” временно понадобился доступ к клиенту отдела “Б”. С большой вероятностью внесение изменений в матрицу доступа к данным не будет иметь обратного характера, что в конечном итоге приводит к наличию учетных записей с сильно расширенными привилегиями, за использованием которых стоит следить.

    Штатный аудит баз данных

    Для проведения такого мониторинга многие организации пользуются «штатным аудитом» – средствами защиты баз данных, входящими в состав коммерческих СУБД. Штатный режим защиты включает ведение журнала подключения к СУБД и выполнения запросов теми или иными пользователями. Если коротко, принцип работы штатного аудита – это включение и настройка триггеров и создание специфичных функций – процедур, которые будут срабатывать при доступе к чувствительной информации и вносить данные о подобном доступе (кто, когда, какой запрос делал) в специальную таблицу аудита. Этого бывает достаточно для выполнения ряда отраслевых требований регуляторов, но не принесет практически никакой пользы для решения внутренних задач информационной безопасности, таких как расследование инцидентов.

    Ключевые недостатки штатного аудита как защиты баз данных:

    • Дополнительная нагрузка на серверы баз данных (10-40% в зависимости от полноты аудита).
    • Вовлечение администраторов баз данных в настройку аудита (невозможность контроля администраторов – основных привилегированных пользователей).
    • Отсутствие удобного интерфейса продукта и возможности централизованной настройки правил аудита (особенно актуально для крупных распределенных компаний, в задачи защиты которых входит целый перечень СУБД).
    • Невозможность контроля действий пользователей в приложениях с трехзвенной архитектурой (наличие WEB и SQL-сегмента, что сейчас используется повсеместно из соображений безопасности).

    Автоматизированные системы защиты баз данных

    Более эффективный подход – использование специализированных систем информационной безопасности в области защиты бд – решений классов DAM и DBF.

    DAM (Database Activity Monitoring) – это решение независимого мониторинга действий пользователей в СУБД. Под независимостью здесь понимается отсутствие необходимости переконфигурации и донастройки самих СУБД. Системы такого класса могут ставиться пассивно, работая с копией трафика и не оказывая никакого влияния на бизнес-процессы, частью которых являются базы данных.

    Такие системы позволяют разбирать трафик взаимодействия пользователей с базами данных, классифицировать SQL-запросы по принадлежности к определенных группам. Вести полный аудит SQL-запросов и ответов на них. Кроме того, решения обладают глубокой системой фильтрации, позволяющей из сотен миллионов запросов выявить потенциальные инциденты и сохранять полный архив действий пользователей, как для удовлетворения требований регуляторов, так и для задач ретроспективного анализа при расследовании инцидентов. Кроме того, специализированные системы DAM позволяют синхронизоваться с защищаемыми базами данных с целью:

    • Классификации – определение местонахождения критичной для компании информации. Опция позволяет, просканировав СУБД, увидеть названия таблиц и полей, в которых могут содержаться персональные данные клиентов. Это крайне важно для упрощения последующей настройки политик безопасности.
    • Проверки на уязвимости – соответствие конфигурации и настройки СУБД лучшим практикам.
    • Получение матрицы доступа к данным – задача решается для выявления расширенных привилегий доступа, неиспользуемым правам, и наличие так называемых «мертвых» учетных записей, которые могли остаться после увольнения сотрудника из компании.

    Преимущество систем такого класса – гибкая система отчетности и интеграции с SIEM-системами большинства вендоров, для более глубокого корреляционного анализа выполняемых запросов.

    DBF (Database Firewall) – это смежное по классу решение, которое также обладает возможностью «проактивной» защиты информации. Достигается это блокировкой нежелательных запросов. Для решения этой задачи уже недостаточно работы с копией трафика, а требуется установка компонентов системы защиты «в разрыв».

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

    На российском рынке представлено решение класса DAM «Гарда БД» от компании «Гарда Технологии». Это программно-аппаратный комплекс, который проводит непрерывный мониторинг всех запросов к базам данных и веб-приложениям в реальном времени и хранит их в течение длительного срока. Система проводит сканирование и выявление уязвимостей СУБД, такие как незаблокированные учётные записи, простые пароли, неустановленные патчи. Реагирование на инциденты происходит мгновенно в виде оповещений на e-mail и в SIEM-систему.

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

    В следующей статье мы более подробно рассмотрим задачи, которые часто стоят перед DAM-системами, расскажем, почему для DAM так важно умение работы с http/http’s трафиком и как обеспечить защиту от SQL инъекций.

    Защита баз данных

    Уязвимость баз данных

    Проблема защиты баз данных стала актуальной в связи с широким внедрением многопользовательского сетевого доступа к СУБД.

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

    Современные многопользовательские БД организуются по клиент-серверному принципу: программа-сервер обслуживает сетевые запросы программ-клиентов. Для копирования базы данных недостаточно получить права для работы с ней. Зачастую не представляется возможным выяснить даже физическое местоположение содержащих ее устройств и их структуру: запрашиваемые пользователем данные пересылаются по сети определенными порциями в соответствии с его полномочиями. Таким образом, сетевой доступ к БД не только дает возможность удаленной и коллективной работы с данными, но и обеспечивает дополнительную защиту за счет разграничения прав доступа.

    Попробуй обратиться за помощью к преподавателям

    Тем не менее, проблемы утечки и потери данных сохраняются. Ниже будут рассмотрены некоторые методы защиты БД от несанкционированного доступа и других уязвимостей.

    Рисунок 1. Причины утечек данных. Автор24 — интернет-биржа студенческих работ

    В данной статье не рассматриваются изолированные (встроенные) базы данных, а также однофайловые серверные БД типа SQLite, где защита обеспечивается внешними по отношению к ним средствами.

    Методы защиты БД

    К основным средствам защиты данных относят следующие:

    • вход по паролю: для начала работы с БД необходимо ввести определенную комбинацию символов;
    • разграничение прав доступа к объектам БД;
    • защита полей и строк таблиц БД;
    • шифрование данных.

    Задай вопрос специалистам и получи
    ответ уже через 15 минут!

    В современных БД чаще всего применяются методы, связанные с разграничением доступа. Например, могут предоставляться следующие права доступа к таблицам:

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

    Рисунок 2. Назначение полномочий пользователям на действия с таблицами.Автор24 — интернет-биржа студенческих работ

    Обычно СУБД дает возможность комбинировать права доступа, предоставляемые пользователям, объединять их в группы (роли). Практикуется также и обратный подход: объединение пользователей в группы и наделение их однотипными полномочиями.

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

    • повышение достоверности вводимых данных: с помощью ограничений, закладываемых при проектировании таблиц, а также масок ввода в формах предотвращается появление в БД некорректных записей, например, когда превышается количество дней в месяце (31 ноября), вводятся слишком большие или слишком малые значения, появляются незаполненные поля где это недопустимо и т.п.;
    • обеспечение целостности связей между таблицами: таблицы, как правило, включают в себя т.н. ключевые поля, благодаря чему становится невозможным в связанных таблицах появления ссылок на несуществующие записи; например, если в таблице «Покупатели» нет пользователя с идентификатором 123, то невозможным становится и внесение этого значения в соответствующее поле таблицы «Покупки»;
    • резервное копирование: при наступлении обстоятельств непреодолимой силы (отключение электроэнергии, природные катастрофы) данные могут быть утрачены, поэтому следует регулярно копировать БД на внешние носители и удалённые хранилища; резервные копии рекомендуется хранить в зашифрованном виде; большинство современных СУБД предоставляет готовые механизмы резервного копирования;
    • правовые аспекты: БД могут являться объектами интеллектуальной собственности и авторских прав, поэтому следует своевременно регистрировать их в соответствующих государственных органах; хранение персональных данных в БД также регулируется законодательством;
    • компьютеры и операционные системы, на которых развернуты БД, также должны соответствовать правилам безопасности: сетевые данные должны передаваться по защищенным соединениям, пользователи — работать с ограниченными полномочиями, на ОС должны присутствовать антивирус и/или фаервол и т.п.

    Примеры защиты БД

    PHP, MySQL и РhpMyAdmin

    При использовании популярной среди веб-программистов «связки» PHP и MySQL защиту баз данных можно организовать с помощью программы phpMyAdmin. Она предназначена для управления сервером MySQL через Интернет. phpMyAdmin с помощью удобного пользовательского интерфейса обеспечивает управление базами данных, таблицами, индексами, правами пользователей, и т.д., а также позволяет выполнять SQL запросы.

    Безопасность в рассматриваемой программе обеспечивается на нескольких уровнях. На первом защиту предоставляет сама система «phpMyAdmin»: для входа в панель управления требуется ввести логин и пароль. Далее уже сама СУБД MySQL разграничивает права доступа в соответствии с записями о пользователях и их полномочиях, а phpMyAdmin лишь сообщает о том, были ли удачными попытки произвести запросы к БД.

    Microsoft Access

    К данным, хранящимся в таблицах Microsoft Access, могут применяться следующие уровни доступа:

    • полный запрет доступа;
    • только чтение;
    • просмотр, ввод новых значений, удаление и изменение.

    С этой точки зрения Microsoft Access соответствует стандартной концепции реляционных БД.

    К формам и отчетам в Access применяют два метода защиты:

    • запрет вызова режима Конструктора (например, чтобы конечный пользователь случайно не повредил приложение);
    • защита отдельных элементов: например, некоторые поля исходной таблицы могут быть скрыты от пользователя.

    В Microsoft Access предусмотрена также защита всего приложения общим паролем, а также хранение данных в оптимизированном виде (файле mde), в котором невозможно править формы, отчеты, структуру таблиц и другие характеристики БД.

    Рисунок 3. Настройки безопасности Microsoft Access. Автор24 — интернет-биржа студенческих работ

    Так и не нашли ответ
    на свой вопрос?

    Просто напиши с чем тебе
    нужна помощь

    С чего начинается защита базы данных?

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

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

    Серьезность последствий требует принятия действенных мер их предотвращения. В целом, все правильно. Однако анализ ситуации следует начать с принятия во внимания того факта, что даже самая незначительная брешь в системе защиты способна спровоцировать появление другой, более серьезной. Иначе говоря, причиной утечки или взлома могут стать неучтенные или должным образом нефункционирующие стандартные методы обеспечения безопасности информации. Речь пойдет именно о них, базовых, а вернее было бы даже сказать, основополагающих, способах защиты баз данных.

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

    Перечисленные способы являются частью более общей классификации уровней безопасности. Согласно «Критериям определения безопасности компьютерных систем» определяются четыре класса безопасности (Security Classes): D, С, В и А. Класс D обеспечивает минимальную защиту (Minimal Protection). Сюда относятся системы, безопасность которых не удовлетворяет требованиям более высоких классов. Класс С обеспечивает избирательную (Discretionary Protection), класс В – обязательную (Mandatory Protection), а класс А – проверенную защиту (Verified Protection).

    Избирательное управление доступом

    Избирательная защита класса C делится на 2 подкласса – С1 и С2, где подкласс С1 является менее безопасным, чем подкласс С2. Избирательное управление доступом осуществляется по усмотрению владельца данных.

    Требованием класса С1 является разделение данных и пользователя, помимо взаимного доступа к данным возможно их раздельное использование пользователями.

    Класс С2 дополнительно предусматривает учет на основе входа в систему, аудита и изоляции ресурсов. Избирательное управление доступом поддерживается многими СУБД и базируется на идентификации пользователей, объектах баз данных (таблицах, представлениях, доменах, определенных пользователем наборе символов, хранимых процедурах и т.д.) и привилегиях – наборе действий над тем или иным объектом.

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

    Пароли с их главным достоинством – простотой и привычностью – при правильном использовании могут обеспечить приемлемый для многих компаний уровень безопасности. Надежность парольной защиты основывается на следующих требованиях:

    • пароль должен представлять собой комбинацию букв, цифр или специальных знаков;
    • длина пароля должна быть не менее шести символов;
    • пароли должны часто изменяться и храниться в тайне.

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

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

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

    Обязательное управление доступом

    В случае обязательного управления объектам данных присваиваются определенные классификационные уровни, образующие строгий иерархический порядок (например, «секретно», «совершенно секретно», «для служебного пользования» и т.д.), а каждый пользователь имеет соответствующий уровень допуска. Данная, достаточно статичная и жесткая, структура базы данных свойственна, например, военным или правительственным организациям. Пользователь имеет доступ к объекту БД, только если его уровень допуска идентичен или больше уровня классификации объекта. Более того, чтобы модифицировать объект уровень допуска пользователя должен быть равен классификационному уровню объекта. Таким образом, любой информации, внесенной пользователем, автоматически присваивается уровень, идентичный уровню классификации данного пользователя. Такая процедура исключает запись секретных данных пользователем с высоким уровнем секретности в файл с меньшим классификационным уровнем, тем самым сохраняя систему секретности. Обязательная защита класса В делится на три подкласса – В1, В2 и В3, где подкласс В1 наименее безопасен, а В3 является наиболее безопасным подклассом.

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

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

    Наконец, класс В3 помимо прочего требует поддержки аудита, восстановления данных и назначение администратора режима безопасности. Что же касается класса A, такая защита является наиболее безопасной и требует математического доказательства соответствия метода обеспечения безопасности заданной стратегии.

    Шифрование данных

    Незаконно проникнуть в базу данных можно не только воспользовавшись обычными средствами доступа в системе, но и, подключившись к коммуникационному каналу, фактически переместить часть базы данных. Использование криптографических средств сокрытия информации позволит предотвратить данную угрозу. Для этой цели используется шифрование данных, т.е. хранение и передача конфиденциальных данных в зашифрованном виде. Процесс шифрования заключается в преобразовании с помощью специального алгоритма исходных данных (открытого текста) в новое представление, скрывающее содержание исходной информации. Зашифрованный текст с секретным ключом шифрования хранится в базе данных и передается по коммуникационному каналу.

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

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

    Контрольный след выполняемых операций и резервное копирование

    Контрольный след позволяет регистрировать детальные сведения обо всех операциях пользователей с БД. Данная сохраненная информация играет весьма существенную роль в обнаружении несанкционированного вмешательства в базу данных, выявлении уязвимостей в системе защиты, а также устранении каких-либо внесенных искажений данных.

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

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

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

    Читать еще:  Функция file exists php
Ссылка на основную публикацию
Adblock
detector