Криптоком: РД "Классификация по уровню контроля отсутствия НДВ"

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

Введение

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

О серьезности ситуации сообщает ФСБ России: сумма ущерба, нанесенная злоумышленниками за несколько лет по всему миру составила от $300 млрд до $1 трлн. По сведениям, представленным Генеральным прокурором РФ, только за первое полугодие 2017 г. в России количество преступлений в сфере высоких технологий увеличилось в шесть раз, общая сумма ущерба превысила $ 18 млн. Рост целевых атак в промышленном секторе в 2017 г. отмечен по всему миру. В частности, в России прирост числа атак по отношению к 2016 г. составил 22 %.

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

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

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

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

Как защитить информацию в таких условиях? Соответствующие требования предъявляют уполномоченные органы, в частности, ФСТЭК и ФСБ России. В рамках статьи постараемся отразить основные подходы к классификации СЗИ с учетом требований указанных регуляторов. Иные способы описания классификации СЗИ, отраженные в нормативных документах российских ведомств, а также зарубежных организаций и агентств, выходят за рамки настоящей статьи и далее не рассматриваются.

Статья может быть полезна начинающим специалистам в области информационной безопасности в качестве источника структурированной информации о способах классификации СЗИ на основании требований ФСТЭК России (в большей степени) и, кратко, ФСБ России.

Структурой, определяющей порядок и координирующей действия обеспечения некриптографическими методами ИБ, является ФСТЭК России (ранее - Государственная техническая комиссия при Президенте Российской Федерации, Гостехкомиссия).

Если читателю приходилось видеть Государственный реестр сертифицированных средств защиты информации , который формирует ФСТЭК России, то он безусловно обращал внимание на наличие в описательной части предназначения СЗИ таких фраз, как «класс РД СВТ», «уровень отсутствия НДВ» и пр. (рисунок 1).

Рисунок 1. Фрагмент реестра сертифицированных СЗИ

Классификация криптографических средств защиты информации

ФСБ России определены классы криптографических СЗИ: КС1, КС2, КС3, КВ и КА.

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

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

В случае возможности противостоять атакам при наличии физического доступа к средствам вычислительной техники с установленными криптографическими СЗИ говорят о соответствии таких средств классу КС3.

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

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

Классификация средств защиты электронной подписи

Средства электронной подписи в зависимости от способностей противостоять атакам принято сопоставлять со следующими классами: КС1, КС2, КС3, КВ1, КВ2 и КА1. Эта классификация аналогична рассмотренной выше в отношении криптографических СЗИ.

Выводы

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

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

Начну, пожалуй, с середины - с проверки, которая называется "Контроль соответствия исходных текстов ПО его объектному (загрузочному) коду", данная проверка присутствует на всех уровнях контроля и одинакова для всех уровней, кроме первого - на нем появляется дополнение "с использованием сертифицированных компиляторов".

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

Итак, контроль соответствия исходных текстов объектному. Что же это такое? Всё просто - разработчик передает в испытательную лабораторию исходные тексты ПО и дистрибутив, при этом лаборатория должна убедиться, что исходные тексты соответствуют дистрибутиву. Сделать это, казалось бы, очень просто - компилируем исходные тексты, получаем объектные файлы, сравниваем их с дистрибутивом. Но на практике всё оказывается сложнее, разные компиляторы и сборщики работают по-разному.

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

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

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

Общая методика такова - контроль соответствия исходных текстов ПО его объектному (загрузочному) коду проводится с использованием программного комплекса фиксации и контроля исходного состояния ФИКС (или АК-ВС, ПИК и т.д.) путем выбора режима работы «Сравнение файлов» с настройкой «для *.exe». В случае обнаружения расхождений при сравнении файлов, данные файлы повторно сравниваются с помощью утилиты адаптивного сравнения бинарных файлов. Данное средство анализирует смещение блоков в бинарных файлах.

Средство написано на PHP, запускается из командной строки с двумя параметрами - путями к сравниваемым объектным файлам. Пример вывода (результатов работы):

Comparing file1.exe to file2.exe .

272700/272700 errors: 0 , warnings: 0

Warnings: 0/272700

Значения «Forward deep» и «Backward deep» - настраиваемые величины, дальность поиска блока в байтах, значение «Block size» - размер блоков. Данные величины подбираются экспертом в зависимости от типа бинарного файла и среды разработки и изменяются в коде файла bindiff.php с помощью любого текстового редактора. Возвращаемое значение «Errors» - количество различающихся байт, «Warnings» - количество передвижений блоков.

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

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

Утилита доступна на GitHub , лицензия - GNU GPL v.3. Форки, пуллреквесты и комментарии приветствуются.

Что касается правильности такого метода проверки с точки зрения органов по сертификации и федеральных органов, вопрос открытый. Я использовал эти проверки при проведении испытаний в системе сертификации МинОбороны и вопросов к данному методу со стороны сотрудников федерального органа по сертификации и привлеченных экспертов не последовало. Но система сертификации ФСТЭК отличается от МинОбороны, как минимум, в ней есть еще и обычные органы по сертификации, которые проверяют результаты испытаний, поэтому гарантировать прохождение данной проверки в таком виде я не могу.

Коллеги, прошу высказывать своё мнение по данной проверки и возможности её использования при сертификации в системе ФСТЭК.

Контроль недекларированных возможностей

Максим Репин
Специалист ОАО "Концерн "БЕГА"

Анастасия Сакулина
Специалист ОАО "Концерн "БЕГА"

В наше время в связи с увеличением случаев утечек конфиденциальной информации (КИ) основным становится вопрос о ее надежной защите.

В отличие от государственной тайны и персональных данных, документы регуляторов в области защиты КИ носят рекомендательный характер, поэтому возникает естественный вопрос: следовать им или нет?

Рассмотрим необходимость и целесообразность сертификации средств защиты КИ по уровням контроля отсутствия недекларированных возможностей (НДВ).

Уровни контроля отсутствия НДВ

Существуют четыре уровня контроля отсутствия НДВ. Для защиты КИ обычно используют 4-й уровень, но также можно использовать и 3-й уровень, включающий более тщательный анализ отсутствия НДВ.

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

Мы часто слышим следующие аргументы в пользу сертификации:

  • сертифицированное ПО корректно выполняет свои функции защиты информации;
  • сертифицированное ПО гарантирует отсутствие встроенных механизмов, которые могут нанести вред информации заказчика.

На практике наличие сертификата у ПО не всегда обеспечивает выполнение этих утверждений.

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

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

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

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

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

Парадокс проблемы наличия в продукте программных закладок (ПЗ)

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

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

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

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

Статьи по теме

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

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

Уровень контроля определяется выполнением заданного настоящим РД набора требований, предъ­являемого:

    к составу и содержанию документации, представляемой заявителем для проведения испытаний ПО СЗИ

Руководящий документ разработан в дополнение РД «Средства вычислительной техники. Защита от несанкционированного доступа к информации. Показатели защищенности от несанкционированного доступа к информации», М., Военное издательство, 1992 г.,

РД «Автоматизированные системы. Защита от несанкционированного доступа к информации. Классификация автоматизированных систем и требования по защите информации», М., Военное издательство,

1992 г. и РД «Средства вычислительной техники. Межсетевые экраны. Защита от несанкционированного доступа к информации. Показатели защищенности от несанкционированного доступа к информации»,М., 1997 г.

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

1. Общие положения

1.1. Классификация распространяется на ПО, предназначенное для защиты информации ограниченного доступа.

1.2. Устанавливаетсячетыре уровня контроля отсутствия недекларированных возможностей. Каждый уровень характеризуется определенной минимальной совокупностью требований.

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

1.4 . Самый высокий уровень контроля –первый , достаточен для ПО, используемого при защите информации с грифом «ОВ».

Второй уровень контроля достаточен для ПО, используемого при защите информации с грифом «CC».

Третий уровень контроля достаточен для ПО, используемого при защите информации с грифом «C».

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

2. Термины и определения

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

2.6.Фактический маршрут выполнения функциональных объектов – последовательность фактически выполняемых функциональных объектов при определённых условиях (входных данных).