Защищенная операционная система qubes для настольных компьютеров: установка

Обзор защищенных и анонимных linux-дистрибутивов

Импортозамещение в полный рост

Kali Linux

Как выглядит интерфейс Linux

Linux может выглядеть как угодно — смотря что вам нравится.

Когда вы смотрите на окна операционной системы, на самом деле вы смотрите на специальную программу-менеджер. Это надстройка над ядром, которая рисует красивые окна. В операционных системах Windows и MacOS оконные менеджеры стандартные и не меняются, а в Linux можно выбрать свой. 

Дистрибутивы Linux выглядят по-разному в зависимости от того, какой оконный менеджер там стоит. Можно вообще обойтись без него. 

Например, можно поставить себе оконный менеджер KDE:

Или можно использовать GNOME:

Или менеджер Xfce, если железо совсем слабое:

Можно вообще не пользоваться оконным менеджером и управлять всем из командной строки, как это делают на серверах:

Встречайте: Qubes OS

Qubes OS – это дистрибутив Linux (если в данном случае такое понятие вообще применимо), разрабатываемый под руководством небезызвестной Джоанны Рутковской, польского специалиста по безопасности. Основная идея Qubes OS в повсеместной изоляции на уровне виртуальных машин, при помощи которых осуществляется отделение пользовательских приложений от базовой ОС.

Сердце операционной системы – гипервизор Xen, используемый для запуска виртуальных машин, каждая из которых работает под управлением ядра Linux и набора стандартных служб и приложений уровня пользователя (их набор и количество может быть разным) и мультиплексирования ресурсов компа между ВМ. На рисунке «Архитектура Qubes OS» показана базовая архитектура ОС.

Каждое приложение (или набор приложений) запускается внутри обособленных виртуальных машин, четко отделенных друг от друга с помощью гипервизора. Для повышения безопасности весь сетевой код (включая сетевые драйвера, стек TCP/IP, DHCP-клиент и т.д.) работает в рамках отдельной виртуальной машины, так же как и код драйверов накопителей. Это возможно благодаря технологии виртуализации устройств Intel VT-d. Так называемая корневая виртуальная машина (Dom0 в терминологии Xen) используется для запуска всех остальных драйверов, системы X Window, графического менеджера окон и набора административных утилит для запуска приложений (виртуальных машин).

За счет Xen создателям Qubes OS удалось отодвинуть механизм изоляции исполняемого кода гораздо ниже, чем это сделано в классических операционных системах. В этой модели уязвимым местом становится не ядро операционной системы, а гипервизор, код которого в сотни раз меньше и гораздо проще (а значит, надежнее) кодовой базы ядра Linux. Механизмы обмена информацией между виртуальными машинами также намного более просты, чем их многочисленные аналоги для коммуникации между стандартными процессами в ядре ОС, а технология Intel VT-d, позволяющая вынести код драйверов в отдельные виртуальные машины, позволяет изолировать ненадежные, с точки зрения безопасности, драйвера.

Обычные пользователи пока в безопасности

Антироссийские санкции Canonical распространяются пока исключительно на корпоративных пользователей Ubuntu. Физлиц они не затрагивают, о чем британский разработчик открыто сообщил в своем заявлении. «Мы не будем ограничивать доступ к патчам безопасности для российских пользователей Ubuntu», – сказано в нем.

Заявление Canonical

Canonical утверждает, что свободные платформы сейчас важны для обычных россиян как никогда. В качестве примера таких платформ компания привела Tor, VPN и, разумеется, Ubuntu.

Однако остается открытым вопрос, как скоро Canonical изменит свое решение. К слову, Canonical смогла выйти на самоокупаемость лишь в марте 2020 г., спустя долгие 16 лет со дня основания.

Обзор системной архитектуры

Гипервизор Xen и административный домен (Dom0)

Гипервизор обеспечивает изоляцию между разными виртуальными машинами. Административный домен, также называемый Dom0 (термин, унаследованный от Xen), по умолчанию имеет прямой доступ ко всему оборудованию. Dom0 размещает GUI домен и управляет графическим устройством, а также устройствами ввода, такими как клавиатура и мышь. Домен GUI запускает X сервер, на котором отображается рабочий стол пользователя, а оконный менеджер, который позволяет пользователю запускать и останавливать приложения и управлять их окнами.

Интеграция различных виртуальных машин обеспечивается средством просмотра приложений, которое создает иллюзию для пользователя, что приложения выполняются изначально на рабочем столе, хотя на самом деле они размещены (и изолированы) на разных виртуальных машинах. Qubes объединяет все эти виртуальные машины в одну общую среда рабочего стола.

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

Домен Dom0 управляет виртуальными дисками других виртуальных машин, которые фактически хранятся в виде файлов в файловой системе (ах) dom0. Дисковое пространство экономится благодаря тому, что различные виртуальные машины (ВМ) используют одну и ту же корневую файловую систему в режиме только для чтения. Раздельное дисковое хранилище используется только для каталога пользователя и настроек каждой виртуальной машины. Это позволяет централизовать установку программного обеспечения и обновления. Также возможно установить программное обеспечение только на конкретную виртуальную машину, установив его как пользователь без полномочий root или установив его в нестандартной, специфичной для Qubes. / rw иерархия.

Сетевой домен

Сетевой механизм наиболее подвержен атакам безопасности. Чтобы обойти это, он изолирован на отдельной непривилегированной виртуальной машине, называемой сетевым доменом.

Дополнительный брандмауэр виртуальная машина используется для размещения брандмауэра на основе ядра Linux, так что даже если сетевой домен будет скомпрометирован из-за ошибки драйвера устройства, брандмауэр по-прежнему изолирован и защищен (поскольку он работает в отдельном ядре Linux в отдельном ВМ).

Виртуальные машины приложений (AppVM)

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

Некоторые документы или приложения можно запускать на одноразовых виртуальных машинах с помощью действия, доступного в файловом менеджере. Механизм следует идее песочницы: после просмотра документа или приложения вся Disposable VM будет уничтожена.

Каждый домен безопасности помечен цветом, а каждое окно помечено цветом домена, которому оно принадлежит. Таким образом, всегда четко видно, к какому домену принадлежит данное окно.

Установка и требования

Qubes не предназначался для запуска как часть мультизагрузочная система потому что, если злоумышленник получит контроль над одной из других операционных систем, он, вероятно, сможет взломать Qubes (например, до загрузки Qubes). Тем не менее, Qubes все еще можно использовать как часть мультизагрузочной системы и даже использовать grub2 как загрузчик /менеджер загрузки. Стандартная установка Qubes занимает все место на носитель информации (например. жесткий диск, флешка ), на котором он установлен (а не только все доступное свободное пространство), и использует LUKS /dm-crypt полное шифрование диска. Можно (хотя и не тривиально) настроить большую часть установки Qubes OS, но по соображениям безопасности это не рекомендуется для пользователей, которые не очень хорошо знакомы с Qubes. Qubes 4.x требуется не менее 32 ГБ дискового пространства и 4 ГБ ОЗУ.Однако на практике обычно требуется более 6-8 ГБ ОЗУ, поскольку, хотя его можно запустить только с 4 ГБ ОЗУ, пользователи, скорее всего, будут ограничены запуском не более трех кубов одновременно.

С 2013 года Qubes не поддерживает 32-битные архитектуры x86 и теперь требует 64-битного процессора. Qubes использует Intel VT-d / AMD AMD-Vi, который доступен только на 64-битных архитектурах, для изоляции устройств и драйверов. 64-битная архитектура также обеспечивает немного большую защиту от некоторых классов атак. Начиная с Qubes 4.x, Qubes требует либо Intel процессор с поддержкой VT-x с EPT и Intel VT-d технология виртуализации или AMD процессор с поддержкой AMD-V с RVI (SLAT) и AMD-Vi (также известная как AMD IOMMU) технология виртуализации. Qubes нацелен на рынок настольных компьютеров. На этом рынке доминируют ноутбуки с процессорами и наборами микросхем Intel, и, следовательно, разработчики Qubes сосредотачиваются на технологиях Intel VT-x / VT-d. Это не является серьезной проблемой для процессоров AMD, поскольку AMD IOMMU функционально идентична Intel VT-d.

Шаблонные виртуальные машины, целостность системы и защита от бэкдоров

Еще одним механизмом Qubes, реализующим дополнительный уровень защиты данных пользователя настольной системы, является механизм поддержания целостности системы. В том случае, если злоумышленникам удастся скомпрометировать обычную настольную систему, они смогут установить в нее версии таких стандартных утилит, как ls или bash с бэкдорами, или же установить дополнительные программы, активировав механизм их запуска в процессе загрузки системы. В случае Qubes виртуальные машины приложений основываются на шаблонных виртуальных машинах (templateVM), которые по умолчанию содержат базовые компоненты таких дистрибутивов, как Fedora, Debian или Whonix (участники сообщества также поддерживают шаблонные виртуальные машины на основе компонентов других популярных дистрибутивов). При создании новой виртуальной машины приложения вам предоставляется возможность выбора шаблона, на которой она будет основываться, а в процессе ее запуска ей предоставляется доступ на чтение к корневой файловой системе выбранной шаблонной виртуальной машины. Несмотря на то, что пользователь все же может устанавливать программное обеспечение в рамках виртуальной машины приложения или изменять содержимое ее корневой файловой системы, при остановке виртуальной машины все изменения удаляются. При этом сохраняются лишь изменения файловых систем, смонтированных в директории /rw, /usr/local и /home. Это означает, что история и закладки вашего веб-браузера будут сохранены, но в том случае, если злоумышленник все же сможет скомпрометировать ваш веб-браузер и попытается установить версию командной оболочки bash или веб-браузера Firefox с бэкдором, после следующего запуска этой виртуальной машины бэкдор исчезнет сам собой.

Также по умолчанию в рамках виртуальных машин приложений не исполняются какие-либо системные службы, такие, как демон планирования задач cron. Это означает, что злоумышленники также не смогут создать задачу cron для планирования исполнения бэкдора. Несмотря на то, что у злоумышленников все же остается возможность сохранения вредоносного программного обеспечения в домашней директории виртуальной машины приложения, после перезапуска виртуальной машины это вредоносное программное обеспечение больше не будет исполняться и у них не будет возможности его автоматического перезапуска.

Но как в таком случае устанавливать программное обеспечение? Так как каждая виртуальная машина приложения использует корневую файловую систему шаблонной виртуальной машины, при необходимости установки нового программного обеспечения вам придется запустить менеджер программного обеспечения в рамках соответствующей шаблонной виртуальной машины, такой, как yum, apt-get, менеджер с графическим интерфейсом или любой другой, и установить необходимое программное обеспечение. После этого Qubes установит факт наличия новых элементов меню приложений и сделает их доступными в рамках виртуальных машин приложений, основывающихся на использованной шаблонной виртуальной машине.

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

Машина времени Qubes OS

Пользователь Qubes OS не тревожится по поводу того, что после установки нового драйвера или плагина к браузеру система может упасть. Если уж что и упадёт, то только виртуальная машина, в которой эта установка производилась. Для пользователя этот будет выглядеть как закрытие окон одного цвета — окон, принадлежащих рухнувшей машине.

Если такая катастрофа произошла, Qubes OS обращается к домену-хранилищу. В нём содержатся девственно чистый образ пустой виртуальной машины (вдруг пользователю приспичит создать машину нового цвета?) и образы дисков с корневой файловой системой и пользовательскими каталогами для всех уже созданных виртуальных машин. Образы эти принадлежат не физическим, а логически дискам и создаются специальным драйвером, именуемым Device Mapper. Задача Device Mapper — динамическое отображение дисковых разделов с использованием механизма COW (Copy-On-Write).

Для дополнительной безопасности образы COW созданных виртуальных машин шифруются с помощью технологии LUKS. Завершая работу Qubes OS или одной из её виртуальных машин, домен хранилища сохраняет последние изменения в образах COW. Именно поэтому в Qubes OS имеется возможность «откатить» работу любой виртуальной машины к предыдущему безопасному состоянию.

Прикладные программы находятся в безопасности внутри виртуальных машин. Но что если злоумышленник нацелится на сам гипервизор Xen? В Qubes OS на этот случай используются аппаратные возможности, обеспечивающие так называемую доверенную загрузку системы, которая препятствует любой несанкционированной попытке вмешаться в процесс загрузки Xen (а именно в этот момент гипервизор наиболее уязвим). Базируется доверенная загрузка на спецификации TPM (Trusted Platform Module), описывающей реализацию аппаратного криптопроцессора, позволяющего подтвердить подлинность любого «железного» компонента» компьютера.

В настоящее время Qubes OS поддерживает реализацию TPM в процессорах компании Intel, которая именуется Intel Trusted Execution Technology (Intel TXT).

Цели безопасности

Схема доменов безопасности

Qubes реализует Безопасность через изоляцию подход. Предполагается, что не может быть идеальной среды рабочего стола без ошибок: такая среда насчитывает миллионы строки кода и миллиарды программного обеспечения /аппаратное обеспечение взаимодействия. Одной критической ошибки в любом из этих взаимодействий может хватить для вредоносное ПО взять под контроль машину.

Чтобы защитить рабочий стол, пользователь Qubes старается изолировать различные среды, чтобы в случае взлома одного из компонентов вредоносное ПО получало доступ только к данным внутри этой среды.

В Qubes изоляция обеспечивается в двух измерениях: аппаратные контроллеры могут быть изолированы в функциональные домены (например, сетевые домены, домены USB-контроллеров), тогда как цифровая жизнь пользователя определяется доменами с разными уровнями доверия. Например: рабочий домен (самый надежный), торговый домен, случайный домен (менее доверенный). Каждый из этих доменов работает в отдельном виртуальная машина.

В (немного спорном) дизайнерском решении, Qubes виртуальных машин, по умолчанию, имеет беспарольный корневой доступ (например, без пароля судо ).Безопасная загрузка UEFI не поддерживается «из коробки», но это не считается серьезной проблемой безопасности. Qubes — это не многопользовательский система.

Изоляция

В отличие от большинства традиционных настольных операционных систем Linux, Qubes OS использует виртуализацию. Различные виртуальные машины (ВМ) разделяют и компартментализируют ее среду. По умолчанию доступно несколько виртуальных машин. Вы также можете создавать свои собственные. Виртуализация проявляется на двух фронтах: программном и аппаратном. Поэтому аппаратные контроллеры разделяются на домены, такие как домены контроллеров USB. Программные же разделяются на домены с различными уровнями доверия

Например, у вас может быть рабочий домен для наиболее доверенных приложений и случайный домен для наименее доверенных доменов. Каждый из этих доменов работает на отдельной виртуальной машине

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

Гипервизор Xen

Qubes OS использует гипервизор Xen для изоляции различных виртуальных машин. Тем не менее, существует административный домен D0m0. Этот административный домен имеет доступ к каждой части аппаратного обеспечения. Более того, в Dom0 находятся такие аспекты, как графический интерфейс пользователя (GUI) и периферийные устройства, такие как клавиатура и мышь. Но поскольку есть графический интерфейс пользователя, приложения выглядят так, как будто они работают на одном рабочем столе. Напротив, приложения изолированы в виртуальных машинах.Qubes OS использует Application Viewer для создания видимости того, что приложения работают на собственном рабочем столе

Вместо этого Qubes просто интегрирует приложения в единую среду рабочего стола

Лучшие дистрибутивы Linux для новичков

Состояние разработки

Горькая правда о модели разработ­ки открытого кода в том, что про­екты выдыхаются и умирают. Это относится и к дистрибутивам безопасности и приватности, и уже было несколько весь­ма серьезных претендентов, которые либо погибли, либо впали в анабиоз.

Хотя обычно мы не оцениваем спец-ди­стрибутивы по состоянию их разработки, оно сыграет важную роль при оценке ди­стрибутивов в данном Сравнении

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

Если вы с подозрением относитесь к но­вым проектам, вы, возможно, решите дер­жаться подальше от Subgraph, несмотря на его прекрасную функциональность, по­скольку проект находится на очень ранней стадии развития.

TENS, ранее известный как Lightweight Portable Security, обновля­ется регулярно, обычно посредством квар­тальных корректировочных версий. Ана­логично, Linux Kodachi, разрабатываемый провайдером профессиональных ИТ-­услуг в области безопасности, впервые вышел в 2013 г., но пребывал в состоянии спячки до 2016 г., и сейчас мы видим его релизы и обновления, выходящие регулярно.

Who­nix выпускает свои релизы весьма активно с самого своего появления в 2012 г. и полу­чает обновления каждые несколько меся­цев. Далее идет Tails, являющийся одним из дистрибутивов безопасности с луч­шей поддержкой, с быстрым темпом раз­работки и появлением новых релизов раз в несколько месяцев.

Kali

  • Первый релиз: 2013 год
  • Основан на: Debian
  • Платформы: x86, x64, ARM, VirtualBox
  • Графическая оболочка: Xfce

Как ты, конечно, знаешь, Kali — один из самых распиаренных дистрибутивов для хакеров, и было бы странно, если бы мы про него не написали. О нем знают даже школьники, а с относительно недавних пор он доступен в виде приложения прямо из Microsoft Store! Конечно, доступность — несомненный плюс, но система слегка перегружена набором инструментов (хотя и не так сильно, как BlackArch), к тому же часть из них из коробки работает криво или не работает вообще.

Защиты от дурака в Kali тоже не предусмотрено. Как показывает практика, не всем пользователям понятно, что не стоит делать эту систему основной. От ядра до оболочки она была создана и оптимизирована для выполнения боевых задач на фронтах ИБ и плохо пригодна для спокойной ежедневной работы. Многие нужные в быту механизмы там попросту отсутствуют, а попытка их установить, скорее всего, вызовет сбои в нормальной работе ОС, если не выведет ее из строя полностью.

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

Kali предназначена для широкого спектра задач, но основная из них — атаки в сетевой среде, например, поиск уязвимостей в веб-приложениях и получение доступа к беспроводным сетям. Как наследник BackTrack, Kali вообще неплохо приспособлена для работы с беспроводными каналами связи, в особенности Wi-Fi. Проверка на прочность удаленных хостов тоже возможна с помощью, например, Metasploit (подробнее о нем — в нашем недавнем обзоре), но именно на работу с Wi-Fi ориентировано ядро и значительная часть инструментов.

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

Kali работает в WSL

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

Вердикт такой: если умеешь пользоваться — классная штука, но не вздумай показывать ее ребенку. Один из авторов видел, что будет, если нарушить это указание.

Firetools — лучшая программа с графическим интерфейсом для создания изолированной программной среды

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

Firetools является важнейшим для пользователей Linux инструментом изоляции программ. Изоляция позволяет запускать файл без влияния на другие файлы — это отличный вариант для тестирования вредоносных программ и изолирования веб-браузера для предотвращения попадания опасных веб-скриптов в вашу систему.

Firetools – это альтернативная версия Firejail с графическим интерфейсом, который является изолирующим приложением с открытым исходным кодом для тестирования вредоносных программ и безопасной работы браузера. Я настроил Firetools на автоматическую изоляцию Mozilla Firefox при каждом запуске, поэтому я могу спокойно пользоваться интернетом, не переживая, что вредоносные скрипты заразят мой компьютер.

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

Резюме:

Firetools – это обновление классической программы изоляции FireJail, которая стала более удобной для пользователей.

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

Помимо этого, программа абсолютно бесплатна, и на нее стоит обратить внимание всем, кто желает усилить защиту своего компьютера с Linux от онлайн-угроз.

Понравилась статья? Поделиться с друзьями:
Tehnik Shop
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: