Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Контроль целостности программной структуры в процессе эксплуатации



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

Контроль целостности программных средств и данных осуществляется путем получения (вычисления) характеристик и сравнения их с контрольными характеристиками. Контрольные характеристики вычисляются при каждом изменении соответствующего файла. Характеристики вычисляются по определенным алгоритмам. Наиболее простым алгоритмом является контрольное суммирование. Контролируемый файл в двоичном виде разбивается на слова, обычно состоящие из четного числа байт. Все двоичные слова поразрядно суммируются с накоплением по mod2, образуя в результате контрольную сумму. Разрядность контрольной суммы равняется разрядности двоичного слова. Алгоритм получения контрольной суммы может отличаться от приведенного, но, как правило, не является сложным и может быть получен по имеющейся контрольной сумме и соответствующему файлу.

Другой подход к получению характеристик целостности связан с использованием циклических кодов. Суть метода состоит в следующем. Исходная двоичная последовательность представляется в виде полинома F(x) степени n-1, где n - число бит последовательности. Для выбранного порождающего полинома P(x) можно записать равенство:

где m - степень порождающего полинома,

G(x) - частное, а R(x) - остаток от деления F(x)∙ xm на Р(x),

- сложение по модулю 2 (исключающее «ИЛИ», XOR, «сумма по модулю 2»).

Из приведенного соотношения можно получить новое выражение:

Из последнего выражения можно сделать вывод:

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

При контроле целостности информации контролируемая последовательность (сектор на диске, файл и т. д.), сдвинутая на m разрядов, делится на выбранный порождающий полином, и запоминается полученный остаток, который называют синдромом. Синдром хранится как эталон. При контроле целостности к полиному контролируемой последовательности добавляется синдром и осуществляется деление на порождающий полином. Если остаток от деления равен нулю, то считается, что целостность контролируемой последовательности не нарушена. Обнаруживающая способность метода зависит от степени порождающего полинома и не зависит от длины контролируемой последовательности. Чем выше степень полинома, тем выше вероятность определения изменений d, которая определяется из соотношения: d =1/2m.

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

Задача злоумышленника усложнится, если использовать переменную длину двоичной последовательности при подсчете контрольной характеристики, а характеристику хранить в зашифрованном виде или вне АС (например, в ЗУ Touch Memory).

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

Пусть требуется проконтролировать целостность двоичной последовательности А=1010010. Используется порождаемый полином вида: Р(х)=х3+х+1.

А. Получение контрольной характеристики.

GА(х) = 1∙ х6+0∙ х5+1∙ х4+0∙ х3+0∙ х2+1∙ х1+0∙ х0 = x64+х.

GA(х)∙ х3 = х974.

При вычислении синдрома RA(х) действия выполняются по правилам деления полиномов, заменяя операцию вычитания операцией сложения по модулю:

Двоичная последовательность с синдромом имеет вид:

А' = 1010010011 (синдром подчеркнут). Последовательность А' хранится и(или) передается в АС.

Б. Контроль целостности информации.

Если изменений последовательности А' = 1010010011 не произошло, то соответствующий ей полином должен разделиться на порождающий полином без остатка:

Результат произведенных вычислений свидетельствует о целостности информации.

Если синдром отличен от нуля, то это означает, что произошла ошибка при хранении (передаче) двоичной последовательности. Ошибка определяется и в контрольных разрядах (в синдроме).

Существует метод, который позволяет практически исключить возможность неконтролируемого изменения информации в АС. Для этого необходимо использовать хэш-функцию. Под хэш-функцией понимается процедура получения контрольной характеристики двоичной последовательности, основанная на контрольном суммировании и криптографических преобразованиях. Алгоритм хэш-функции приведен в ГОСТ Р34.11-94. Алгоритм не является секретным, так же как и алгоритм используемого при получении хэш-функции криптографического преобразования, изложенного в ГОСТ 28147-89.

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

Итерационный процесс вычисления хэш-функции Н предусматривает:

· генерацию четырех ключей (слов длиной 256 бит);

· шифрующее преобразование с помощью ключей текущего значения Н методом простой замены (ГОСТ 28147-89);

· перемешивание результатов;

· поразрядное суммирование по mod2 слов длиной 256 бит исходной последовательности;

· вычисление функции Н.

В результате получается хэш-функция длиной 256 бит. Значение хэш-функции можно хранить вместе с контролируемой информацией, т. к., не имея стартового вектора хеширования, злоумышленник не может получить новую правильную функцию хеширования после внесения изменений в исходную последовательность. А получить стартовый вектор по функции хеширования практически невозможно.

Для каждой двоичной последовательности используются две контрольные характеристики: стартовый вектор и хэш-функция. При контроле по стартовому вектору и контролируемой последовательности вычисляется значение хэш-функции и сравнивается с контрольным значением.

 


Лекция 08(2 часа)

Тема:

«ЗАЩИТА ИНФОРМАЦИИ В АС ОТ НЕСАНКЦИОНИРОВАННОГО ДОСТУПА»

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

Для осуществления НСДИ злоумышленник не применяет никаких аппаратных или программных средств, не входящих в состав АС. Он осуществляет НСДИ, используя:

- знания о АС и умения работать с ней;

- сведения о системе защиты информации;

- сбои, отказы технических и программных средств;

- ошибки, небрежность обслуживающего персонала и пользователей.

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

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

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

Для блокирования несанкционированного исследования и копирования информации АС используется комплекс средств и мер защиты, которые объединяются в систему защиты от исследования и копирования информации (СЗИК).

Таким образом, СРД и СЗИК могут рассматриваться как подсистемы системы защиты от НСДИ.

 

 

§1. Система разграничения доступа к информации в АС

1.1. Управление доступом

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

Различают следующие операции с файлами:

‑ чтение (R);

‑ запись;

‑ выполнение программ (Е).

Операция записи в файл имеет две модификации. Субъекту доступа может быть дано право осуществлять запись с изменением содержимого файла (W). Другая организация доступа предполагает разрешение только дописывания в файл, без изменения старого содержимого (А).

В АС нашли применение два подхода к организации разграничения доступа:

‑ матричный;

‑ полномочный (мандатный).

Матричное управление доступом предполагает использование матриц доступа. Матрица доступа представляет собой таблицу, в которой объекту доступа соответствует столбец Oj, а субъекту доступа - строка Si. На пересечении столбцов и строк записываются операция или операции, которые допускается выполнять субъекту доступа i с объектом доступа j.

Матрица доступа

  O1 O2 Oj Om
S1 R R, W   E   R
S2 R, A -   R   E
           
Si R -   -   R
           
Sn R, W -   E   E

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

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

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

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

Мандатное управление позволяет упростить процесс регулирования доступа, так как при создании нового объекта достаточно создать его метку. Однако при таком управлении приходится за­вышать конфиденциальность информации из-за невозможности детального разграничения доступа.

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

1.2. Состав системы разграничения доступа

Система разграничения доступа к информации должна содержать четыре функциональных блока:

‑ блок идентификации и аутентификации субъектов доступа;

‑ диспетчер доступа;

‑ блок криптографического преобразования информации при ее хранении и передаче;

‑ блок очистки памяти.

Идентификация и аутентификация субъектов осуществляется в момент их доступа к устройствам, в том числе и дистанционного доступа.

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

Диспетчер доступа разграничивает доступ к внутренним ресурсам АС субъектов, уже получивших доступ к этим системам. Необходимость использования диспетчера доступа возникает только в многопользовательских АС.

Запрос на доступ i-ro субъекта и j-му объекту поступает в блок управления базой полномочий и характеристик доступа и в блок регистрации событий. Полномочия субъекта и характеристики объекта доступа анализируются в блоке принятия решения, который выдает сигнал разрешения выполнения запроса, либо сигнал отказа в допуске. Если число попыток субъекта допуска получить доступ к запрещенным для него объектам превысит определенную границу (обычно 3 раза), то блок принятия решения на основании данных блока регистрации выдает сигнал «НСДИ» администратору системы безопасности. Администратор может блокировать работу субъекта, нарушающего правила доступа в системе, и выяснить причину нарушений. Кроме преднамеренных попыток НСДИ диспетчер фиксирует нарушения правил разграничения, явившихся следствием отказов, сбоев аппаратных и программных средств, а также вызванных ошибками персонала и пользователей.

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

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


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-07-14; Просмотров: 1721; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.038 с.)
Главная | Случайная страница | Обратная связь