Защита БД


Содержание:
Введение…………………………………………………………………….2
Понятие защиты информации …………………………………………….3
Защита информации в базах данных ……………………………………..5
Способы защиты БД ……………………………………………………….8
Реализация защиты в некоторых СУБД …………………………………11
Заключение…………………………………………………………………15
1. Введение
Современная жизнь немыслима без эффективного управления. Важной категорией являются системы обработки информации, от которых во многом зависит эффективность работы любого предприятия или учреждения. Такая система должна:
обеспечивать получение общих и/или детализированных отчетов по итогам работы;
позволять легко определять тенденции изменения важнейших показателей;
обеспечивать получение информации, критической по времени, без существенных задержек;
выполнять точный и полный анализ данных.
Среди наиболее ярких представителей систем управления базами данных можно отметить: Lotus Approach, Microsoft Access, Borland dBase, Borland Paradox, Microsoft Visual FoxPro, Microsoft Visual Basic, а также баз данных Microsoft SQL Server и Oracle, используемые в приложениях, построенных по технологии «клиент-сервер».
Проблема обеспечения защиты информации является одной из важнейших при построении надежной информационной структуры учреждения на базе ЭВМ. Эта проблема охватывает как физическую защиту данных и системных программ, так и защиту от несанкционированного доступа к данным, передаваемым по линиям связи и находящимся на накопителях, являющегося результатом деятельности как посторонних лиц, так и специальных программ-вирусов. Таким образом, в понятие защиты данных включаются вопросы сохранения целостности данных и управления доступа к данным (санкционированность).
Технологический аспект данного вопроса связан с различными видами ограничений, которые поддерживаются структурой СУБД и должны быть доступны пользователю. К ним относятся:
ограничение обновления определенных атрибутов с целью сохранения требуемых пропорций между их старыми и новыми значениями;
ограничения, требующие сохранение значений поля показателя в некотором диапазоне;
ограничения, связанные с заданными функциональными зависимостями.
Обычно в СУБД в язык манипулирования данными уже закладываются необходимые компоненты реализации указанных ограничений. Проблема обеспечения санкционированности использования данных является неоднозначной, но в основном охватывает вопросы защиты данных от нежелательной модификации или уничтожения, а также от несанкционированного их чтения.
В данной работе рассматриваются основные аспекты защиты баз данных, их реализацию на примерах конкретных СУБД, а так же юридическую сторону данного вопроса.
2. Понятие защиты информации
Защита информации — комплекс мероприятий, направленных на обеспечение важнейших аспектов информационной безопасности (целостности, доступности и, если нужно, конфиденциальности информации и ресурсов, используемых для ввода, хранения, обработки и передачи данных).
Система называется безопасной, если она, используя соответствующие аппаратные и программные средства, управляет доступом к информации так, что только должным образом авторизованные лица или же действующие от их имени процессы получают право читать, писать, создавать и удалять информацию.
Очевидно, что абсолютно безопасных систем нет, и здесь речь идет о надежной системе в смысле «система, которой можно доверять» (как можно доверять человеку). Система считается надежной, если она с использованием достаточных аппаратных и программных средств обеспечивает одновременную обработку информации разной степени секретности группой пользователей без нарушения прав доступа.
Основными критериями оценки надежности являются: политика безопасности и гарантированность.
Политика безопасности, являясь активным компонентом защиты (включает в себя анализ возможных угроз и выбор соответствующих мер противодействия), отображает тот набор законов, правил и норм поведения, которым пользуется конкретная организация при обработке, защите и распространении информации.
Выбор конкретных механизмов обеспечения безопасности системы производится в соответствии со сформулированной политикой безопасности.
Гарантированность, являясь пассивным элементом защиты, отображает меру доверия, которое может быть оказано архитектуре и реализации системы (другими словами, показывает, насколько корректно выбраны механизмы, обеспечивающие безопасность системы).
В надежной системе должны регистрироваться все происходящие события, касающиеся безопасности (должен использоваться механизм подотчетности протоколирования, дополняющийся анализом запомненной информации, то есть аудитом).
При оценке степени гарантированное, с которой систему можно считать надежной, центральное место занимает достоверная (надежная) вычислительная база. Достоверная вычислительная база (ДВБ) представляет собой полную совокупность защитных механизмов компьютерной системы, которая используется для претворения в жизнь соответствующей политики безопасности.
Надежность ДВБ зависит исключительно от ее реализации и корректности введенных данных (например, данных о благонадежности пользователей, определяемых администрацией).
Граница ДВБ образует периметр безопасности. Компоненты ДВБ, находящиеся внутри этой границы, должны быть надежными (следовательно, для оценки надежности компьютерной системы достаточно рассмотреть только ее ДВБ). От компонентов, находящихся вне периметра безопасности, вообще говоря, не требуется надежности. Однако это не должно влиять на безопасность системы. Так как сейчас широко применяются распределенные системы обработки данных, то под «периметром безопасности» понимается граница владений определенной организации, в подчинении которой находится эта система. Тогда по аналогии то, что находится внутри этой границы, считается надежным. Посредством шлюзовой системы, которая способна противостоять потенциально ненадежному, а может быть даже и враждебному окружению, осуществляется связь через эту границу.
Контроль допустимости выполнения субъектами определенных операций над объектами, то есть функции мониторинга, выполняется достоверной вычислительной базой. При каждом обращении пользователя к программам или данным монитор проверяет допустимость данного обращения (согласованность действия конкретного пользователя со списком разрешенных для него действий). Реализация монитора обращений называется ядром безопасности, на базе которой строятся все защитные механизмы системы. Ядро безопасности должно гарантировать собственную неизменность.
3. Защита информации в базах данных
В современных СУБД поддерживается один из двух наиболее общих подходов к вопросу обеспечения безопасности данных: избирательный подход и обязательный подход. В обоих подходах единицей данных или «объектом данных», для которых должна быть создана система безопасности, может быть как вся база данных целиком, так и любой объект внутри базы данных.
Эти два подхода отличаются следующими свойствами:
В случае избирательного управления некоторый пользователь обладает различными правами (привилегиями или полномочиями) при работе с данными объектами. Разные пользователи могут обладать разными правами доступа к одному и тому же объекту. Избирательные права характеризуются значительной гибкостью.
В случае избирательного управления, наоборот, каждому объекту данных присваивается некоторый классификационный уровень, а каждый пользователь обладает некоторым уровнем допуска. При таком подходе доступом к определенному объекту данных обладают только пользователи с соответствующим уровнем допуска.
Для реализации избирательного принципа предусмотрены следующие методы. В базу данных вводится новый тип объектов БД — это пользователи. Каждому пользователю в БД присваивается уникальный идентификатор. Для дополнительной защиты каждый пользователь кроме уникального идентификатора снабжается уникальным паролем, причем если идентификаторы пользователей в системе доступны системному администратору, то пароли пользователей хранятся чаще всего в специальном кодированном виде и известны только самим пользователям.
Пользователи могут быть объединены в специальные группы пользователей. Один пользователь может входить в несколько групп. В стандарте вводится понятие группы PUBLIC, для которой должен быть определен минимальный стандартный набор прав. По умолчанию предполагается, что каждый вновь создаваемый пользователь, если специально не указано иное, относится к группе PUBLIC.
Привилегии или полномочия пользователей или групп — это набор действий (операций), которые они могут выполнять над объектами БД.
В последних версиях ряда коммерческих СУБД появилось понятие «роли». Роль — это поименованный набор полномочий. Существует ряд стандартных ролей, которые определены в момент установки сервера баз данных. И имеется возможность создавать новые роли, группируя в них произвольные полномочия. Введение ролей позволяет упростить управление привилегиями пользователей, структурировать этот процесс. Кроме того, введение ролей не связано с конкретными пользователями, поэтому роли могут быть определены и сконфигурированы до того, как определены пользователи системы.
Пользователю может быть назначена одна или несколько ролей.
Объектами БД, которые подлежат защите, являются все объекты, хранимые в БД: таблицы, представления, хранимые процедуры и триггеры. Для каждого типа объектов есть свои действия, поэтому для каждого типа объектов могут быть определены разные права доступа.
На самом элементарном уровне концепции обеспечения безопасности баз данных исключительно просты. Необходимо поддерживать два фундаментальных принципа: проверку полномочий и проверку подлинности (аутентификацию).
Проверка полномочий основана на том, что каждому пользователю или процессу информационной системы соответствует набор действий, которые он может выполнять по отношению к определенным объектам. Проверка подлинности означает достоверное подтверждение того, что пользователь или процесс, пытающийся выполнить санкционированное действие, действительно тот, за кого он себя выдает.
Система назначения полномочий имеет в некотором роде иерархический характер. Самыми высокими правами и полномочиями обладает системный администратор или администратор сервера БД. Традиционно только этот тип пользователей может создавать других пользователей и наделять их определенными полномочиями.
СУБД в своих системных каталогах хранит как описание самих пользователей, так и описание их привилегий по отношению ко всем объектам.
Далее схема предоставления полномочий строится по следующему принципу. Каждый объект в БД имеет владельца — пользователя, который создал данный объект. Владелец объекта обладает всеми правами-полномочиями на данный объект, в том числе он имеет право предоставлять другим пользователям полномочия по работе с данным объектом или забирать у пользователей ранее предоставленные полномочия.
В ряде СУБД вводится следующий уровень иерархии пользователей — это администратор БД. В этих СУБД один сервер может управлять множеством СУБД (например, MS SQL Server, Sybase). В СУБД Oracle применяется однобазовая архитектура, поэтому там вводится понятие подсхемы — части общей схемы БД и вводится пользователь, имеющий доступ к подсхеме. В стандарте SQL не определена команда создания пользователя, но практически во всех коммерческих СУБД создать пользователя можно не только в интерактивном режиме, но и программно с использованием специальных хранимых процедур. Однако для выполнения этой операции пользователь должен иметь право на запуск соответствующей системной процедуры.
4. Способы защиты БД
1. Стандартные способы защиты:
Защита с использованием пароля БДЗащита с использованием пароля пользователяЗащита с использованием пароля БД - данный способ защиты позволяет установить пароль на открытие БД, для всех пользователей. Это самый не надёжный способ защиты баз данных.
Защита с использованием пароля пользователя - данный способ основан на создании файла рабочих групп, в котором определяются имена пользователей, их пароли и права на работу с различными объектами БД.
2. Нестандартные способы защиты:
Изменение расширения файлаЗащита с использованием пароля БД, содержащего непечатные символыЗащита с модификацией файлаЗащита изменением версии БДЗащита с использованием электронного ключаШифрование значений таблицИзменение расширения файла БД - способ ввести в заблуждение. Увидев незнакомое расширение, не каждый попытается выяснить природу этого файла. Кроме этого появляется возможность связать это расширение с вашей программой, так чтобы при клике по файлу запускалось ваше приложение, а не Access. Желательно открывать такой файл с монопольным доступом.
Защита с использованием пароля БД, содержащего непечатные символы - в первую очередь этот способ нацелен на противодействие определению паролей с помощью специальных программ. Если стока пароля содержит непечатные символы, то они не будут корректно отображены программой открывающей пароли БД. использование непечатных символов, что приводит большинство программ взламывающих пароли в ступор.
Защита с модификацией файла - способ защиты основан на модификации первых байт файла. Таким образом, перед открытием БД в её файл записывается правильный заголовок, хранимый в программе, а после закрытия возвращается неправильный. При попытке открыть файл БД с помощью MS Access появляется сообщение об ошибке. Метод не достаточно эффективен, так как программу, работающую с БД, можно прервать искусственно и на диске останется не защищённая БД. Поэтому стоит его использовать только в сочетании с другими способами.
Защита изменением версии БД - дальнейшее развитие идеи модификации заголовка файла с целью противодействия программам, читающим пароли. Метод основан на том, что для работы с БД программы используют разные алгоритмы чтения пароля и при этом пытаются самостоятельно определить версию mdb файла.
Защита с использованием электронного ключа - речь идёт о ключах HASP. С помощью утилиты HASP Envelope можно зашифровать файл (в данном случае БД) и разрешить к нему доступ только из защищённого приложения. Используется механизм "прозрачного" шифрования. Со стартом операционной системы запускается некий процесс, который отслеживает все обращения к защищённому файлу БД. Если это обращение исходит от обычного приложения, например от MS Access - файл читается и выводится сообщение о "нераспознаваемом формате базы данных". Но если с файлом работает указанное при шифровании приложение, то данные передаются ему в дешифрованном виде. В результате, сама программа, не подозревает о наличии защиты. Да, сложность взлома такой базы возрастает в разы. Но при этом надо помнить, что с приложением должен поставляться электронный ключ, достаточно дорогой и что скорость доступа к данным падает в два - три раза.
Шифрование значений таблиц - достаточно хороший способ, однако есть ряд ограничений. Перед отображением данных их необходимо дешифровать. Нет возможности поиска по части строки в зашифрованном поле. Алгоритм шифрования и ключ содержатся в программе, а значит, есть потенциальная уязвимость. В данном случае надёжность зависит от устойчивости к взлому программы, работающей с БД.
5. Реализация защиты в некоторых СУБД
Архитектура защиты MS Access:
В MS Access существует возможность указать пользователей, которым предоставляется или, наоборот, не разрешается доступ к объектам базы данных. Кроме того, можно определить группы пользователей и назначить разрешения на уровне группы, чтобы облегчить построение защиты для большого числа пользователей. Пользователю достаточно быть членом группы, чтобы получить права доступа, установленные для неё.
MS Access хранит информацию о защите в двух местах. Во время установки программа Setup создаст в папке \Program Files\Microsoft Ofice\0ffice стандартный файл рабочей группы (System.mdw), который впоследствии используется по умолчанию при запуске MS Access. Этот файл содержит информацию обо всех пользователях и группах. При создании базы данных MS Access сохраняет сведения о правах, предоставляемых конкретным пользователям и группам, в файле базы данных.
Расположение текущего файла рабочей группы хранится в реестре Windows. Можно использовать служебную программу Wrkadm.exe (администратор рабочих групп) для изменения текущего или определения нового файла рабочей группы. Каждая рабочая группа имеет уникальный внутренний идентификатор, генерируемый MS Access при определении файла рабочих групп. Любая база данных, созданная пользователем рабочей группы, «принадлежит» как этому пользователю, так и рабочей группе. Каждый пользователь и группа также имеет уникальный внутренний идентификатор, но можно дублировать один и тот же код пользователя и группы в нескольких рабочих группах. Когда назначается право доступа к объекту базы данных, MS Access сохраняет в ней внутренний идентификатор пользователя или группы вместе с информацией о доступе. Таким образом, предоставленные права перемещаются вместе с файлом базы данных при копировании его в другую папку или на другой компьютер.
Общая структура защиты MS Access отображена на рисунке 1. Учётные записи пользователей и групп хранятся в файле рабочей группы. Разрешение на доступ к конкретным объектам сохраняются в файле базы данных.
Рабочая группа
(обычно System.mdw)
Код рабочей группы
Пользователи
Код пользователя
Группы
Код группы

База данных приложения
(таблицы, запросы, формы,
отчеты, модули),
принадлежащая рабочей группе
Объект
Разрешение на доступ к объекту
Код пользователя или группы

Рис. 1. Общая структура защиты MS Access
Безопасность данных в Oracle 7:
Для того, чтобы обеспечить безопасность баз данных предлагается создать систему защиты баз данных (СЗ БД), ориентированную на СУБД Oracle, как одну из наиболее распространенных систем управления базами данных.
СЗ БД предназначена для выполнения следующих функций:
разграничения полномочий внутри базы данных с реализацией ограничения доступа к данным защищаемых приложений со стороны администраторов;
реализации мандатного доступа (с использованием меток) к данным;
ограничения доступа и контроля выполнения команд в зависимости от времени, IP-адреса, выполняемой операции;
строгой аутентификации при доступе к базе данных (X.509, Kerberos, Radius);
защиты клиентского трафика (SSL) при сетевом доступе к базе данных;
прозрачного шифрования чувствительной информации в базе данных и ее защиты на физических носителях информации;
защиты резервных копий баз данных;
консолидации, хранения и анализа данных аудита различных баз данных.
Основу СЗ БД составляют следующие компоненты: Oracle Database Vault, Oracle Advanced Security, Oracle Label Security, Oracle Secure Backup и Oracle Audit Vault.
Oracle Database Vault – средство защиты и ограничения доступа пользователей к важным данным и приложениям. Реализованные в продукте механизмы защиты базируются на использовании правил и безопасных областей (realm). Правила предполагают ограничение доступа к базе данных на основании IP адреса клиента Oracle и времени суток. Безопасные области позволяют предоставлять доступ строго к специфическим данным приложений или объектам базы данных. Oracle Database Vault при необходимости позволяет внедрение правил, согласно которым для решения задач, предполагающих доступ к чувствительной информации, потребуется присутствие двух сотрудников. Данная возможность позволяет дополнительно защитить базу данных от злоумышленных действий сотрудников и атак изнутри.
Oracle Advanced Security - комплекс средств аутентификации и обеспечения сетевой безопасности, включающий в себя поддержку защищенных протоколов передачи данных, в том числе SSL. Oracle Advanced Security выполняет следующие функции:
гарантирует конфиденциальность данных;
гарантирует целостность данных;
осуществляет аутентификацию пользователей, баз данных и web-серверов.
Oracle Label Security представляет собой набор процедур и ограничений, встроенных в ядро базы данных, которые позволяют осуществить мандатный контроль доступа. Для использования Oracle Label Security, необходимо создать одну или несколько политик безопасности, каждая из которых содержит набор меток (label). Каждая из меток соответствует некоторому уровню безопасности. Метки служат для классификации данных по уровням безопасности и используются для определения того, какой пользователь к каким данным имеет доступ. После создания политики она применяется к защищаемым таблицам. Каждому из пользователей также назначаются метка, в соответствие с его функциональными обязанностями. Так как данные классифицированы по уровням безопасности, каждый конкретный пользователь получает доступ в соответствие с назначенной ему меткой. Он может оперировать только данными, находящимися на том уровне безопасности, который соответствует его метке и на уровнях ниже. Oracle Label Security изменяет запросы и вычисляет уровни доступа для реализации созданной политики.
Oracle Secure Backup представляет собой автоматизированную систему управления резервным копированием на ленты. Эта система обеспечивает высокопроизводительное резервное копирование баз данных Oracle и поддерживает шифрование данных на лентах. Oracle Secure Backup выполняет следующие функции:
централизованное управление ленточными носителями посредством создания единого репозитария для хранения информации обо всех критических резервных файлах организации;
создание гибкого расписания резервного копирования;
защита содержимого резервного копирования посредством механизмов шифрования данных.
Oracle Audit Vault предназначен для сбора, консолидации и анализа данных аудита СУБД организации и защиты от внутренних угроз. Oracle Audit Vault имеет клиент-серверную архитектуру. Серверный компонент Audit Vault представляет собой хранилище данных, построенное на основе СУБД Oracle Database 10g с установленной компонентой Oracle Database Vault. Приложения сервера Audit Vault позволяют управлять агентами Audit Vault и строить отчеты о текущем состоянии информационной безопасности.
6. Заключение
Информационная безопасность относится к числу дисциплин, развивающихся чрезвычайно быстрыми темпами. Этому способствуют как общий прогресс информационных технологий, так и постоянное противоборство нападающих и защищающихся.
К сожалению, подобная динамичность объективно затрудняет обеспечение надежной защиты. Причин тому несколько:
повышение быстродействия микросхем, развитие архитектур с высокой степенью параллелизма позволяет методом грубой силы (перебором вариантов) преодолевать барьеры (прежде всего криптографические), ранее казавшиеся неприступными;
развитие сетей, увеличение числа связей между информационными системами, рост пропускной способности каналов расширяют число потенциальных злоумышленников, имеющих техническую возможность осуществить нападение;
появление новых информационных сервисов ведет и к появлению новых угроз как «внутри» сервисов, так и на их стыках;
конкуренция среди производителей программного обеспечения заставляет сокращать сроки разработки системы, что ведет к снижению качества тестирования и выпуску продуктов с дефектами защиты;
навязываемая потребителям парадигма постоянного наращивания аппаратного и программного обеспечения вступает в конфликт с бюджетными ограничениями, из-за чего снижается доля ассигнований на безопасность.
Обеспечение информационной безопасности современных информационных систем требует комплексного подхода. Оно невозможно без применения широкого спектра защитных средств, объединенных в продуманную архитектуру. Далеко не все эти средства получили распространение в России, некоторые из них даже в мировом масштабе находятся в стадии становления.
В этих условиях позиция по отношению к информационной безопасности должна быть особенно динамичной. Теоретические воззрения, стандарты, сложившиеся порядки необходимо постоянно сверять с требованиями практики. От атак не защититься книгой (даже оранжевой) или сертификатом. Реальная безопасность нуждается в каждодневной работе всех заинтересованных сторон.
Список использованной литературы
Голицына О.Л., Максимов Н.В. и др., «Базы данных» (учебное пособие).
Статья Юрия Шермана // www.tour-soft.comСтатья Сергея Гаврилова // [email protected]Партыка Т.Л., Попов И.И. «Информационная безопасность».
Герасименко В.А., Малюк А.А., «Основы защиты информации».

Приложенные файлы

  • docx 26447941
    Размер файла: 44 kB Загрузок: 0

Добавить комментарий