Как создать защищенную ОС с нуля? Взять memory safe язык программирования, написать на нем высокоуровневые части ядра, поверх него положить концепцию замкнутых песочниц и единый канал связи между песочницами и ОС, а все сетевое взаимодействие наладить через некую разновидность VPN. Как сделать защищенной уже существующую ОС? Попробовать прилепить все это к ней и постараться ничего не сломать по пути.

 

Дисклеймер

Честно говоря, изначально Subgraph OS не произвела на меня никакого впечатления. Очередной проект, ставящий своей целью разместить пользовательский софт в песочницах и таким образом достигнуть каких-то непонятных уровней защищенности ОС. Нет, ребята, в Qubes OS все это уже реализовано, причем на самом низком уровне, на уровне гипервизора Xen, да еще и с изоляцией сетевого стека и слоя работы с накопителями. Однако, следя за развитием проекта, я начал замечать движение в правильную сторону. Песочницы оказались далеко не так просты, как представлялось, а система обрела множество других правильных черт, в том числе ядро с включенными патчами PaX/Grsecurity и прокси-слой, который пропускает трафик приложений через Tor, анонимизируя его источник.

В целом операционка начала обретать черты из коробки защищенной системы, которую гипотетический пользователь может поставить и просто юзать, не вникая в детали того, как это все работает. А это уже тянет если не на премию, то как минимум одну статью в одном русскоязычном журнале. Тем более Сноуден уже высказался, почему нельзя мне?

 

Где взять?

Subgraph OS до сих пор находится в стадии активной разработки, поэтому для загрузки доступна только alpha-версия. Скачать ее можно с официальной страницы, размер ISO-образа 1,4 Гбайт, для установки пригоден практически любой комп с не менее чем 2 Гбайт оперативки, в том числе виртуальная машина на базе VirtualBox или VMware.

Устанавливается все это дело с помощью обычного инсталлятора Debian, а в качестве рабочего стола выступает немодифицированный GNOME 3. Конечно же, имеется набор предустановленных приложений: плеер VLC, офисный пакет LibreOffice, почтовый клиент IceDove и другие, плюс стандартные репозитории, из которых можно ставить любой софт с помощью apt-get.

Так что внешне и по уровню user experience операционка практически ничем не отличается от типичного дистрибутива Linux. Но в самой основе системы есть множество различий.

install
Стандартный инсталлятор Debian
 

Песочницы

Ключевая идея Subgraph OS — запуск пользовательских приложений в изолированных песочницах. Для этого задействована подсистема Oz, состоящая из демона (системного сервиса), получающего запросы на создание sandbox’ов, X-сервера Xpra и набора специальных утилит.

В своей основе Oz очень сильно напоминает Firejail, о котором мы уже рассказывали в статье «Игры с песочницей». Для изоляции приложений Oz применяет пространства имен, дополнительно ограничивая доступные приложению системные вызовы с помощью механизма seccomp-bpf. Общение приложения с графической подсистемой осуществляется с помощью виртуального X-сервера Xpra, который запускается внутри каждой песочницы. X-сервер основной системы подключается к Xpra и выводит картинку приложения на экран. Это очень важный момент, так как стандартный метод запуска графических приложений в песочницах — это прокидывание сокета X-сервера /tmp/.X11-unix/X0 в саму песочницу, что открывает запущенному в песочнице приложению возможность не только выводить картинку на экран и обрабатывать события устройств ввода, но и получать доступ к любому окну любого другого приложения и перехватывать любые клавиши. Xpra решает эту проблему.

В целом запуск приложения в Subgraph OS выглядит примерно так:

Продолжение доступно только подписчикам

Вариант 1. Оформи подписку на «Хакер», чтобы читать все материалы на сайте

Подписка позволит тебе в течение указанного срока читать ВСЕ платные материалы сайта. Мы принимаем оплату банковскими картами, электронными деньгами и переводами со счетов мобильных операторов. Подробнее о подписке

Вариант 2. Купи один материал

Заинтересовала информация, но нет возможности оплатить подписку? Тогда этот вариант для тебя! Обрати внимание: этот способ покупки доступен только для материалов, опубликованных более двух месяцев назад.


Оставить мнение

Check Also

Хроники битвы при Denuvo. Как «непробиваемая» игровая защита EA Origin оказалась пробиваемой

Защита от пиратства Denuvo пришла на смену SecuROM и связана с одним действующим лицом – Р…