» » » Как создается ОС, сертифицированная по I классу защиты

 

Как создается ОС, сертифицированная по I классу защиты

Автор: admin от 19-06-2019, 12:05, посмотрело: 103

Рассказ из первых рук о том, как создается, а потом готовится к сертификации для работы с данными под грифом «особой важности» защищенная ОС Astra Linux.



Как создается ОС, сертифицированная по I классу защиты
обычные дистрибутивы, так и защищенные (Special Edition), ориентированные на работу с конфиденциальными данными, сертифицированные по требованиям безопасности информации всех систем сертификации России. С точки зрения пользовательского набора функций версии почти не различаются. Однако система защиты в них выстроена по-разному. Некоторые компоненты специальной версии, требующиеся для работы с конфиденциальными данными, хотя они и не обязательно избыточны для обычных пользователей и бизнеса, в обычную версию не включены,, т.к. нормативная и правовая база Российской Федерации требует их обязательной сертификации.



Базовая версия — что и для кого



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



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



Как создается ОС, сертифицированная по I классу защиты


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



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



Специальная версия



Помимо обычных версий, у Astra Linux есть так называемые специальные версии — Special Edition, которые разрабатываются с расчетом на сертификацию ФСТЭК России и других систем сертификации. С точки зрения пользовательского функционала специальная версия практически ничем не отличается от обычной. Однако в ней реализованы дополнительные компоненты для повышения безопасности (как раз самописные), в частности:




  • мандатная модель управления доступом (MAC) и контроля целостности (MIC), когда все компоненты системы иерархически разделяются по степени важности для ее безопасности от самых недоверенных, пользовательских (уровень целостности 0), до системных, административных (уровень целостности по умолчанию 63);


  • автоматическая проверка электронной цифровой подписи любого файла в системе для защиты от несанкционированного изменения. Фактически механизм ЭЦП может блокировать не только отдельные файлы, но даже скрипты, написанные в любом текстовом редакторе на языках вроде Python или Perl. При попытке запуска или открытия файла модуль, висящий в памяти, на лету проверяет корректность ЭЦП и принимает решение о возможности запуска. В случае со скриптами ЭЦП помещается не в сам скрипт, а в расширенные атрибуты файловой системы. Отдельно хотелось бы отметить использование термина «электронно-цифровая подпись» в отношении реализованной функции безопасности. Такое наименование намеренно взято из национального стандарта ГОСТ Р 34.10 и используется в нашей документации и справочных материалах в целях четкого отделения реализованной в Astra Linux функции безопасности от задачи обеспечения юридической значимости электронного документа, решаемой соответствующими средствами создания и проверки электронной подписи;




Как создается ОС, сертифицированная по I классу защиты



  • режим киоска, на уровне ядра разрешающий запуск строго определенного набора приложений;


  • ограничение работы с интерпретируемыми языками программирования;


  • ограничение доступа пользователей к консоли;


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


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




Разумеется, это не полный список. Есть масса других модулей и компонентов. Все эти инструменты работают независимо друг от друга, обеспечивая эдакое эшелонирование системы безопасности. Все перечисленные функции безопасности реализованы на основе оригинальных отечественных разработок в области компьютерной безопасности без использования разработанного АНБ США SELinux.



Как создается ОС, сертифицированная по I классу защиты


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



Как создается ОС, сертифицированная по I классу защиты


Как создается ОС, сертифицированная по I классу защиты
Текущая версия Astra Linux Special Edition — Смоленск 1.6.



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



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



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



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



В зависимости от функционала информационных систем вопросами их сертификации на возможность использования в работе с важными данными занимаются различные ведомства. К примеру, сертификацией средств защиты информации занимается ФСТЭК России. Однако свои системы сертификации средств защиты также имеют ФСБ и Минобороны. К слову, Astra Linux Special Edition — единственная ОС, обладающая всеми сертификатами в нашей стране.



Как создается ОС, сертифицированная по I классу защиты


Как создается ОС, сертифицированная по I классу защиты


Как создается ОС, сертифицированная по I классу защиты


Степени секретности



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



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



Вот пример реакции системы на включение политики MLS (multi level security) в SELinux в дистрибутиве Fedora:



Как создается ОС, сертифицированная по I классу защиты


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



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




  • идентификация и аутентификация;


  • управление доступом;


  • регистрация событий безопасности;


  • ограничение программной среды;


  • изоляция процессов;


  • защита памяти;


  • контроль целостности;


  • обеспечение надежного функционирования;


  • фильтрация сетевого потока




Как создается ОС, сертифицированная по I классу защиты


Подготовка к сертификации



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



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



Самое главное, что произошло за эти полгода — Astra Linux Special Edition прошла многоуровневую процедуру проверки и анализа программного кода. При этом разные части продукта проверялись по-разному.



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



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



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



Как создается ОС, сертифицированная по I классу защиты


Сертификация определяет не только, как выглядит код Astra Linux, но и каким образом продукт (точнее его специальная версия) поставляется пользователю — она распространяется только на дисках. Это связано как с ограничениями нормативных документов: чтобы подтвердить, что программный код не был изменен, так и реальными задачами по долговременному хранению оригинального носителя. Технически это может быть и флешка, но они имеют свойство ломаться, тогда как хранение на оптическом диске более предсказуемо (да и есть гарантия от перезаписи).



Что с конкурентами?



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



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



Если оценивать научно-технический потенциал компаний, то теоретически сертификацию в России могли бы пройти продукты Microsoft. Компания обладает нужными ресурсами и компетенциями, они даже рассказывают о важности задачи верификации кода на YouTube. Однако открыть исходники они вряд решаться. И тем более не будут дорабатывать свою модель безопасности под российские требования (напомню, в США иной список требований к государственной сертификации).



Возможно, тем же путем мог бы пойти Google и Лаборатория Касперского с их проектом защищенной Kaspersky OS.Однако у нас информации на их счет нет. Выйти на сертификацию по второму классу пыталась компания «Базальт». Но нам пока не ясно, есть ли у них технический и научный потенциал.



Кто использует Astra?



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



Серийный продукт — в данном случае Astra Linux Special Edition — дешевле, логичнее, современнее, хоть и требует от администраторов прохождения этапа обучения. Иначе будет сложно настраивать систему безопасности, которой нет аналогов в ПО для широкого круга пользователей.



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

Источник: Хабр / Интересные публикации

Категория: Linux

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

Добавление комментария

Имя:*
E-Mail:
Комментарий:
Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Выбор цвета | Скрытый текст Вставка цитаты Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера
Введите два слова, показанных на изображении: *