На главную страницу
На главную страницу Карта сайта Поиск по сайту Обратная связь
На страницы учебного центра
Организационно-правовые вопросы
Экономическая безопасность
Безопасность КИС
Защита речевой информации
Техническая защита объектов
Сертификация и лицензирование
Кадровая безопасность
Преступления в сфере высоких технологий
Нормативные документы
Полезные ресурсы

 

Об обеспечении защиты АИС от недокументированных возможностей программного обеспечения

 

С. П. Расторгуев

 

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

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

  • Документы Гостехкомиссии России устанавливают девять классов защищенности АИС от несанкционированного доступа (НСД), каждый из которых характеризуется определенной совокупностью требований к средствам защиты. Классы подразделяются на три группы, отличающиеся спецификой обработки информации в АС и определяемые на основании следующих признаков:
  • наличием в АИС информации различного уровня конфиденциальности;
  • уровнем полномочий пользователей АИС на доступ к конфиденциальной информации;
  • режимом обработки данных в АИС (коллективный или индивидуальный).

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

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

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

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

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

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

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

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

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

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

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

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

  • внести искажения, заблокировать доступ или уничтожить пользовательские данные;
  • создать скрытый канал и передавать (постоянно или по условию) через него пользовательские данные или данные о пользователе;
  • создать на заданное время «люк» для проникновения в систему извне.

 

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

1) поиск и устранение угроз, то есть выявление и устранение сбойных ситуаций и средств скрытого информационного воздействия;

2) устранение результатов реализации угрозы и восстановление требуемых режимов функционирования системы.

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

В приложении к практике программирования число тестовых прогонов программы, необходимых для прохода по каждой ветви, определяется цикломатическим числом Маккейба:

Z(G) = e – v + 2p,

где

е – число дуг ориентированного графа;

v – число вершин;

p – число компонентов связности графа.

Общее время анализа кода может быть оценено по формуле

t=kln (N/N 0),

где

k – коэффициент сложности анализа кода;

N – объем кода;

N 0 – начальные знания исследователя.

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

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

Как показывает практика тестирования сложного «закрытого» программного обеспечения, например операционных систем семейства Windows 4, за время их эксплуатации невозможно выявить, а значит, и устранить присущие им НС и ССИВ. При этом время «жизни» постоянно сокращается от 5 лет для Windows 3.0 до двух с половиной лет для Windows 95. Более того, согласно полученному опыту коллективного тестирования Windows 95, к моменту ее морального устаревания количество НС, ежедневно находимых пользователями, даже не начало снижаться. То же самое можно сказать и о Windows 98. Что же касается поиска ССИВ, то по данному семейству операционных систем (Windows 3.11) была найдена только одна классическая закладка коммерческого характера 5. Причем событие это произошло уже после завершения этапа бета-тестирования системы.

Таким образом, можно констатировать, что любые целенаправленные работы по первому направлению обеспечения защиты информации применительно к «закрытому» программному коду не могут завершиться результатом, на который можно было бы опереться при дальнейшем построении системы защиты. Деньги истрачены, время ведущих программистов потеряно, а полученный результат ничего и никому не будет гарантировать 6. К сожалению, в условиях ограниченного времени и ресурсов не существует однозначных критериев для оценки качества работы по анализу объемного кода, так как анализ не является полным. Следовательно, о нем можно сказать лишь, что «программный код почти не содержит НС и ССИВ». Вы можете представить ситуацию, когда сапер, закончив свою работу по разминированию, повесил табличку: «Проверено. Мин почти нет»?

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

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

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

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

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

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

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

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

Несанкционированное блокирование работы (действие 2) может быть преодолено путем резервирования «узких» мест за счет техники и программного обеспечения иных производителей.

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

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

Для тех АИС, где в приемлемое время устранить результаты реализации угрозы невозможно, следует применять техническую среду, «вычищенную» на 100 %. Это значит, что в данном случае может быть разрешено к использованию исключительно «открытое» программное обеспечение, прошедшее всеобъемлющее тестирование. Данное требование неизбежно приведет к тому, что процессы, нарушение работы которых может привести к опасным для человека последствиям, будут вычленены из более сложных систем и реализованы в объеме, поддающимся контролю в требуемое время с помощью специально разработанных и обладающих требуемой полнотой системой тестов.

Более того, разработчик и контролер программного обеспечения подобных АИС должны нести ответственность, закрепленную законодательно, не только за созданные умышленно ССИВ, но и за НС, оставшиеся в коде по их вине (один ошибся, другой не заметил ошибки). Безусловно, что в этой связи к разработчику и контролеру должны предъявляться определенные требования:

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

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

 

_______________________________________

1 Речь идет о понятии «нештатная ситуация», введенной В. В. Прудником, см статью в журнале «Проблемы информационной безопасности. Компьютерные системы», № 3, 2000.

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

3 Под «люком» понимается двусторонний канал, позволяющий не только скрытно от пользователя получать его данные, но передавать сообщения, в том числе управляющие, в пользовательскую среду.

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

5 Э. Шулман. «Исследуя AARD-код системы Windows» // Ж-л «Доктор Добба», № 3–4, 1994.

6 В. В. Прудник, проведя исследование изменения интенсивности обнаружения ошибок в Windows NT, сделал обоснованный вывод, что, несмотря на постоянное тестирование и выпуск многочисленных «заплаток», за все время эксплуатации системы ее надежность не увеличилась. «Оценка изменения надежности программного обеспечения в период эксплуатации» // Проблемы информационной безопасности. Компьютерные системы», № 2, 2000.

 

"Защита информации. Кофидент", № 2, 2001

 

| Начало | Новости | О проекте | О ЦПР | Правовая информация | Сотрудничество | Наши партнеры | Координаты |

Copyright © 2004-2016 ЧОУ ДПО «ЦПР». Все права защищены
info@cprspb.ru