Лекция №5

Защищенные операционные системы семейства Linux

Введение

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

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

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

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

В современных условиях перспективная отечественная защищённая ОС должна отвечать следующим требованиям:

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

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

 Учебные вопросы (основная часть):

1.Обзор защищенных операционных систем семейства Linux

Принято считать, что ОС Linux (точнее, GNU/Linux) была создана в 1991 г. 21-летним финским программистом Линусом Торвальдсом. Фактически Л. Торвальдс переписал с нуля ядро ОС Minix, ничем не примечательного «клона» ОС семейства UNIX.

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

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

При сравнении ОС семейства Linux с более популярными ОС семейств Microsoft Windows или Mac OS бросается в глаза характерная особенность Lin ux-систем — они первоначально в большей мере были ориентированы на профессиональных высококвалифицированных пользователей. Заметная доля действий, необходимых для настройки системы, а в некоторых случаях и для приведения её в работоспособное состояние, выполняется путём ручного редактирования конфигурационных файлов, редактирования или написания с нуля различных скриптов и т. д. По этой причине ранние версии ОС семейства Linux были практически недоступны массовому пользователю, сейчас этот недостаток в основном преодолён, современные версии ОС семейства Linux требуют лишь минимального обучения.

Часто пользователи даже не знают, что работают именно с ОС этого семейства, так, например, популярная мобильная ОС Android фактически представляет собой пакет системного ПО, развёрнутого на платформе ОС семейства Linux.

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

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

  • все объекты (сущности) доступа должны интерпретироваться как файловые объекты, атрибуты защиты других типов объектов не могут корректно описываться штатными средствами ОС;
  • не поддерживаются глобальные уникальные идентификаторы учётных записей пользователей, все идентификаторы пользователей и групп уникальны только в пределах одного экземпляра ОС:
  • набор прав доступа субъектов (процессов) к сущностям (файлам, каталогам) сильно ограничен, поддерживаются только три права доступа: чтение, запись и выполнение, а также задаётся владелец каждой сущности;
  • полномочия суперпользователя root практически неограниченны;
  • отсутствуют механизмы автоматического назначения атрибутов защиты вновь создаваемым сущностей на основе атрибутов защиты контейнеров (каталогов), где эти сущности создаются;
  • для динамического изменения полномочий субъектов доступа применяется неудобный и потенциально опасный механизм SUID/SGID;
  • не поддерживаются механизмы олицетворения субъектов доступа, осуществляющих клиентский доступ к процессу-серверу;
  • не поддерживается автоматическая генерация сообщений аудита при обращениях определённых субъектов к определенным сущностям;
  • поддерживаемые средства минимизации полномочий пользователей крайне примитивны;
  • не поддерживается мандатный контроль целостности;
  • не поддерживается изолированная программная среда, даже частично.

Отдельно стоит отметить проблемы безопасности графического интерфейса X Window System, используемого в современных версиях ОС семейства Linux для взаимодействия с процессами пользователей. Энтузиасты ОС семейства Linux любят критиковать ОС семейства Microsoft Windows за недостаточную защищённость её графической подсистемы, например: «В ОС Microsoft Windows NT любой процесс независимо от уровня своих привилегий может послать сообщение окну другого процесса (в том числе и более привилегированного!), причём нет никакой возможности установить отправителя сообщения!… Находим окно какого-нибудь привилегированного приложения (а такая возможность у нас есть), получаем дескриптор интересующего нас элемента управления (кнопки, пункта меню, строки редактирования) и… эмулируем ввод пользователя!!! Привилегированный процесс все сделает за нас, так ничего при этом и не заподозрив!».

На самом деле указанная проблема характерна не только для ОС семейства Microsoft Windows. Еще в 1994 г. Р. Браатен в нашумевшем в свое время сообщении в конференции comp.security. Unix сформулировал угрозу похищения графическим приложением X Window System конфиденциальной информации, адресованной другому графическому приложению. В ОС семейства Microsoft Windows, начиная с ОС Windows Vista, введён мандатный контроль целостности графических сущностей, значительно повысивший защищённость графической подсистемы, однако в X Window System ничего подобного не произошло.

Попытки построить на базе ОС семейства Linux защищённую ОС неоднократно предпринимались как в России, так и за рубежом. Исторически можно считать, что первым проектом в данном направлении является ОС Linux-Mandrake Russian Edition, разрабатывавшаяся группой энтузиастов в 1999-2000 гг. и в дальнейшем «выросшая» в проект ОС ALT Linux, поддерживаемый компанией «Альт Линукс». Начиная с 2005 г., дистрибутив ОС ALT Linux является полностью самостоятельным. Подсистема безопасности ОС ALT Linux имеет несколько интересных нововведений (раздельное хранение аутентификационных данных разных пользователей, минимизация количества SUID- и SGID-программ), которые, однако, не оказывают существенного влияния на общую защищённость ОС. Исходя из этого, можно предположить, что разработчики ОС ALT Linux ориентируются на применение данной ОС главным образом в тех организациях, где к безопасности хранимой и обрабатываемой информации не предъявляется высоких требований (например, в школах, университетах и т. д.).

Suid, setuid и setgid (сокращение от «set user ID upon execution» (установка ID пользователя во время выполнения) и «set group ID upon execution» (установка ID группы во время выполнения), соответственно) являются Unix флагами прав доступа, которые разрешают пользователям запускать исполняемые файлы соответственно с правами владельца или группы исполняемого файла.

В Unix-подобных системах приложение запускается с правами пользователя, вызвавшего указанное приложение. Это обеспечивает дополнительную безопасность, так как процесс с правами пользователя не сможет получить доступ на запись к важным системным файлам, например /etc/passwd, который принадлежит суперпользователю root. Если на исполняемый файл установлен бит suid, то при выполнении эта программа автоматически меняет «эффективный userID» на идентификатор того пользователя, который является владельцем этого файла. То есть, независимо от того — кто запускает эту программу, она при выполнении имеет права хозяина этого файла.

Бит suid был изобретен Деннисом Ритчи и запатентован в США компанией AT&T в 1979 году. Позже, патент 4135240 «Protection of data file contents» был выложен в свободный доступ.

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

Первой попыткой построить на базе ОС семейства Linux высокозащищённую ОС, по всей видимости, стала ОС «Феникс», разрабатывавшаяся в Санкт-Петербургском государственном политехническом университете начиная с 2001 г. Данная ОС ограниченно применялась в ЗАО «Инфосистемы Джет».

Какое-то время самой защищённой российской ОС семейства Linux являлась Мобильная система вооружённых сил (МСВС), разработанная по заказу Минобороны России Всероссийским научно-исследовательским институтом автоматизации управления в непромышленной сфере (ВНИИНС) на основе ОС Red Hat Enterprise Linux. ОС МСВС была принята на снабжение вооружённых сил в 2002 г. На протяжении многих лет она широко применялась в самых различных компьютерных системах военного и двойного назначения, существуют её настольные и серверные версии, предназначенные для функционирования на обычных бытовых компьютерах. Последняя на сегодняшний день версия МСВС 5.0, сертифицированная в 2011 г., содержит ядро Linux версии 2.6.32 и ,библиотеку glibc версии 2.5 сборки 2006 г.

glibc — GNU C Library (GNU библиотека). Glibc является библиотекой Си, которая обеспечивает системные вызовы и основные функции, такие как open, malloc, printf и т. д. Библиотека C используется для всех динамически скомпонованых программ. Она написана Free Software Foundation для операционных систем GNU. glibc выпущена под лицензией GNU LGPL.

Установка дополнительного ПО в МСВС серьёзно затруднена.

В 2006 г. в Китае начались поставки в военные и государственные учреждения ОС Kylin, разработанной китайским Национальным университетом оборонных технологий на базе ОС FreeBSD. Название ОС означает мифическое животное, часто упоминающееся в китайском фольклоре наряду с драконом и фениксом. Дистрибутив ОС Kylin некоторое время был доступен для скачивания, по мнению экспертов, данная ОС не содержит каких-либо выдающихся защитных механизмов, никто не упоминает о поддержке в ней мандатного управления доступом, мандатного контроля целостности, изолированной программной среды и т. п. В 2013 г. официально стартовал проект ОС Ubuntu Kylin, по всей видимости, не имеющий ничего общего с ОС Kylin, кроме названия. ОС Ubuntu Kylin представляет собой версию ОС Ubuntu Linux с полнофункциональной поддержкой китайского языка и несколькими предустановленными приложениями, специфичными для Китая (лунный календарь, упрощённый доступ к китайским социальным сетям, поставщикам китайской музыки и т. п.).

Дистрибутив доступен на сайте www.ubuntukylin.com.

Есть сведения, что обычный дистрибутив Ubuntu легко превращается в ОС Ubuntu Kylin в результате установки нескольких дополнительных пакетов ПО. Нет никаких сведений, что подсистема безопасности данной ОС чем-либо отличается от подсистемы безопасности ОС Ubuntu Linux.

Семейство отечественных ОС «РОСА» производится с 2009 г. группой компаний «РОСА» на основе ОС Mandriva Linux, являясь в настоящее время последней поддерживаемой её ветвью. Семейство ОС «РОСА» включает в себя сертифицированные защищённые ОС «РОСА Хром» и «РОСА Никель», (заявлена поддержка мандатного управления доступом), «РОСА Кобальт», а также несколько свободно распространяемых дистрибутивов, потребительские качества которых оцениваются пользователями довольно высоко. Весной 2015 г. «НТЦ ИТ РОСА» вошла в число пяти российских компаний, подавших заявку на государственную поддержку отечественных программных продуктов.

В 2010 г. знаменитая польская исследовательница безопасности ОС Иоанна Рутковска объявила, что ведёт разработку защищённой ОС Qubes, основанной на ОС Fedora Linux. Дополнительные средства защиты данной ОС основаны на инкапсуляции прикладных и системных программ в отдельные виртуальные машины, взаимодействие которых реализуется посредством гипервизора Хеn.

Гипервизор (англ. Hypervisor; от др.-греч. ὑπέρ «над, выше, сверх» + лат. vīsio «зрение; видение») или монитор виртуаьных машин (в компьютерах) — программа или аппаратная схема, обеспечивающая или позволяющая одновременное, параллельное выполнение нескольких операционных систем на одном и том же хост-компьютере. Гипервизор также обеспечивает изоляцию операционных систем друг от друга, защиту и безопасность, разделение ресурсов между различными запущенными ОС и управление ресурсами.

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

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

Передача данных между виртуальными машинами в ОС Qubes осуществляется на основе общесистемной политики безопасности, потенциально способной поддерживать мандатное управление доступом, мандатный контроль целостности, изолированную программную среду и т. п. Для пользователя наличие этой политики становится заметным только в том случае, если он попытается её нарушить, иначе работа пользователя выполняется как в обычной ОС Fedora Linux. Окна программ, принадлежащих к разным виртуальным машинам, выполняются на общем рабочем столе, как при включённом seamless mode в ПО Virtual Box (в русскоязычной локализации этот режим называется «Режим интеграции дисплея»).

Позже похожая идея была реализована отечественной компанией «НеоБИТ», изготовившей гибридную ОС «Linux over Febos», в которой прикладные программы выполняются в виртуальных машинах ОС Linux, выступающих, в свою очередь, в роли прикладных программ ОС «Фебос» — собственной разработки «НеоБИТ», не имеющей отношения к семейству ОС Linux. Фактически, ОС «Фебос», насколько можно судить по доступным описаниям, не содержит в себе ничего, кроме микроядра, гипервизора и монитора безопасности, все прикладные интерфейсы вынесены в виртуальные машины ОС Linux.

ОС «Заря» разработана АО «Центральный научно-исследовательский институт экономики информатики и систем управления» (ЦНИИ ЭИСУ) по заказу Минобороны России в 2013 г. Данная ОС основана на ОС CentOS Linux, доступные в сети Интернет схемы её архитектуры не содержат никаких уникальных особенностей, существенно отличающих её от других ОС семейства Linux. Некоторые источники позиционируют ОС «Заря» как следующее поколение ОС МСВС. ОС «Заря» совместима с пакетами ПО Libre Office, GIMP и Chromium, существуют версии ОС для настольных, серверных и встраиваемых систем.

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

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

2.Архитектура, назначение и области применения Операционной Системы Специального Назначения Astra Linux Special Edition

2.1.    Назначение ОССН

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

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

При этом в ходе решения этой задачи важным фактором является строгое соответствие подобных разработок национальным стандартам в области информационной безопасности, например, для АСЗИ — это ГОСТ 51583—2014 «Защита информации. Порядок создания автоматизированных систем в защищённом исполнении. Общие положения», и требованиям отечественных систем сертификации средств защиты информации по требованиям безопасности информации.

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

  • конфиденциальная информация;
  • коммерческая тайна;
  • персональные данные.

Указанные возможности ОССН подтверждаются следующими сертификатами соответствия участников отечественных систем сертификации средств защиты информации по требованиям безопасности информации (табл. 2.1).

Таблица 2.1.

Участник системы сертификации Номер

сертификата

Дата получения сертификата Срок действия сертификата
Федеральная служба безопасности Российской Федерации СФ/014-2579 20.03.2015 31.12.2018
Федеральная служба по техническому и экспортному контро­лю Российской Федерации 2557 27.01.2012 27.01.2018
Министерство обороны Российской Федерации 1339 24.09.2010 15.09.2018

Эти сертификаты дают основания для использования ОССН в составе АС различных классов защищённости от несанкционированного доступа к информации (НСД) и уровней контроля отсутствия недекларируемых возможностей (НДВ) в составе компонентов системы (табл. 2.2).

Группа АС Однопользовательская АС (группа 3) Многопользовательская АС с равными полномочиями (группа 2) Многопользовательская АС с разными полномочиями (группа 1)
Класс АС ЗБ ЗА
Класс СВТ 5 3 2 1 5 3 2 1 5 5 4 3
Уровень контроля отсутствия НДВ 4 3 2 1 4 3 2 1 4 4 3 2

Из табл. 2.2 следует, что ОССН в предельном случае сертифицирована для использования в многопользовательских АС, пользователи которых имеют разные полномочия по доступу к обрабатываемой информации (класс 1Б), по классу 3 защиты от НСД и уровню 2 контроля отсутствия НДВ.

Таким образом, в настоящее время ОССН является операционной системой, сертифицированной во всех трех системах сертификации средств защиты информации по требованиям безопасности информации.

2.2.    Архитектура ОССН

Архитектурной основой ОССН является проект Debian GNU/ Linux — ассоциация разработчиков свободного ПО, основой которого являются ОС семейства GNU /Linux на базе ядра Linux Kernel.

В связи с этим, в общем случае, архитектура ОССН соответствует архитектурным решениям GNU/Linux (рис. 2.1).

При этом особенности реализации соответствуют особенностям реализации ОС проекта Debian GNU/Linux, в частности:

  • активная поддержка последних версий стандартов в рамках проектов Linux FSH и LSB;
  • наличие более одиннадцати официальных переносов (портов) на различные процессорные архитектуры;
  • наличие системы управления пакетами программ APT (Advanced Packaging Tool) с жёсткой политикой по отношению к разрабатываемому ПО, поддержкой разветвлённой сети репозиториев и стандарта механизм выбора предпочтительного ПО среди нескольких вариантов (alternatives);
  • большое количество (более 40 тысяч) пакетов совместимого прикладного ПО;
  • развитая система устранения ошибок, обеспечивающая высокое качество кода драйверов, системных сервисов и поддерживающая высокую стабильность функционирования ОС на базе проекта Debian GNU/Linux.

Благодаря тому, что дистрибутив проекта Debian GNU/Linux перенесён на различные процессорные архитектуры, ОССН также оддерживает переносы на следующие архитектуры:

  • amd64 — процессоры Intel и AMD с микропроцессорной архитектурой а;86-64;
  • armel/armhf- 32 и 64-разрядные процессорные ядра разработки ARM Limited;
  • s390.r — 64-разрядное пространство пользователя для мэйнфреймов IBM System z.

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

В установленном дистрибутиве ОССН полное обозначение релиза дистрибутива в файле /etc/astra-veision хранится в следующем формате:

EDITION V.U.Y (name)

где использованы следующие обозначения:

EDITION — редакция релиза дистрибутива (для ОССН имеет значение «SE»);

V       — первая цифра номера релиза, связанная с его именем;

U       — номер версии релиза;

Y       — номер обновления в пределах версии релиза (если таких обновлений не было, то номер обновления отсутствует);

(name) — имя релиза дистрибутива на латинице (связано с его редакцией и первой цифрой номера версии), как правило, для этого используются названия городов-героев Российской Федерации.

Релизы дистрибутива ОССН и их обозначения для версии 1.4 представлены в табл. 2.3.

Текущий релиз – 1.5.

Релиз «Смоленск» операционной системы специального назначения Astra Linux Special Edition предназначен для функционирования на средствах вычислительной техники с процессорной архитектурой х86-64.

Релиз «Новороссийск» предназначен для функционирования на мобильных и встраиваемых компьютерах с процессорной архитектурой ARM.

Архитектура ARM (от англ. Advanced RISC Machine — усовершенствованная RISC-машина; иногда — Acorn RISC Machine) — семейство лицензируемых 32-битных и 64-битных микропроцессорных ядер разработки компании ARM Limited.

RISC (англ. reduced instruction set computer — «компьютер с сокращённым набором команд») — архитектура процессора, в котором быстродействие увеличивается за счёт упрощения инструкций, чтобы их декодирование было более простым, а время выполнения — меньшим. Первые RISC-процессоры даже не имели инструкций умножения и деления. Это также облегчает повышение тактовой частоты и делает более эффективной суперскалярность (распараллеливание инструкций между несколькими исполнительными блоками).

 

Релиз «Мурманск» разработан для функционирования на мэйнфреймах IBM System Z.

IBM System z (более раннее название — IBM eServer zSeries) — бренд, созданный компанией IBM для обозначения линейки мейнфреймов.

Буква Z происходит от «zero down time», которое означает «ноль времени недоступности», позволяющее непрерывно поддерживать работу сервера 24 часа в сутки, 7 дней в неделю 365 дней в году.

 

Релиз «Севастополь» — дистрибутив Astra Linux Special Edition, предназначенный для функционирования на настольных, мобильных и встраиваемых компьютерах с процессорной архитектурой MIPS.

MIPS (англ. Microprocessor without Interlocked Pipeline Stages, микропроцессор без состояний задержки конвейера) — микропроцессор, разработанный компанией MIPS Computer Systems (в настоящее время MIPS Technologies) в соответствии с концепцией проектирования процессоров RISC (то есть для процессоров с упрощенным набором команд). Ранние модели процессора имели 32-битную структуру, позднее появились его 64-битные версии.

Релиз «Керчь» — дистрибутив Astra Linux Special Edition, предназначенный для функционирования на высокопроизводительных серверах, базирующихся на платформах с процессорной архитектурой POWER.

POWER — микропроцессорная архитектура с ограниченным набором команд (RISC), разработанная и развиваемая компанией IBM. Название позже было расшифровано как Performance Optimization With Enhanced RISC (оптимизация производительности на базе расширенной архитектуры RISC). Этим словом также называется серия микропроцессоров, использующая указанный набор команд. Они применяются в качестве центрального процессора во многих микрокомпьютерах, встраиваемых системах, рабочих станциях, мейнфреймах и суперкомпьютерах.

В дальнейшем (если это специально не оговорено по тексту) при рассмотрении ОССН в качестве релиза дистрибутива используется релиз «Смоленск» версии 1.4. Этот релиз основан на дистрибутиве Debian GNU /Linux 7.0 (Wheezy). Детализация его архитектуры относительно обобщённой архитектуры GNU /Linux (рис. 2.1) показана на рис. 2.2.

Представленные на рис. 2.2 базовые компоненты, библиотеки и средства разработки в составе дистрибутива ОССН реализуют следующие базовые функции:

  • запуск программ, их загрузка в оперативную память и управление их выполнением;
  • поддержка вытесняющей многозадачности;
  • диспетчеризация аппаратных ресурсов компьютера между выполняющимися программами;
  • межпроцессное взаимодействие;
  • организация механизма виртуальной памяти;
  • поддержка операций ввода/вывода и логической организации запоминающих устройства (жёсткие диски, SSD-диски, оптические диски, USB-диски);
  • поддержка файловых систем;
  • поддержка ввода/вывода к периферийным устройствам;
  • поддержка стеков сетевых протоколов;
  • обеспечение многопользовательского режима работы;
  • обеспечение CLI (Command Line Interface) пользовательского интерфейса командной строки;
  • обеспечение GUI (Graphical User Interface) пользовательского графического интерфейса, в том числе и для компьютеров, обо рудованных сенсорными экранами, поддерживающими многоточечный ввод;
  • поддержку разработки и отладки прикладного ПО с CLI и GUI пользовательским интерфейсом.

 

Для организации доменной сетевой инфраструктуры, развёрнутой на базе ОССН, в состав её дистрибутива входит OpenLDAP — реализация протокола LDAP с открытым исходным кодом. Для формирования ключей шифрования, сертификатов открытых ключей и выполнения шифрования данных SSL/TLS соединений в состав дистрибутива ОССН входит криптографический пакет OpenSSL.

Поддержка OpenLDAP и OpenSSL обеспечивает реализацию функции единого пространства пользователей (ЕПП) в рамках доменной инфраструктуры Astra Linux Directory (ALD) с поддержкой резервирования контроллеров домена и установления между ними отношений доверия.

Кроме базовых компонентов, библиотек и средств разработки в состав дистрибутива ОССН входит общее ПО, реализующее следующие функции:

  • обработка документальной информации (текстовые, табличные редакторы и средства создания презентационных материалов и доступа к реляционным базам данных);
  • сканирование, печать и передача документальной информации;
  • доступ к информации, хранящейся в реляционных базах данных, включая поддержку программного обеспечения «1C» и программного обеспечения для работы с географическими объектами PostGIS;

Таблица 2.5. Наименование и версии общего ПО дистрибтива ОССН.

Защищенная система управления базами данных (СУБД)
PostgreSQL 9.2.14 и 9.4.5
Работа с документами. Пакет офисных программ.
LibreOffice (текстовый редактор, табличный редактор, программа подготовки презентаций, механизм подключения к внешним СУБД, векторный графический редактор, редактор формул) 5.0.2
Защищенный комплекс программ гипертекстовой обработки данных
Web-сервер Apache2  2.2.22
Браузер Firefox 44.0
Защищенные средства передачи электронной почты
Сервер электронной почты Exim4  4.82
Сервер электронной почты Dovecot  2.1.7
Почтовый клиент Thunderbird 38.5.0
Редактор растровой графики
GIMP 2.8.14

доступ к информации через сервер гипертекстовой обработки данных (HTTP-сервер и клиент);

  • обмен сообщениями электронной почты (SMTP/IMAP серверы и клиент);
  • работа с графикой и мультимедиа (звук, видео).

Наименование и версии перечисленных видов ПО представлены в табл. 2.5.

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

  • аутентификация пользователей с использованием инфраструктуры РАМ (Pluggable Authentication Modules) локально и в рамках ЕПП, двухфакторная аутентификация на основе цифровой подписи и инфраструктуры открытых ключей, поддерживаемых внешним носителем аутентификационной информации «Рутокен»;
  • идентификация пользователей с использованием модульного окружения NSS (Name Service Switch) локально и в рамках ЕПП [55];
  • дискреционное управление доступом процессов (субъект-сессий) к ресурсам (сущностям) с поддержкой стандартов Minimal ACL и Extended ACL (в последующих версиях ОССН дискреционное управление доступом будет заменено ролевым управлением доступом в сочетании с мандатными управлением доступом и контролем целостности, реализованными на основе мандатной сущностно-ролевой ДП- модели — МРОСЛ ДП-модели, базовые элементы которой будут рассмотрены в следующих лекциях);

Вместо системы принудительного контроля доступа SELinux, в Astra Linux Special Edition используется запатентованная мандатная сущностно-ролевая ДП-модель управления доступом и информационными потокам (МРОСЛ ДП-модель)

  • основанное на МРОСЛ ДП-модели мандатное управление доступом процессов к ресурсам, реализация которого в ОССН осуществляется на уровнях механизма межпроцессного взаимодействия, включая файловые системы ртос и tmpfs, стек протоколов TCP/IP {IPv4), на уровне виртуальной файловой системы (VFS) и в файловых системах семейства extfs {Ext2, Ext3, Ext4);
  • изоляция адресных пространств процессов;
  • регистрация (протоколирование) и аудит событий, реализованные в виде централизованной системы с функцией оповещения администратора безопасности о попытках НСД;
  • очистка оперативной памяти и освобождаемых областей данных на носителях с файловыми системами Ext2, Ext3, Ext4:
  • регламентный контроль целостности сущностей файловой системы, в том числе неизменности исполняемых файлов и соответствия эталонному дистрибутиву ОССН, на основе библиотеки libgost, в которой реализована функция хэширования в соответствии с ГОСТ Р 34.11-94 [3], и мандатный контроль целостности, препятствующий доступу к защищаемой информации скомпрометированными субъектами после перехвата управления и повышения привилегий (элементы мандатного контроля целостности также заданы в рамках МРОСЛ ДП-модели и рассмотрены в главе 2);
  • базирующаяся на мандатном контроле целостности замкнутая программная среда, позволяющая определить для каждой учётной записи пользователя индивидуальный перечень ПО, разрешённого для использования, с возможностью загрузки иерархических цепочек ключей для проверки цифровой подписи исполняемых файлов формата ELF (Executable and Linkable Format), реализованной в соответствии с ГОСТ Р 34.10-2001 [2];
  • маркировка документов уровнями конфиденциальности при выводе их на печать;
  • обеспечение надёжного восстановления ОССН после сбоев;
  • реализация правил управления доступом к внешним носителям (для этого в рамках МРОСЛ ДП-модели заданы сущности с косвенными метками);
  • обеспечение доступа к реляционным базам данных в соответствии с требованиями для управления доступом к информации, содержащей сведения, составляющие государственную тайну с грифом не выше «совершенно секретно», совместимого с реализованными в ОССН мандатным управлением доступом и мандатным контролем целостности (с этой целью МРОСЛ ДП-модель была расширена для использования с штатной для ОССН СУБД PostgreSQL);
  • обеспечение доступа к информации через сервер гипертекстовой обработки данных, обмена сообщениями электронной почты в соответствии с требованиями для управления доступом к информации, содержащей сведения, составляющие государственную тайну с грифом не выше «совершенно секретно». Дополнительно в состав ядра дистрибутива ОССН добавлен пакет дополнений модуля РаХ (средство ограничения прав доступа к страницам памяти), обеспечивающий выполнение программного обеспечения в режиме наименьших привилегий и защиту от эксплуатации в нём различных уязвимостей путём:
  • запрета записи в область памяти, помеченную как исполняемая;
  • запрета создания исполняемых областей памяти;
  • запрета перемещения сегмента кода;
  • запрета создания исполняемого стека;
  • случайного распределение адресного пространства процесса. Важным компонентом ОССН является подсистема обеспечения безопасности PARSEC, расширяющая стандартную для ОС семейства Linux систему привилегий, предназначенную для передачи пользователям прав выполнения функций администратора ОССН с поддержкой мандатного управления доступом и мандатного контроля целостности. Подсистема PARSEC поддерживает следующие расширенные привилегии:
  • посылать сигналы процессам, игнорируя дискреционные и мандатные правила управления доступом;
  • изменять уровни доступа (мандатные метки) учётных записей пользователей и устанавливать другие привилегии;
  • менять уровни конфиденциальности (мандатные метки) конфиденциальности файлов;
  • управлять политикой аудита;
  • игнорировать правила мандатного управления доступом при чтении и поиске файлов (исключая функцию записи);

 

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

Подсистема безопасности PARSEC реализует указанные расширенные привилегии с использованием механизма перехвата системных вызовов (hook), который перехватывает и анализирует аргументы запросов процессов и в соответствии с установленными правилами мандатного управления доступом разрешает или запрещает их. Таким образом, в ОССН мандатный контекст (используемые в запросе уровни конфиденциальности, доступа и целостности) считывается при выполнении каждого запроса локально или удалённо (в рамках ЕПП) запущенного процесса.

Уникальной особенностью подсистемы обеспечения безопасности PARSEC является её реализация в качестве модуля XPARSEC, расширяющего функциональность сервера X.Org и’менеджера окон Fly-wm. Благодаря этому модулю сервер X.Org получает возможность определения привилегий X.Org клиента (программы с GUI интерфейсом) и передачи их с использованием модифицированного Х-протокола менеджеру окон Fly-wm, который и выполняет привилегированные операции в ходе запуска X.Org клиента с различными мандатными контекстами. При этом на рабочем столе Fly выполняется отображение:

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

2.3.    Области применения ОССН

Рассмотренные архитектурные особенности ОССН, как реализация ЕПП на основе доменной сетевой инфраструктуры ALD, и интегрированный в состав дистрибутива ОССН комплекс СЗИ определяют её основные области применения, которые в общим случае заданы разработчиком по следующим направлениям •      программно-технические комплексы и комплексы средств автоматизации;

  • локальные (корпоративные) компьютерные сети;
  • территориально-распределенные АС.

В настоящее время на базе дистрибутива ОССН реализован ряд проектов АСЗИ в министерствах и ведомствах: ФСБ России, ФСО России, Минобороны России, СВР России, ФСКН России, ФСИН России, ФТН России, ГУПС России, Минздрав России, Минобрнауки России, внутренних войсках МВД России; государственных корпорациях и агентствах: Росатом, Роскосмос, Ростехнологии, ряде предприятий военно-промышленного комплекса; в рамках межведомственной информационной системы государственной автоматизированной системы государственного оборонного заказа (ГАС ГОЗ).

На рис. 2.3 представлен вариант реализации корпоративной защищённой локальной вычислительной сети (ЗЛВС), поддерживающей мультисервисную систему связи, которая обеспечивает реализацию защищённых сервисов:

  • видеоконференцсвязи;
  • IР-телефонии;
  • информационного портала на базе Web-сервера;
  • сервера баз данных;
  • почтового сервера.

Указанные сервисы реализуются на базе серверных платформ, которые функционируют в серверном варианте установке ОССН релиза «Смоленск». В качестве клиентских компьютеров такой ЗЛВС выступают:

  • стационарные или мобильные компьютеры с процессорной архитектурой Intel х86-64, функционирующие в клиентском варианте установки ОССН релиза «Смоленск»;
  • планшетные компьютеры с процессорной архитектурой ARM, функционирующие в клиентском варианте установки ОССН релиза «Новороссийск».

На рис. 2.3 показано, что для абонентов корпоративной ЗЛВС организуется ЕПП на базе домена сетевой инфраструктуры ALD с выделенным контроллером домена, функционирующим в серверном варианте установки ОССН релиза «Смоленск». Дополнительно в рамках такой ЗЛВС может быть развернут частный облачный сервис (Private Cloud), реализуемый с использованием технологий виртуализации ОССН релиза «Смоленск» (рис. 2.4).

В условиях удалённого доступа к ресурсам рассмотренной на риc. 2.3 ЗЛВС через арендованные у провайдера телекоммуникационных услуг каналы связи, мобильные АРМ удалённых абонентов ЗЛВС могут подключаться к серверам ЗЛВС с использованием, например, механизмов VPN/MPLS [64]. При этом на границе корпоративного сегмента ЗЛВС устанавливается граничный криптомаршрутизатор — межсетевой экран, который может функционировать на базе ОССН релиза «Тула». Пример схемы подобной реализации удалённого доступа к ЗЛВС представлен на рис. 2.5.

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