Материал Аудит. Использование компьютерных систем во всех сферах современной жизни, стремительное развитие сетевых технологий, помимо преимуществ, повлекли за собой появление большого ряда специфических проблем
Скачать 3.84 Mb.
|
Тема 3. Аппаратные и программные средства защиты баз данных Цели и задачи изучения темы: Понять основные угрозы и принципы защиты баз данных. Научиться использовать программные и аппаратные средства для защиты баз данных. Вопросы темы: 1. Понятие защиты баз данных. 2. Основные типы угроз безопасности баз данных. 3. Аппаратные средства защиты баз данных. 4. Программные средства защиты баз данных. Теоретический материал по теме Вопрос 1. Понятие защиты баз данных. Защита базы данных - естьобеспечение защищенности базы данных против любых (предумышленных или непредумышленных) угроз с помощью различных средств. Понятие защиты применимо не только к данным, хранящимся в базе данных. Бреши в системе защиты могут возникать и в других частях системы, что, в свою очередь, подвергает опасности и саму базу данных. Следовательно, защита базы данных должна охватывать используемое оборудование, программное обеспечение, персонал и собственно данные (рис. 7). Рис. 7. Объекты защиты баз данных Для эффективной реализации защиты необходимы соответствующие средства контроля, которые определяются конкретными требованиями, вытекающими из особенностей эксплуатируемой системы. Необходимость защищать данные, которую раньше очень часто отвергали или которой просто пренебрегали, в настоящее время вся яснее осознается различными организациями. Повод для такой перемены настроений заключается в участившихся случаях разрушения компьютерных хранилищ корпоративных данных, а также в осознании того, что потеря или просто временная недоступность этих данных может стать причиной настоящей катастрофы. База данных представляет собой важнейший корпоративный ресурс, который должен быть надлежащим образом защищен с помощью соответствующих средств контроля. Мы обсудим проблемы защиты базы данных с точки зрения таких потенциальных опасностей как: похищение и фальсификация данных; утрата конфиденциальности (нарушение тайны); нарушение неприкосновенности личных данных; утрата целостности; потеря доступности. Указанные ситуации отмечают основные направления, в которых руководство должно принимать меры, снижающие степень риска, т.е. потенциальную возможность потери или повреждение данных. В некоторых ситуациях все отмеченные аспекты повреждения данных тесно связаны между собой, так что действия, направленные на нарушение защищенности системы в одном направлении, часто приводят к снижению ее защищенности во всех остальных. Похищение и фальсификация данных могут происходить не только в среде базы данных — вся организация так или иначе подвержена этому риску. Однако действия по похищению или фальсификации информации всегда совершаются людьми, поэтому основное внимание должно быть сосредоточено на сокращении общего количества удобных ситуаций для выполнения подобных действий. Понятие конфиденциальности означает необходимость сохранения данных в тайне. Как правило, конфиденциальными считаются только те данные, которые являются важными для всей организации, тогда как понятие неприкосновенности данных касается требования защиты информации об отдельных сотрудниках. Следствием нарушения в системе защиты, вызвавшего потерю конфиденциальности данных, может быть утрата надежных позиций в конкурентной борьбе, тогда как следствием нарушения неприкосновенности личных данных могут стать судебные действия, предпринятые в отношении организации. Утрата целостности данных приводит к искажению или разрушению данных, что может иметь самые серьезные последствия для дальнейшей работы организации. В настоящее время множество организаций функционирует в непрерывном режиме, предоставляя свои услуги клиентам 24 часа в сутки и 7 дней в неделю. Потеря доступности данных будет означать, что либо данные, либо система, либо и то и другое одновременно окажутся недоступными пользователям, а это может подвергнуть опасности финансовое положение организации. В некоторых случаях те события, которые послужили причиной перехода системы в недоступное состояние, могут одновременно вызвать и разрушение данных в базе. Цель защиты базы данных — минимизировать потери, вызванные заранее предусмотренными событиями. Принимаемые решения должны обеспечивать эффективное использование понесенных затрат и исключать излишнее ограничение предоставляемых пользователям возможностей. В последнее время уровень компьютерной преступности существенно возрос, причем прогнозы на будущее не утешительны и предвещают продолжение его роста и в дальнейшем. Вопрос 2. Основные типы угроз. Любая ситуация (или событие), вызванная намеренно или непреднамеренно, которая способна неблагоприятно повлиять на систему, а следовательно, и на работу всей организации. Угроза может быть вызвана ситуацией (или событием), способной принести вред организации, причиной которой может служить человек, происшествие или стечение обстоятельств. Ущерб может быть материальным (например, потеря оборудования, программного обеспечения или данных) или нематериальным (например, потеря доверия партнеров или клиентов). Перед каждой организацией стоит проблема выяснения всех возможных опасностей, что в некоторых случаях является весьма непростой задачей. Поэтому на выявление хотя бы важнейших угроз может потребоваться достаточно много времени и усилий, что следует учитывать. Хотя некоторые типы угроз могут быть намеренными или непреднамеренными, результаты их воздействия остаются одинаковыми. Преднамеренные угрозы всегда осуществляются людьми и могут быть совершены пользователями, как обладающими, так и не обладающими правами доступа, причем некоторые из них могут даже не быть сотрудниками организации. Любая угроза должна рассматриваться как потенциальная возможность нарушения системы защиты, которая в случае успешной реализации может оказать то или иное негативное влияние. В таблице 2 приведены примеры различных типов угроз с указанием тех областей, в которых они могут влиять на систему. Например, следствием просмотра и раскрытия засекреченных данных могут стать похищение и фальсификация, утрата конфиденциальности и нарушение неприкосновенности личных данных в организации. Таблица 2. Примеры различных типов угроз базам данных
Вопрос 3. Аппаратные средства защиты баз данных. В отношении угроз, которые могут оказать отрицательное воздействие на работу компьютерных систем (рис. 8), должны быть приняты контрмеры самых различных типов, начиная от физического контроля и заканчивая административно организационными процедурами. Несмотря на широкий диапазон компьютерных средств контроля, доступных в настоящее время на рынке, общий уровень защищенности СУБД определяется возможностями используемой операционной системы, поскольку работа этих двух компонентов тесно связана между собой. Рис. 8. Место аппаратных средств в системе защиты баз данных Резервное копирование - периодически выполняемая процедура получения копии базы данных и ее файла журнала (а также, возможно, программ) на носителе, хранящемся отдельно от системы. Любая современная СУБД должна предоставлять средства резервного копирования, позволяющие восстанавливать базу данных в случае ее разрушения. Кроме того, рекомендуется создавать резервные копии базы данных и ее файла журнала с некоторой установленной периодичностью, а также организовывать хранение созданных копий в местах, обеспеченных необходимой защитой. В случае аварийного отказа, в результате которого база данных становится непригодной для дальнейшей эксплуатации, резервная копия и зафиксированная в файле журнала оперативная информация используются для восстановления базы данных до последнего согласованного состояния. Ведение журнала - процедура создания и обслуживания файла журнала, содержащего сведения обо всех изменениях, внесенных в базу данных с момента создания последней резервной копии, и предназначенного для обеспечения эффективного восстановления системы в случае ее отказа. СУБД должна предоставлять средства ведения системного журнала, в котором будут фиксироваться сведения обо всех изменениях состояния базы данных и о ходе выполнения текущих транзакций, что необходимо для эффективного восстановления базы данных в случае отказа. Преимущества использования подобного журнала заключаются в том, что в случае нарушения работы или отказа СУБД базу данных можно будет восстановить до последнего известного согласованного состояния, воспользовавшись последней созданной резервной копией базы данных и оперативной информацией, содержащейся в файле журнала. Если в отказавшей системе функция ведения системного журнала не использовалась, базу данных можно будет восстановить только до того состояния, которое было зафиксировано в последней созданной резервной копии. Все изменения, внесенные в базу данных после создания последней резервной копии, будут потеряны. Аппаратное обеспечение, на котором эксплуатируется СУБД, должно быть отказоустойчивым. Это означает, что СУБД должна продолжать работать даже при отказе аппаратных компонентов. Для этого необходимо иметь избыточные компоненты, которые могут быть объединены в систему» сохраняющую свою работоспособность при отказе одного или нескольких компонентов. К числу основных аппаратных компонентов, которые должны быть отказоустойчивыми, относятся дисковые накопители, дисковые контроллеры, процессоры, источники питания и вентиляторы охлаждения. Дисковые накопители являются наиболее уязвимыми среди всех аппаратных компонентов и характеризуются самыми низкими показателями непрерывной работы между отказами. Одним из решений этой проблемы является применение технологии RAID. Первоначально эта аббревиатура расшифровывалась как Redundant Array of Inexpensive Disks (Массив недорогих дисковых накопителей с избыточностью), но в дальнейшем букву «I» в этой аббревиатуре стали рассматривать как сокращение от «independent» (независимый). RAID-массив (рис. 9) представляет собой массив дисковых накопителей большого объема, состоящий из нескольких независимых дисков, совместное функционирование которых организовано таким образом, что при этом повышается надежность и вместе с тем увеличивается производительность. Рис. 9. RAID-массив Производительность увеличивается благодаря полосовому распределению данных. Данные на дисках распределяются по сегментам, представляющим собой разделы дисков равного размера (этот размер называется единицей полосового распределения), которые распределяются по нескольким дискам и обеспечивают прозрачный доступ. В результате такой массив становится аналогичным одному крупному быстродействующему диску, но фактически данные в нем распределены по нескольким дискам меньшего объема. Полосовое распределение обеспечивает повышение производительности ввода-вывода, поскольку позволяет одновременно выполнять несколько операций ввода-вывода (на разных дисках). Наряду с этим полосовое распределение данных позволяет равномерно распределять нагрузку между дисками. Повышенная надежность RAID-массива обеспечивается благодаря дублированию данных (такие дубликаты называются зеркальными копиями) и хранению на дисках избыточной информации, сформированной с использованием схем контроля четности или схем исправления ошибок, таких как код Рида-Соломона (Reed-Solomon). В схеме контроля четности каждый байт должен иметь связанный с ним бит четности, который принимает Значение 0 или 1, в зависимости от того, является ли четным или нечетным количество битов 1 в байте, которому соответствует этот бит контроля четности. Если в контролируемом байте некоторые биты будут искажены, значение бита четности не совпадет со значением, соответствующим новому составу битов 1 в этом байте. Аналогичным образом, при искажении хранимого бита контроля четности он не будет соответствовать данным в байте, что позволит обнаружить ошибку. С другой стороны, схемы корректировки ошибок предусматривают хранение двух или больше дополнительных битов и позволяет восстанавливать первоначальные данные, если один из битов будет искажен. Схемы контроля четности и корректировки ошибок могут применяться при полосовом распределении данных по дискам. В RAID-массивах используются различные сочетания описанных выше методов повышения производительности и надежности, получившие название уровней RAID. Эти уровни перечислены ниже: RAID 0 (неизбыточный массив). На этом уровне не применяется дублирование данных и поэтому обеспечивается наивысшая производительность записи, поскольку не приходится копировать по дискам обновляемые данные. Полосовое распределение данных осуществляется на уровне дисковых блоков. RAID 1 (массив с зеркальным отображением). На этом уровне ведутся две идентичные (зеркальные) копии данных на разных дисках. Для обеспечения сохранности данных на случай отказа диска запись на разные диски в некоторых вариантах реализации такого массива не выполняется одновременно. Этот вариант организации хранения данных во внешней памяти является наиболее дорогостоящим. RAID 0+1 (неизбыточный массив с зеркальным отображением). На этом уровне применяется сочетание методов полосового распределения и зеркального отображения данных. RAID 2 (массив с применением кодов корректировки ошибок, хранящихся во внешней памяти). На этом уровне единицей полосового распределения является один бит и для реализации схемы избыточности применяются коды Хэмминга. RAID 3 (массив, обеспечивший контроль четности с чередованием битов). На этом уровне предусматривается хранение избыточных данных (представляющих собой информацию контроля четности) на отдельном диске массива. Эта информация может применяться для восстановления данных, хранящихся на других дисках, в случае отказа этих дисков. На этом уровне используется меньший дополнительный объем пространства внешней памяти по сравнению с уровнем RAID 1, но доступ к диску с информацией контроля четности может стать узким местом, ограничивающим производительность. RAID 4 (массив, обеспечивающий контроль четности с чередованием блоков). На этом уровне единицей полосового распределения является блок диска; блоки с информацией контроля четности хранятся на ином диске, чем соответствующие блоки данных с нескольких других дисков. При отказе одного из дисков с данными блок контроля четности может применяться в сочетании с соответствующими блоками с других дисков для восстановления данных, которые хранились на отказавшем диске. RAID 5 (массив, обеспечивающий контроль четности с чередованием блоков и распределением информации контроля четности). На этом уровне информация контроля четности применяется в качестве избыточной и обеспечивающей восстановление первоначальных данных по такому же принципу, как в массиве RAID 3, но данные контроля четности распределяются с помощью метода полосового распределения по всем дискам таким же образом, как происходит распределение исходных данных. Это позволяет устранить узкое место, возникающее, если вся информация контроля четности хранится на одном диске. RAID 6 (массив с избыточностью P+Q). Этот уровень аналогичен уровню RAID 5, но предусматривает хранение дополнительных избыточных данных для защиты от отказа сразу нескольких дисков. При этом вместо информации контроля четности используются коды исправления ошибок. Например, корпорация Oracle рекомендует использовать уровень RAID 1 для файлов журнала восстановления. А для файлов базы данных рекомендуется применение уровня RAID 5, если он обеспечивает приемлемые задержки при записи, а в ином случае рекомендуется уровень RAID 1 или RAID 0+1). Вопрос 4. Программные средства защиты баз данных. Защита СУБД в Web. В основе средств обмена данными в Internet лежат протоколы TCP/IP и HTTP. Но эти протоколы разрабатывались без учета необходимости применения средств защиты. Поэтому весь трафик в Internet передается в открытом виде (если не используется специальное программное обеспечение) и передаваемые в его составе данные может прочитать любой желающий. Чтение данных, передаваемых по сети, является одной из форм нарушения защиты, и ее можно относительно легко осуществить с использованием свободно доступного программного обеспечения перехвата пакетов, поскольку Internet с самого начала создавалась как открытая сеть. Тем не менее, последствия такого нарушения могут быть очень серьезными. Например, перехват номеров кредитных карточек при их передаче заказчиками во время покупки товаров по Internet. Задача состоит в том, чтобы обеспечивались бесперебойные передача и прием информации по Internet и при этом гарантировалось соблюдение следующих требований: информация должна быть недоступной для всех, кроме отправителя и получателя (секретность); информация должна остаться неизменной после передачи (целостность); получатель должен быть уверен, что информация действительно поступила от отправителя (аутентичность); отправитель должен быть уверен, что получатель является подлинным (отсутствие возможности имитации подлинного получателя); отправитель не может отрицать факт передачи им информации (отсутствие возможности уйти от ответственности за переданную информацию, например, заказ). Для защиты СУБД в Web операция передачи данных реализуется как целостная транзакция, которая должна быть защищена. Но защита транзакции позволяет решить только часть проблемы защиты данных в Web. Необходимо обеспечить защиту информации и после того, как она поступит на Web-сервер. Кроме того, по мере дальнейшего распространения трехуровневых архитектур в среде Web возникают дополнительные сложности, связанные с обеспечением защищенного доступа к информации в базе данных, а также доступа из базы данных к информации в других источниках. В настоящее время основные компоненты трехуровневой архитектуры могут быть надежно защищены, но для этого, как правило, требуется применение целого ряда программных продуктов и организационных мер. Еще одним аспектом защиты, с которым приходится сталкиваться в среде Web, является то, что информация, передаваемая на клиентский компьютер, может иметь выполняемое информационное наполнение. Например, HTML-страницы могут включать элементы управления ActiveX, сценарии JavaScript/VBScript, а также один или несколько аплетов Java. С помощью выполняемого информационного наполнения могут быть осуществлены следующие злонамеренные действия, и поэтому должны быть приняты меры по их предотвращению: повреждение данных или нарушение хода выполнения программ; переформатирование целых дисков; выполнение общего останова системы; сбор и выгрузка на другие сетевые узлы таких конфиденциальных данных, как информационные файлы или файлы паролей; присвоение себе чужого идентификатора и выполнение действий от имени пользователя или операционной системы компьютера пользователя для нападения на другие объекты в сети; блокировка ресурсов, которые после этого становятся недоступными для санкционированных пользователей и программ; создание безаварийных, но нежелательных эффектов, особенно на устройствах вывода. Прокси-серверы. В среде Web прокси-сервер размещается на компьютере, находящемся между Web-броузером и Web-сервером. Он перехватывает все запросы к Web-серверу для определения того, может ли он сам выполнить эти запросы. В случае отрицательного ответа запросы перенаправляются к Web-серверу. Прокси-серверы имеют два основных назначения: повышение производительности и фильтрация запросов. Прокси-сервер записывает в память результаты всех выполненных запросов и хранит их определенное время, поэтому он позволяет намного повысить производительность выполнения запросов группы пользователей. Например, предположим, что пользователи А и В обращаются в Web через прокси-сервер. Вначале пользователь А запрашивает некоторую Web-страницу, а немного позже к той же странице обращается пользователь В. Вместо перенаправления последнего запроса к Web-серверу, на котором находится страница, прокси-сервер просто возвращает из кэша копию страницы, которая перед этим была отправлена пользователю А. Прокси-сервер чаще всего находится в той же сети, что и сам пользователь, поэтому позволяет намного ускорить работу. Мощные прокси-серверы, например, которые установлены на сетевых узлах компаний CompuServe и America Online, способны поддерживать работу тысяч пользователей. Прокси-серверы могут также применяться для фильтрации запросов. Например, в организации прокси-сервер может служить для предотвращения доступа служащих к определенному ряду Web-узлов. Брандмауэры. Как правило, специалисты по защите рекомендуют вывести Web-серверы из состава всех внутренних сетей и регулярно осуществлять резервное копирование и восстановление представленных на них данных для устранения последствий неизбежных нападений. А если Web-сервер должен быть подключен к внутренней сети, например для доступа к базе данных компании, то для предотвращения несанкционированного доступа может служить брандмауэр, при условии, что его инсталляция и сопровождение осуществляются должным образом. Брандмауэр — это система, предназначенная для предотвращения несанкционированного доступа к ресурсам закрытой сети или доступа из закрытой сети к ресурсам другой сети. Брандмауэры могут быть реализованы на основе аппаратных или программных средств, а также сочетания тех и других. Они часто применяются для предотвращения несанкционированного доступа пользователей Internet к ресурсам закрытых сетей, подключенных к Internet (прежде всего, внутренних сетей компаний). Все сообщения, поступающие или исходящие из внутренней сети, проходят через брандмауэр, который анализирует каждое сообщение и блокирует те из них, которые не отвечают определенным критериям защиты. Ниже перечислены основные категории брандмауэров. Фильтры пакетов. Этот метод организации работы брандмауэра предусматривает анализ каждого пакета входящего или исходящего из сети, после чего пакет принимается или отвергается в соответствии с правилами, определяемыми пользователем. Фильтрация пакетов представляет собой довольно эффективный механизм, прозрачный для пользователей, но его настройка может быть связана с определенными сложностями. Кроме того, фильтрация пакетов не позволяет предотвратить имитацию IP-адреса. (Метод имитации IP-адреса применяется для получения несанкционированного доступа к компьютеру. При использовании этого метода нарушитель отправляет на компьютер сообщения с IP-адресом, указывающим, что эти сообщения поступают из источника, заслуживающего доверия). Прикладные шлюзы. Этот метод предусматривает применение механизмов защиты к конкретным приложениям, таким как серверы FTP и Telnet. Это — очень эффективный механизм, но его применение может привести к снижению производительности. Шлюзы сетевого уровня. Этот метод предусматривает применение механизмов защиты во время установления соединения TCP или UDP (User Datagram Protocol — протокол пользовательских дейтаграмм). После установления соединения пакеты передаются между хостами без дальнейшей проверки. Прокси-серверы. Этот метод предусматривает перехват всех сообщений, входящих в сеть и исходящих из нее. Прокси-сервер фактически скрывает от внешнего мира подлинные сетевые адреса. На практике во многих брандмауэрах реализуется сразу несколько из перечисленных методов. Брандмауэры рассматриваются как «первая линия обороны» в составе средств защиты конфиденциальной информации. Для повышения уровня защиты может быть предусмотрено шифрование данных. Цифровые сертификаты. Цифровой сертификат представляет собой приложение к электронному сообщению, применяемое в целях защиты, в основном для проверки того, что отправитель сообщения является тем, за кого он себя выдает, и предоставляющее получателю возможность зашифровать ответ. Лицо, желающее отправить зашифрованное сообщение, обращается для получения цифрового сертификата к уполномоченной организации по цифровым сертификатам (СА — Certificate Authority). Организация СА выпускает зашифрованный цифровой сертификат, содержащий открытый ключ заявителя и много другой идентификационной информации. Сама организация предоставляет собственный открытый ключ для всеобщего доступа с помощью публикаций в открытой печати или в Internet. Получатель зашифрованного сообщения использует открытый ключ СА для дешифровки цифрового сертификата, прилагаемого к сообщению, убеждается в том, что сертификат действительно выпущен организацией СА, а затем получает открытый ключ отправителя и идентификационную информацию (напомним, что эти данные хранятся вместе с сертификатом). Имея эту информацию, получатель может отправить зашифрованный ответ. Очевидно, что организация СА выполняет в этом процессе исключительно важную роль, поскольку действует в качестве посредника между заинтересованными сторонами. В такой крупной и сложной распределенной сети, как Internet, подобная модель установления доверительных отношений с участием третьей стороны является крайне необходимой, поскольку между участниками соединения могут еще не установиться отношения взаимного доверия, но обе эти стороны стремятся обмениваться данными в защищенном сеансе. Но поскольку обе стороны доверяют организации СА, которая подтверждает подлинность и надежность каждого партнера, подписывая их сертификаты, то участники сеанса признают подлинность друг друга и тем самым неявно выражают свое доверие к партнеру. Наиболее часто для создания цифровых сертификатов применяется стандарт Х.509. Вопросы для самопроверки: 1. Какие существуют потенциальные опасности для базы данных? 2. В чем заключается утрата конфиденциальности данных? 3. Что понимается под угрозой базе данных? 4. Чем отличаются преднамеренные и не преднамеренные угрозы базе данных? 5. В чем состоит цель защиты базы данных? 6. Какие существуют аппаратные средства защиты базы данных? 7. Какие существуют программные средства защиты базы данных? 8. В чем заключается применение технологии RAID массивов? 9. Какие существуют уровни RAID массивов? 10. Как осуществляется защита СУБД в Web? 11. Какие возможности по защите баз данных предоставляют брэндмауэры? Литература по теме Основная литература: 1. Безопасность систем баз данных., Смирнов С. Н. – М.: Гелиос АРВ, 2007, 351 с. Дополнительная литература: 1. Арсенъев Б. П., Яковлев С. А. Интеграция распределенных баз данных. — СПб.: Лань, 2001. 2. Кузнецов С.Д. Введение в СУБД. Часть 1,2 // Системы Управления Базами Данных, 2005. 3. Защита конфиденциальной информации / В.Я. Ищейнов, М.В. Мецатунян., Учебное пособие. М. : ФОРУМ, 2012, с. 256. 4. Комплексная система защиты информации на предприятии. / Н.В. Гришина., Учебное пособие. М. : ФОРУМ, 2011, с. 240. Практические задания: Задание 1. Провести настройку RAID массива с целью повышения безопасности данных посредством одновременной записи на два разных диска. Задание 2. Провести настройку Брандмауэра в Windows 7 или в Windows Server 2008 R2 для обеспечения повышенного уровня защиты. |