С самого начала работы над нашей собственной операционной системой мы встречаемся со множеством мифов, откровенно мешающих внедрению новых технологий. На самом деле аргументированно доказать, что эти мифы несостоятельны, не так уж и сложно. Мы решили разобрать несколько наиболее распространенных заблуждений.
Миф 1. Современные ОС уже дали ответ на все актуальные вызовы
Фразу «еще одна ОС не нужна» мы слышим уже более 20 лет. И все это время мейнстримовые современные ОС продолжают страдать от трех одних и тех же проблем.
- Киберугрозы. В 2022 году защитные системы «Лаборатории Касперского» ежедневно регистрировали более 400 тысяч новых вредоносных файлов. Основной мишенью атакующих остается Windows (на нее приходятся 85% угроз), но количество угроз для Linux и Android постоянно растет (в прошлом году оно увеличилось на 20% и 10%, соответственно).
- Недостаточная устойчивость. Синий экран смерти в Windows до сих пор преследует нас в наши рабочие будни. Если кто-то думает, что в Linux все по-другому, то нет — все то же самое, только экран не синий, а черный, и это называется kernel panic.
- Взаимная несовместимость. С каждым годом нас окружает все больше умных устройств. По мнению аналитиков, к 2025 году число подключенных девайсов в мире достигнет 27 миллиардов. Причем иногда даже устройства, выпускаемые одной компанией, могут работать под разными ОС. Поэтому разработчикам программного обеспечения для этих устройств зачастую приходится прикладывать колоссальные усилия, чтобы адаптировать одни и те же приложения под разные ОС.
Мы в «Лаборатории Касперского» предложили свой вариант решения этих проблем, создав KasperskyOS. Фундаментом для нашей операционной системы стала концепция микроядра, а также архитектурный подход MILS и архитектура FLASK.
Миф 2. Преимущества микроядра в части кибербезопасности не доказаны
Не так просто сравнить, какая архитектура лучше — микроядерная или реализованная согласно концепции монолитного ядра. Однако изучению этого вопроса посвящено немало серьезных исследований. Из них становится очевидно, что:
- 96% критических уязвимостей в Linux и эксплойтов, нацеленных на эту систему, перестали бы быть критическими в микроядерных ОС;
- 57% этих критических уязвимостей можно было бы нивелировать верификацией микроядра;
- 29% просто можно было бы полностью предотвратить при реализации на микроядерной архитектуре.
Миф 3. Микроядерная ОС — это медленно
Производительность операционной системы в процессах, требующих подключения к удаленным рабочим столам, — действительно важный вопрос. Поэтому мы уделили ему особенно пристальное внимание. Благодаря поддержке многоядерности и кодеков нам удалось достичь уровня производительности, соизмеримого с Linux.
Одними из самых требовательных к производительности приложений являются игры, и поэтому в рамках тестирования мы поставили себе задачу запустить с использованием GPU современную игру на KasperskyOS. Это не означает, что мы собираемся заниматься разработкой игр или консолей. Но этот эксперимент позволяет наглядно показать партнерам, которые будут заниматься разработкой устройств на KasperskyOS, реальные возможности решения задач, связанных с проектированием и 3D-моделированием.
Миф 4. Linux-контейнеры позволяют решать те же задачи, что в KasperskyOS решаются при помощи MILS
Если мы внимательно посмотрим на архитектуру нашего кибериммунного шлюза (одного из первых вышедших на рынок устройств на базе KasperskyOS), то увидим там порядка 200 доменов безопасности. Если попробовать собрать то же самое на docker-контейнерах в Linux, то нам потребуется более 5 ГБ оперативной памяти. Тот же шлюз, реализованный в виде 200 контейнеров на слабом железе с одноядерным процессором, будет работать крайне медленно. Фундаментальная разница заключается в подходах: если в Linux-контейнерах мы по сути берем полноценную систему и отрезаем все ненужное, то в KasperskyOS мы, наоборот, сразу не берем ничего ненужного, а добавляем только необходимое. Это значительно оптимизирует потребление ресурсов.
Миф 5. FLASK не позволяет строить динамические системы
Концепция FLASK обеспечивает контроль доменов безопасности с помощью политик безопасности. Распространено мнение, что такой подход не позволяет расширять функциональность ОС за счет приложений. Но эволюция конкретных продуктов на базе KasperskyOS наглядно демонстрирует обратное.
- В 2021 году мы показали на нашем шлюзе Интернета вещей, что есть возможность создавать на базе KasperskyOS кибериммунные решения с фиксированной функциональностью.
- В 2022 году на примере тонкого клиента мы продемонстрировали возможность создавать кибериммунные решения с поддержкой графического интерфейса пользователя. При этом партнер, с которым мы реализовывали этот проект, без особых проблем добавил к функциональности тонкого клиента собственные приложения в KasperskyOS.
- Сейчас мы находимся на третьем этапе эволюции, когда сторонние разработчики могут создавать определенные типы приложений под KasperskyOS. Для этого мы разрабатываем собственную систему дистрибуции приложений. Первой кибериммунной платформой, которая сможет принимать такие приложения, станет шлюз, поскольку он должен уметь подключаться к большому количеству различных устройств.
Но мы не останавливаемся на достигнутом и сейчас активно работаем над тем, чтобы перейти к следующему этапу, когда на базе KasperskyOS можно будет создавать полноценные кибериммунные платформы, системы с большим количеством приложений. Примером таких систем могут служить мобильные устройства.
Миф 6. Узкая специализация разработки
Может казаться, что для разработки под новую операционную систему потребуется полная переквалификация. Это не так: уже сейчас KasperskyOS объединяет разработчиков совершенно разных парадигм, которые пользуются привычным для себя инструментарием.
Для шлюзов разрабатываются веб-приложения, для тонких клиентов — используется популярный в Linux-сообществе фреймворк Qt. Для контроллеров ничто не мешает создавать консольные приложения, знакомые практически каждому программисту со студенческих времен.
Более того, вместе с коллегами, которые занимаются разработкой автомобильного шлюза, мы предлагаем возможность использовать стандартные фреймворки из автомобильной индустрии, такие как AUTOSAR Adaptive. Активно работаем над тем, чтобы предоставить возможности технологии Flutter на нашей ОС — а это позволит обеспечить совместимость с Android-приложениями.
Миф 7. Сложность портирования на разные аппаратные платформы
Некоторые разработчики опасаются, что нет смысла заниматься разработкой новых операционных систем, потому что драйверы пишутся только для мейнстримовых ОС (Linux, Android, Windows). Поэтому, по их мнению, любая новая ОС обречена на работу с узким диапазоном оборудования. Понимая это, мы запустили исследовательский проект Linux Compat, задачей которого было создание технологии, позволяющей запускать драйверы Linux на KasperskyOS с минимальными изменениями.
Идея проста: в KasperskyOS вы можете запустить какой-то кусок кода в домене безопасности как в контейнере. Мы добавляем в этот контейнер тонкий программный слой, который позволяет убедить Linux-драйвер, что он работает в привычной ему среде Linux. Благодаря такой технологии мы портировали порядка 300 тысяч строк кода Linux на KasperskyOS, при этом произведя меньше 5% изменений. 300 тысяч строк кода — это 8–10 лет работы высококвалифицированного разработчика (если речь о разработке драйверов). Теперь о конкретных цифрах. Например, драйверы акселерометра и гироскопа в Linux содержат порядка 7 тысяч строк кода. Для того чтобы запустить этот код с помощью нашей технологии на KasperskyOS, потребовалось изменить всего 20 строк. А драйвер NFC, используемый для поддержки оборудования, при помощи которого мобильное устройство взаимодействует с терминалами оплаты, содержит порядка 1200 строк кода. С нашей же стороны этот драйвер запустился без каких-либо изменений.
По моему мнению, мы разработали технологию, которая позволит нам масштабироваться в дальнейшем. И мы уже сейчас выбираем продукт, на котором сможем эту технологию опробовать.
Каждый сам для себя выбирает, жить в мифах или в новой кибериммунной реальности. Для сторонников кибериммунной реальности мы предлагаем много образовательных ресурсов, таких как новости, технический блог, наши ТГ-каналы и программы обучения:
- Курс «Разработка для KasperskyOS» на платформе Stepik
- Сайт KasperskyOS
- Telegram-канал «KasperskyOS. Разработка»
- Кибериммунный блог
- Хакатон по кибериммунной разработке с призовым фондом 1 000 000 рублей
Давайте вместе разрушать мифы! Будет интересно.