- •Тема 2. Построение систем защиты от угрозы нарушения целостности информации
- •2.1 Принципы, обеспечивающие целостность данных в ис
- •2.2 Модель контроля целостности данных
- •2.3 Особенности обеспечения целостности информации в памяти в компьютерной системе
- •2.3.1 Особенности обеспечения целостности информации барьерных адресов
- •2.3.2 Особенности обеспечения целостности информации в динамических областях памяти
- •2.3.3 Особенности обеспечения целостности информации в адресных регистрах
- •2.3.4 Страницы и сегменты памяти
- •Тема 3. Построение систем защиты от угрозы отказа доступа к информации
2.1. Построение систем защиты от угрозы нарушения конфиденциальности информации
Организационно режимные меры. Защита от НСД. Построение парольных систем. Криптографические методы защиты. Защита от угрозы нарушения конфиденциальности на уровне содержания информации.
2.2. Построение систем защиты от угрозы нарушения целостности информации
Организационно-технологические меры защиты. Защита целостности программно-аппаратной среды. Основные методы защиты памяти. Цифровая подпись. Защита от угрозы целостности на уровне содержания информации.
2.3. Построение системы защиты от угрозы доступности информации
Эксплутационно-технологические меры защиты. Защита от сбоев программно-аппаратной среды. Защита семантического анализа и актуальности информации
1.6 Требования к средствам криптографической защиты информации
Криптографические требования. Будем полагать, что для раскрытия шифрованной информации злоумышленник может в любой момент после получения криптографически защищенной информации применить любой алгоритм дешифрования при максимальном использовании сведений и материалов, полученных при реализации вышеперечисленных угроз.
Эффективность применения злоумышленником алгоритмов определяется средней долей дешифрованной информации и, являющейся средним значением отношения количества дешифрованной информации к общему количеству шифрованной информации, подлежащей дешифрованию, и трудоемкостью дешифрования единицы информации, измеряемой Q элементарными опробованиями. Под элементарным опробованием, как правило, понимается операция над двумя n-разрядными двоичными числами. При реализации алгоритма дешифрования может использоваться гипотетический вычислитель, объем памяти которого не превышает М двоичных разрядов. За одно обращение к памяти, таким образом, может быть записано по некоторому адресу или извлечено не более п-бит информации. Обращение к памяти по трудоемкости приравнивается к элементарному опробованию.
За единицу информации принимаются общий объем информации, обработанной на одном СКЗИ в течение единицы времени. Атака злоумышленника на конфиденциальность информации (дешифрование) успешна, если объем полученной открытой информации больше V. Применение алгоритма считается неэффективным, если выполнено одно из условий: π< π о или Q > Q 0
Значение параметров π, Q, V, М и пороговые значения π о и Qo определяются для каждого СКЗИ отдельно.
Требования надежности. СКЗИ должны обеспечивать заданный уровень надежности применяемых криптографических преобразований информации, определяемый значением допустимой вероятности неисправностей или сбоев, приводящих к получению злоумышленником дополнительной информации о криптографическом преобразовании.
Эта криптографически опасная информация (КОИ) потенциально позволяет уменьшить фиксированные для конкретного СКЗИ параметры трудоемкости Qo при использовании некоторого алгоритма дешифрования.
При вычислении параметра Q учитываются затраты на определение только тех неисправностей, которые не выявляются до начала работы СКЗИ (например, если компьютер не загружается и СКЗИ не работает, то такой класс неисправностей не опасен).
Правильность функционирования технических средств АС, в рамках которых реализовано СКЗИ, определяется как соответствие выполнения элементарных инструкций (команд) описанному в документации. Ремонт и сервисное обслуживание СКЗИ также не должно приводить к ухудшению свойств СКЗИ в части параметров надежности.
Требования по защите от НСД для СКЗИ, реализованных в составе АС.
В АС, для которых реализуются программные или программно-аппаратные СКЗИ, при хранении и обработке информации должны быть предусмотрены следующие основные механизмы защиты от НСД:
• идентификация и аутентификации пользователей и субъектов доступа (программ, процессов);
• управление доступом;
• обеспечение целостности;
• регистрация и учет.
Подсистема идентификации и аутентификации предназначена для выделения и распознания пользователей, допущенных к работе с СКЗИ, на основе их индивидуальных аутентифицирующих признаков (паролей, аппаратных носителей и т. д.). В системе должно быть установлено ограничение на число следующих подряд неудачных попыток, достижение которого квалифицируется как факт НСД. Ложная аутентификация понимается как событие "принять незарегистрированного в системе пользователя за одного из легальных пользователей" при случайном равновероятном выборе без возвращения аутентифицирующего признака пользователя из множества возможных.
Подсистема управления доступом осуществляет контроль потоков информации между субъектами и объектами доступа и обеспечивает проверку выполнения правил доступа пользователей к компонентам СКЗИ.
Подсистема обеспечения целостности осуществляет контроль неизменности программных механизмов защиты от НСД (в том числе, алгоритма функционирования программного компонента СКЗИ) в соответствии с правилами управления доступом.
Подсистема регистрации и учета должна обеспечивать регистрацию параметров процесса идентификации и аутентификации пользователей, выдачи документов на внешний материальный носитель (дискету, твердую копию и др.), запуска (завершения) программ и процессов, предназначенных для обработки защищаемых файлов, попыток доступа программных средств к защищаемым файлам. Должен осуществляться автоматический учет создаваемых защищаемых файлов, защищаемых носителей информации. Подсистема регистрации и используемые в ней данные должны быть в числе объектов контроля доступа.
Требования к средам разработки, изготовления и функционирования СКЗИ.
Аппаратные средства, на которых реализуются программные или программно-аппаратные СКЗИ, и программно-аппаратная среда (программно-аппаратное окружение), в которой разрабатываются, изготавливаются и эксплуатируются СКЗИ, не должны иметь явных и скрытых функциональных возможностей, позволяющих:
• модифицировать или изменять алгоритм работы СКЗИ в процессе их разработки, изготовления и эксплуатации;
• модифицировать или изменять информационные или управляющие потоки и процессы, связанные с функционированием СКЗИ;
• осуществлять доступ (чтение и модификацию) посторонних лиц (либо управляемых ими процессов) к ключам и идентификационной, и аутен-тификационной информации; • получать доступ к конфиденциальной информации СКЗИ.
Состав и назначение программно-аппаратных средств должны быть фиксированы и неизменны в течение всего времени, определенного в заключении о возможности использования.
1.7 Способы и особенности реализации криптографических подсистем
Возможны два подхода к процессу криптографической защиты (в основном к шифрованию) объектов компьютерной системы: предварительное и динамическое ("прозрачное") шифрование.
Предварительное шифрование<> состоит в зашифровании файла некой программой (субъектом), а затем расшифровании тем же или иным субъектом. Далее расшифрованный массив непосредственно используется прикладной программой пользователя. Данный подход имеет ряд недостатков, хотя и применяется достаточно широко.
Принципиальные недостатки метода предварительного шифрования:
• необходимость дополнительного ресурса для работы с зашифрованным объектом (дискового пространства - в случае расшифрования в я файл с другим именем, или времени); • потенциальная возможность доступа со стороны активных субъектов АС к расшифрованному файлу (во время его существования);
• необходимость задачи гарантированного уничтожения расшифрованного файла после его использования.
В последнее время широко применяется динамическое шифрование. Сущность динамического шифрования объектов компьютерной системы состоит в следующем. Происходит зашифрование всего файла (аналогично предварительному шифрованию). Затем с использованием специальных механизмов, обеспечивающих модификацию функций программного обеспечения компьютерной системы, выполняющего обращения к объектам, ведется работа с зашифрованным объектом. При этом расшифрованию подвергается только та часть объекта, которая в текущий момент времени используется прикладной программой. При записи со стороны прикладной программы происходит зашифрование записываемой части объекта.
Данный подход позволяет максимально экономично использовать вычислительные ресурсы АС, поскольку расшифровывается только та часть объекта, которая непосредственно нужна прикладной программе. Кроме того, на внешних носителях информация всегда хранится в зашифрованном виде, что исключительно ценно с точки зрения невозможности доступа к ней. Динамическое шифрование целесообразно, таким образом, применять для защиты разделяемых удаленных или распределенных объектов АС.
Динамическое шифрование файлов необходимо рассматривать в контексте защиты группового массива файлов - каталога или логического диска.
Можно показать, что метод динамического шифрования при условии инвариантности к прикладному программному обеспечению рабочей станции является оптимальным (обеспечивает минимальную вероятность доступа к незашифрованной информации) по сравнению с другими методами применения криптографических механизмов. Некоторой модификацией описанного метода является принцип прикладного криптосервера. При этом методе выделяется активный аппаратный компонент АС (как правило, выделенная рабочая станция), которая имеет общий групповой ресурс со всеми субъектами, требующими исполнения криптографических функций. При создании файла, принадлежащего общему ресурсу, и записи в него автоматически происходит его зашифрование или фиксация целостности. Кроме того, в прикладном криптосервере может быть реализована функция изоляции защищенного объекта-файла, состоящая в его перемещении в выделенный групповой массив (директория "исходящих" файлов). Процесс обратного преобразования (или проверки целостности) происходит аналогичным образом в других выделенных массивах.
Для субъекта рабочей станции этот процесс выглядит как автоматическое зашифрование (или интеграция цифровой подписи в файл) при записи в некоторую заранее указанную директорию на файловом сервере и появление зашифрованного файла в другой директории.
Тема 2. Построение систем защиты от угрозы нарушения целостности информации
2.1 Принципы, обеспечивающие целостность данных в ис
Понятие целостности данных в научной литературе определяется несколькими способами, описанию и сравнению которых посвящены отельные научные статьи. Под целостностью данных будем подразумевать отсутствие ненадлежащих изменений.Смысл понятия "ненадлежащее изменение" раскрывается Д.Кларком и Д.Вилсоном: «Ни одному пользователю ИС, в том числе и авторизованному, не должны быть разрешены такие изменения данных, которые повлекут за собой их разрушение или потерю». При рассмотрении вопроса целостности данных мы используем интегрированный подход (в определенном выше смысле), основанный на ряде работ Кларка и Вилсона, а также их последователей и оппонентов, и включающий в себя девять абстрактных теоретических принципов, каждый из которых раскрывается ниже:
корректность транзакций;
аутентификация пользователей;
минимизация привилегий;
разграничение функциональных обязанностей;
аудит произошедших событий;
объективный контроль;
управление передачей привилегий;
обеспечение непрерывной работоспособности;
простота использования защитных механизмов.
Понятие корректности транзакций определяется следующим образом. Пользователь не должен модифицировать данные произвольно, а только определенными способами, так, чтобы сохранялась целостность данных. Другими словами, данные можно изменять только путем корректных транзакций и нельзя произвольными средствами. Кроме того, предполагается, что "корректность" (в обычном смысле) каждой из таких транзакций может быть некоторым способом доказана. Принцип корректных транзакций по своей сути отражает основную идею определения целостности данных сформулированную выше.
Второй принцип гласит, что изменение данных может осуществляться только специально аутентифицированными для этой цели пользователями. Этот принцип работает совместно с последующими четырьмя, с которыми тесно связана его роль в общей схеме обеспечения целостности.
Идея минимизациипривилегий появилась еще на ранних этапах развития направления компьютерной безопасности в форме ограничения, накладываемого на возможности процессов, выполняющихся в ИС, и подразумевающего, что процессы должны быть наделены теми и только теми привилегиями, которые естественно и минимально необходимы для выполнения процессов. Практикам администрирования ОС UNIX это положение хорошо знакомо на примере правил использования учетной записи rot, обладающей неограниченными полномочиями. Принцип, согласно которому следует минимизировать назначаемые привилегии в строгом соответствии с содержанием выполняемой задачи, распространяется в равной мере как на процессы (работающие в системе программы), так и на пользователей системы.
Разграничение функциональных обязанностей подразумевает организацию работы с данными таким образом, что в каждой из ключевых стадий, составляющих единый критически важный с точки зрения целостности процесс, необходимо участие различных пользователей. Этим гарантируется, что один пользователь не может выполнить весь процесс целиком (или даже две его стадии) с тем, чтобы нарушить целостность данных. В обычной жизни примером воплощения данного принципа служит передача одной половины пароля для доступа к программе управления ядерным реактором первому системному администратору, а другой второму.
Как отмечено выше, принцип минимизации привилегий распространяется и на программы, и на пользователей. Последним, однако, на практике трудно назначить "теоретически достижимый" минимальный уровень привилегий по двум причинам. Во-первых, пользователи выполняют разнообразные задачи, требующие различных привилегий. Во-вторых, если строгое соблюдение принципа минимизации в отношении процессов связано с соображениями стоимости и производительности, то в отношении пользователей оно, скорее, затрагивает вопросы этики и морали, а также удобства и эффективности работы -это факторы, которые не поддаются точной количественной оценке. Поэтому пользователи будут, как правило, иметь несколько больше привилегий, чем им необходимо для выполнения конкретного действия в данный момент времени. А это открывает возможности для злоупотреблений. Аудит произошедших событий (включая возможность восстановления полной картины происшедшего) является превентивной мерой в отношении потенциальных нарушителей.
Принцип объективного контроля, согласно, также является одним из краеугольных камней политики контроля целостности. Суть данного принципа заключается в том, что контроль целостности данных имеет смысл лишь тогда, когда эти данные отражают реальное положение вещей. Очевидно, что нет смысла заботиться о целостности данных, связанных с размещением боевого арсенала, который уже отправлен на переплавку. В связи с этим Кларк и Вилсон указывают на необходимость регулярных проверок, целью которых является выявление возможных несоответствий между защищаемыми данными и объективной реальностью, которую они отражают.
Управление передачей привилегий необходимо для эффективной работы всей политики безопасности. Если схема назначения привилегий неадекватно отражает организационную структуру предприятия или не позволяет администраторам безопасности гибко манипулировать ею для обеспечения эффективности производственной деятельности, защита становится тяжким бременем и провоцирует попытки обойти ее там, где она мешает "нормальной" работе.
С некоторыми оговорками иногда в зарубежной научной литературе в основу контроля целостности закладывается и принцип обеспечения непрерывной работы (включая защиту от сбоев, стихийных бедствий и других форс-мажорных обстоятельств), который в классической теории компьютерной безопасности относится, скорее, к проблеме доступности данных.
В основу последнего девятого принципа контроля целостности - простота использования защитных механизмов—заложен ряд идей, призванных обеспечить эффективное применение имеющихся механизмов обеспечения безопасности. На практике зачастую оказывается, что предусмотренные в системе механизмы безопасности некорректно используются или полностью игнорируются системными администраторами по следующим причинам:
• неправильно выбранные производителем конфигурационные параметры по умолчанию обеспечивают слабую защиту;
• плохо разработанные интерфейсы управления защитой усложняют использование даже простых средств безопасности;
• имеющиеся средства безопасности не обеспечивают адекватный уровень контроля за системой;
• реализация механизмов безопасности плохо соответствует сложившемуся у администраторов интуитивному их пониманию;
• отдельные средства защиты плохо интегрированы в общую схему безопасности;
• администраторы недостаточно осведомлены о важности применения конкретных механизмов защиты и их особенностях.
Простота использования защитных механизмов подразумевает, что самый безопасный путь эксплуатации системы будет также наиболее простым, и наоборот, самый простой - наиболее защищенным.