Linux, конечно, самая открытая из открытых систем. Но таинственного, туманного в ней тоже достаточно.

Говорить о больших проектах с Exchange, Oracle и им подобных часто склоняют сами производители: им нужны success stories. А кто заставит рассказать о Linux? Только любовь к Linux. Но есть и еще одна сторона, и тоже теневая.

Открытость кода привлекает закрытые организации. Раз код доступен, его можно проверить на закладки, программные бомбы и другие неприятные сюрпризы. Поэтому Linux активно используют в военных структурах США. Недавно в прессе прошли сообщения о том, что Linux будет объявлена государственной операционной системой Китая. Точнее, государственной должна стать операционная система Red Flag на базе Linux, разработанная в Китае; насколько большим переделкам подвергнется Linux — пока неизвестно.

На Украине отношение к Linux у государственных структур вполне лояльное. Чего стоят хотя бы выборы президента! Linux-компьютеры играли ключевую роль в информационной системе. Там использовался дистрибутив KSI Linux, названный так по инициалам создателя — Сергея Кубушина. Украинские силовики очень активно интересуются KSI Linux, не исключено, что в скором времени Украина пойдет по «китайскому пути» (в смысле Linux, надеюсь).

СпецBSD и СпецLinux

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

Конечно, силовым ведомствам нужно ПО российской разработки. Но если уж ПО написано не у нас, как минимум должен быть доступен исходный код. В принципе не обязательно брать ПО с открытым кодом. Можно брать и коммерческое ПО, если производитель готов открыть код (на условиях неразглашения, разумеется). Естественно, фирмы идут на это в самых крайних случаях. Так поступали Informix, Oracle, Sun. Но поскольку ПО производится не у нас, то с любой заплаткой и тем более новой версией вся мучительная процедура должна начинаться заново.

Поиски основы для защищенной операционной системы начались, конечно, не с Linux — она слишком молода. Из Unix с открытым кодом первой ОС, на которую решили возложить «специальные» задачи, была FreeBSD. В МО ПНИЭИ, где родилось знаменитое семейство «Верб», не разрабатывают защищенные ОС, но, выпуская продукты на базе FreeBSD, дорабатывают их, создавая замкнутую программную среду.

Сертифицированный шифратор IP- потоков ШИП основан на FreeBSD 2.2.8, имеющей следующие доработки:

  • аппаратный контроль целостности ПО до загрузки ОС;
  • стартовое и периодическое тестирование аппаратуры (ЦП, ОЗУ, НЖМД, сетевые адаптеры);
  • аппаратный датчик случайных чисел;
  • «метки конфиденциальности» для сетевых буферов (mbuf);
  • дополнительную фильтрацию на уровне канала связи (Ethernet);
  • замкнутую программную среду для администратора и оператора.

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

Более того, Сергей Леонтьев, консультант генерального директора МО ПНИЭИ, считает, что на базе систем с открытыми исходными текстами опасно создавать ОС низкого класса защищенности (без использования «меток конфиденциальности» на память, файлы, сокеты и т. п. и без использования мандатного доступа), поскольку в такого рода системах (различные версии C2 Unix и C2 Windows или C2 Novell) имеется достаточное количество кода, работающего на высоком уровне привилегий, и нет никакой возможности провести его честную верификацию. А так как основа этого кода доступна кому угодно в исходных текстах, то у «злоумышленника» есть сравнительно простая возможность находить необнаруженные ошибки в программах.

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

Linux — более молодая ОС, чем FreeBSD, но работы по ее приспособлению к нуждам закрытых ведомств ведутся уже несколько лет. В питерском Специализированном центре защиты информации (СЦЗИ) при Санкт-Петербургском государственном техническом университете (СПбГТУ) есть группа разработчиков во главе с Петром Дмитриевичем Зегждой, которая уже восемь лет ведет работы по созданию защищенной ОС. Linux ими рассматривалась.

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

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

Интересную, по-моему, мысль высказал представитель одной из компаний, занимающихся разработкой ПО под Linux: в качестве базы для разработки защищенной ОС можно было бы взять не Linux и не FreeBSD, а HURD — систему, которая должна была стать основной в мире программного обеспечения GNU. Эта система безусловно более передовой архитектуры, а в качестве микроядра используется MACH — прекрасно отработанное, оттестированное и проверенное в коммерческих ОС. То, что мир пошел по другому пути (пути Linux), для системы, выполняющей специальные функции и под которой работают специальные приложения, может быть, и не так уж важно.

Победитель де-факто и де-юре

Конечно, не ушли со сцены ОС специального применения на базе DOS и NetWare, но ясно, что борьба в мире, защищенном секретностью, будет происходить между клонами Linux и Windows NT. И у тех и у других есть много сторонников и могущественных покровителей не только в МО, ФАПСИ, МВД, но и в таких ведомствах, как, скажем, Министерство по атомной энергетике, чья позиция имеет очень большое значение в решающей схватке. Ясно также, что какие бы решения ни были приняты, в огромном и плохо просматриваемом извне мире будут сосуществовать различные ОС — многие будут использовать то, что им удобно и привычно, правдами и неправдами обходя приказы и указы. Выбирать, в общем, есть из чего. Разработки защищенных систем, в основе которых лежит BSD, тоже ведутся, эти системы используются, но их разработчики пока не расположены выносить свои достижения и проблемы на публику. Примерно то же можно сказать о SunOS/Solaris.

Если брать Unix-подобные ОС, де-факто и де-юре первую строчку займет МСВС — Мобильная система Вооруженных сил, разработанная во ВНИИНС (сейчас разработкой и поддержкой дистрибутивов для МО занимается дочернее предприятие ВНИИНС, которое называется ЮНИСОФТ). Она тоже окружена завесой таинственности, которая постепенно рассеивается. Ее упоминают в своих выступлениях высокие чины, она и продукты на ее базе фигурируют в широко распространенных списках сертифицированных Гостехкомиссией средств. Краткая информация есть и на официальном узле МВД: http://www.mvd.ru/d/d2/katalog/part2/vniins.htm. МСВС разработана на базе Linux. Последняя из сертифицированных (на класс 2) версий — 2.0.

Российские приложения для Linux - тайного и не тайного

ОС никому не нужна сама по себе: под МСВС доступны различные линии продуктов. Основная СУБД — «Линтер-ВС». (Кроме «Линтер» на роль сертифицированной СУБД претендовала еще одна российская разработка — СУБД Hi Tek, разработанная в фирме НИСТ, но о ее судьбе нам пока ничего не удалось узнать). Проблема скорее в наличие сертифицированных средств разработки и сертифицированных офисных приложений.

Большая часть весьма серьезного ПО фирм РЕЛЭКС и DataX/FLORIN, каждой из которой посвящена врезка, существует в версиях и под МСВС. Поскольку обе эти компании привержены концепции многоплатформенности, их разработки могут быть интересны самым разнообразным пользователям, в том числе, конечно, и Linux-сообществу. А поскольку пока что российское ПО заметно дешевле аналогичного (или функционально близкого) западного, на него стоит обратить внимание.


СУБД «Линтер»

СУБД «Линтер» имеет множество модификаций, среди них семейство совместимых коммерческих СУБД для различных платформ, поставляемых ЗАО РЕЛЭКС и их дистрибьюторами, а также специализированные версии для МО и МВД: «Линтер-ВС», работающая под ОС МСВС, и «Линтер-ВТ» — соответственно под ОС МСВТ. Как базовый продукт СУБД «Линтер» — собственность ЗАО РЕЛЭКС. По понятным причинам о «Линтер-ВС» мы ничего конкретного писать не можем, поэтому речь пойдет о «гражданской» СУБД — «Линтер».

«Линтер» — СУБД, имеющая уже 15-летнюю историю. Во времена СМ ЭВМ, в 1983 году, под ОС реального времени РАФОС в воронежском СКТБ «Системпрограмм» была разработана СУБД БАРС. Это была первая советская реляционная система, причем на 100% оригинальная — на этот раз советские разработчики ни у кого ничего не воровали и не копировали. В 1985 году было решено сделать СУБД переносимой. Семейство переносимых СУБД появилось 90-м году под именем СУБД ИНТЕРЕАЛ. В этом же году образовалось научно-производственное предприятие РЕЛЭКС, что расшифровывается как «Реляционные экспертные системы». РЕЛЭКС поставило задачу совместить в одной СУБД преимущества персональных и больших промышленных СУБД. Так появилась многоплатформенная СУБД «Линтер», работающая практически на всех коммерческих ОС и на свободных ОС Linux и FreeBSD.

«Линтер» часто называют Oracle-подобной СУБД. Разработчики объясняют, что с таким же успехом можно говорить, что их СУБД подобна Informix, Sybase — любой реляционной СУБД с архитектурой клиент-сервер. Даже самая отдаленная прародительница «Линтер» — БАРС строилась на реляционных принципах. «При создании ?Линтер?, — рассказывает Виталий Максимов, один из разработчиков этой системы, рассматривалось множество систем. Но делалось это не с хакерских позиций (в смысле сломать и своровать), а с исследовательских (определить функциональность и т. д.). Рассматривались такие системы, как ADABAS, Oracle, REQUIZ, Quel, Informix — все понемногу смотрели, сравнивали, пробовали... Но просто так не ?сдирали? ничего».

Качествам, которые обеспечили «Линтер» достаточно широкое распространение, она обязана своим корням — системам специального назначения: она может использоваться (и используется) как система реального времени, удовлетворяет повышенным требованиям к надежности, безопасности и секретности данных. В 1998 году эта система была сертифицирована Гостехкомиссией при Президенте РФ по второму классу защищенности данных от несанкционированного доступа. На сегодняшний день «Линтер» — единственная СУБД, сертифицированная в России по такому высокому классу. А создатели ее утверждают даже, что пока что и в мире СУБД с таким уровнем защищенности не существует.

Но этого сегодня недостаточно, нужно поспевать за лидирующими промышленными СУБД. Усилия разработчиков направлены сейчас приблизительно на то же, на что продолжают тратить свои лучшие ресурсы Oracle, Informix, Microsoft и другие. Одно из важнейших направлений — совершенствование механизмов распараллеливания запросов. Концепция распределенности СУБД «Линтер» позволяет прозрачно обрабатывать запросы к данным, находящимся в различных базах данных, вне зависимости от их физического расположения. Это позволяет базам данных функционировать независимо друг от друга. Кроме того, эта концепция обеспечивает равноправный доступ пользователей к разным базам данных, расположенным в различных узлах вычислительной сети.

Чтобы обеспечить одновременную работу возможно большему числу пользователей, в «Линтер» реализованы различные блокировки вплоть до блокировки на уровне записи — как у лидирующих промышленных СУБД.

Масштабируемость СУБД — одно из самых трудновыполнимых требований. Заместитель генерального конструктора Михаил Ермаков говорит: « Мы пока и не заявляем, что сильно масштабируемся. Пока что мы не сможем эффективно использовать кластер на сотнях процессоров, более того, мы даже не сможем использовать больше четырех процессоров на одной машине эффективно. Текущие параметры по объемам наших реальных баз — гигабайты; количество пользователей, работающих одновременно, — десятки. Однако мы развиваемся и надеемся к концу года нормально использовать многопроцессорные архитектуры».

РЕЛЭКС активно внедряет в своей СУБД Web-технологии. К этому компанию сильно стимулирует деятельность на мировом рынке. По заказу американцев («Линтер» уже шесть лет продается на рынке США) создана система дистанционного тестирования и обучения TestLink. Скоро, видимо, начнется перенос этой системы под Linux. Еще одно направление — разработка системы полнотекстового поиска для Blob-объектов.

Проекты под Linux

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

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

Linux-версия СУБД «Линтер» используется также в специальных проектах Министерства обороны РФ и ФСБ.