Методы и средства защиты информации от случайных воздействий

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

· повышение надежности деталей и узлов;

· построение надежных систем из менее надежных элементов за счет структурной избыточности (дублирование, утроение элементов, устройств, подсистем и т.п.);

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

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

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

Сравнительная характеристика методов ФК учитывает следующие факторы:

· надежность обнаружения;

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

· время, затрачиваемое на устранение случайных ошибок;

· количество дополнительного оборудования;

· способы применения (параллельно или с прерыванием обработки информации);

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

· указание места неисправности с необходимой точностью.

Программный контроль делится на программно-логический, алгоритмический и тестовый. Наиболее распространенная форма программно-логического контроля - это двойной счет со сравнением полученных результатов.

Алгоритмический контроль заключается в том, что задача, решенная по алгоритму, проверяется повторно по сокращенному алгоритму с достаточной степенью точности.

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

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

В настоящее время широкое применение находят методы аппаратного схемного контроля и комбинированный метод.

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

Контроль по модулю основывается на следующих принципах. Из теории чисел известно, что целое положительное число можно представить в виде сравнения:

А= rа(mоdМ) (1)

(считается: А сравнимо с остатком rа модуля М), которое устанавливает следующее соотношение между числами А, rа, и М:

А = Мl + rа
где А, М, I, rа - целые числа;

А -любое контролируемое n-разрядное число;

М-модуль или делитель;

l- частное;

rа - остаток от деления А на модуль М (контрольный код числа А).

При данном методе контроля каждому контролируемому члену придается еще т дополнительных разрядов, в которые записывается контрольный код, т.е. остаток rа. Если записать все числа в виде сравнения (1), то после этого их можно будет складывать, перемножать, а результаты, записывать в виде подобных сравнений.

В технической литературе схемы для контроля по модулю получили название «сверток». Эффективность контроля повышается с увеличением модуля. Однако с увеличением М непропорционально возрастает количество дополнительного оборудования и усложняются схемы контроля. Широкое распространение в вычислительных схемах получил контроль по модулю 2.

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

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

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

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

P1=nq(1-q)n-1

где q - вероятность появления ошибки в отдельном разряде в течение одной операции.

Вероятность появления двух кратной ошибки

P2=n(n-1)q2(1-q)n-2 / 2

Вероятность появления ошибок i-й кратности:

Pi=Cinqi(1-q)n-1

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

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

Pnр = n=1ΣnPi Рmnpj

где Рi - вероятность появления ошибки i-й кратности:

Рmnpj вероятность пропуска ошибки i-й кратности при выбранном методе аппаратного контроля.

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

1) время обнаружения и локализации, отказов аппаратуры с точностью до съемного элемента:

2) полнота контроля функционирования вычислительной системы:

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

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

Методы контроля при обработке информации в АСОИ классифицируют по параметрам:

· по количеству операций, охватываемых контролем, - единичный (одна операция), групповой (группа последовательных операций), комплексный (контролируется, например, процесс сбора данных);

· по частоте контроля - непрерывный, циклический, периодический, разовый, выборочный, по отклонениям;

· по времени контроля - до выполнения основных операций, одновременно с ними, в промежутках между основными операциями, после них;

· по виду оборудования контроля - встроенный, контроль с помощью дополнительных технических средств, безаппаратный;

· по уровню автоматизации - "ручной", автоматизированный, автоматический.

Различают системные, программные и аппаратные методы контроля достоверности.

Системные методы включают:

· оптимизацию структуры обработки;

· поддержание характеристик оборудования в заданных пределах;

· повышение культуры обработки;

· обучение и стимулирование обслуживающего персонала;

· создание оптимального числа копий и (или) предыстории программ исходных и текущих данных;

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

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

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

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

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

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

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

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

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

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

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

Известно, что отказы, сбои в аппаратуре и ошибки в ПО могут привести к нарушению функционирования вычислительной системы к разрушению и изменению информации на ложную. Анализ принятого в автоматизированных системах представления информации в цифровом виде показывает, что на один байт приходится одна буква, цифра или символ. Одно слово может занимать в русском языке от 1 до 20 букв. Каждой букве, цифре или символу присвоены двоичные коды. Таблица кодов составлена так, что пропадание или появление одной 1 в разрядах приводит к изменению одной буквы, (символа, цифры) на другую. При этом можно утверждать, что в этом случае имеет место однократная ошибка, которая относительно легко обнаруживается простыми средствами аппаратного контроля (например, контролем по модулю 2). В случае же появления двух кратной ошибки в байте измениться могут два разряда. Контроль по модулю 2 этого не обнаруживает, что уже может привести к незаметному изменению одной буквы на другую. В русском языке существуют слова, которые меняют свой смысл на другой при замене одной буквы другой. Это и есть модификация информации. При трехкратной ошибке вероятность этого события, увеличивается. Правда, вероятность появления трехкратной ошибки меньше по сравнению с двух кратной, но это слабый аргумент, так как ее величина при большом количестве аппаратных средств, интенсивности и накоплении их отказов может быть весьма ощутимой на большом отрезке времени работы вычислительной системы.

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

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

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

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

• изоляция областей доступа к информации;

• специальная организация работы с данными, хранящимися в памяти вычислительной системы.

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

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

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

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

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

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

Анализ изложенного позволяет отметить следующие особенности требований к средствам ФК и повышению достоверности с позиций защиты информации от НСД:

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

· определение зависимости безопасности информации от кратности ошибок при ее обработке.

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

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