Nowa wersja możliwie bezpiecznego systemu z Polski może podbić biznes

Strona główna Aktualności
image

O autorze

Joanna Rutkowska i jej towarzysze z Invisible Things Lab ogłaszają dostępność Qubes OS 4.0 – stabilnego wydania nowej wersji możliwie bezpiecznego systemu operacyjnego o polskich korzeniach. W erze wielkiego zwrotu ku bezpieczeństwu IT, gdy wreszcie uświadamiamy sobie na jak słabych fundamentach budowano współczesne rozwiązania informatyczne, Qubes OS ze swoją niespotykaną nigdzie indziej architekturą faktycznie obiecuje możliwie wysoki poziom bezpieczeństwa. Poziom na tyle wysoki, że jego poprzednia wersja 3.2 została uznana za najlepszy dostępny dziś na rynku system operacyjny przez samego Edwarda Snowdena. A czego możemy spodziewać po wersji 4.0? Jedno już jest pewne – to system, który staje się gotowy do zastosowań biznesowych i właśnie tam będzie mógł pokazać swój potencjał.

Jak wiadomo, Qubes OS ma rewolucyjną, niespotykaną nigdzie indziej architekturę: poszczególne komponenty systemu działają w izolowanych od siebie maszynach wirtualnych, pod kontrolą hiperwizora. Komunikację między tymi izolowanymi komponentami, a także maszynami wirtualnymi z systemami-gośćmi (np. Fedorą czy Windowsem 7) zapewniają autorskie mechanizmy Qubes OS-a.

Przepisanie rdzenia systemu

Przez pierwsze lata budowania systemu, ze względu na niewielkie zasoby zespołu, stawiano przede wszystkim na dodawanie nowych funkcji i rozbudowę funcjonalności, często kosztem dokumentacji czy przejrzystości kodu. Wersja 4.0 przynosi daleko posuniętą refaktoryzację kodu, przepisano praktycznie cały rdzeń systemu z myślą o większej modularności i rozszerzalności.

Dlatego też nowy Cubes Core Stack, „klej” który łączy pozostałe komponenty systemu, zapewnia teraz sporo wcześniej niemożliwych czy nieplanowanych możliwości – m.in. wsparcie dla wielu tymczasowych maszyn wirtualnych (które można szybko wywołać i szybko zniszczyć), mechanizm natychmiastowego klonowania maszyn wirtualnych, nowy interfejs programowania dla pamięci masowych i ulepszony interfejs zapory sieciowej, który poprawnie współpracuje z innymi narzędziami do filtrowania ruchu.

Wreszcie też Cubes OS ma porządną dokumentację API.

Domyślnie sprzętowa para-wirtualizacja

Druga kluczowa zmiana to przejście od parawirtualizacji (PV) do sprzętowych maszyn wirtualnych (HVM). Jako że Qubes OS bazuje na hiperwizorze Xen, zapewnia trzy tryby wirtualizacji:

  • Domyślne do tej pory PV wymaga w maszynach-gościach zgodnego z Xenem kernela. Jest to wydajne rozwiązanie, zapewniające lepszy dostęp do zasobów sprzętowych, ale uniemożliwiające uruchamianie systemów niezgodnych z Xenem, jest też mniej bezpieczne.
  • HVM wykorzystuje sprzętowe mechanizmy wirtualizacji procesora, więc nie wymaga specjalnego wsparcia dla Xena, pozwalając uruchomić dowolny system w maszynie wirtualnej. Jest też znacznie bezpieczniejsze, dzięki sprzętowej izolacji między maszynami.
  • PVH to specjalny tryb parawirtualizacji, w którym korzysta się z zalet wirtualizacji sprzętowej przy jednoczesnym wykorzystaniu kerneli zgodnych z Xenem.

Do tej pory w Qubes OS-ie wszystkie maszyny startowały w trybie PV, teraz jednak niemal wszystkie będą startowały jako PVH. Tryb HVM zarezerwowano dla maszyn, które muszą mieć dostęp do urządzeń na magistrali PCIe. Takie podejście zabezpiecza kluczowe maszyny przed atakami Meltdown i Spectre, a także zmniejsza powierzchnię ataku na sam hiperwizor.

Ulepszony interfejs zarządzania

Sama Joanna Rutkowska wielokrotnie przyznawała, że jedną z najgorszych cech Qubes OS-a jest menedżer maszyn wirtualnych, który do tej pory był używany dla dwóch zupełnie różnych typów interakcji: tworzenia lub modyfikowania stałych konfiguracji systemu (np. tworzenia czy usuwania nowej aplikacyjnej maszyny wirtualnej) oraz obserwowania lub modyfikowania przejściowego stanu systemu – np. zatrzymywania maszyn, sprawdzania które działają). Problem pogarszało to, że aplikacje uruchamiało się przez menu Start, które nie jest częścią menedżera. Ludzie więc często próbowali stworzyć nową maszynę wirtualną z menu Start, i uruchomić aplikację przez menedżera Qubesa.

Teraz wygląda na to, że te wszystkie funkcje mają zostać rozdzielone na niezależne narzędzia. Zanim to nastąpi, korzystać mamy z Qube Managera, który prezentuje listę działających maszyn wirtualnych, umożliwia zarządzanie nimi i z poziomu panelu podłączanie do nich urządzeń sprzętowych (np. mikrofonu czy pendrive’a).

Te niezależne narzędzia będą działały w oparciu o nowy interfejs administracyjny (Admin API), pozwalający nawet na bezpieczne zarządzanie spoza głównej maszyny wirtualnej (dom0). Pozwoli to wyciągnąć kod interfejsu graficznego do mniej zaufanej maszyny, zdalne zarządzanie z innych komputerów, otwiera drogę do wirtualizacji grafiki 3D, a nawet uruchomienie w chmurze usługi Qubes-as-a-Service.

Szyfrowane kopie zapasowe

Przez kilka wersji rozwojowych Qubes OS-a wspomniany Qube Manager nie pozwalał na obsługę zadań kopii zapasowych, trzeba było wszystko to robić z konsoli. W wersji stabilnej można robić to znowu z interfejsu graficznego, tak jak Qubes OS-ie 3.2. Różnica jest taka, że teraz wszystkie kopie zapasowe są domyślnie szyfrowane.

Przywrócono też możliwość odtwarzania maszyn wirtualnych z wersji 3.2 systemu. Jest to zresztą jedyny pewny sposób by zaktualizować Qubes OS-a, ze względu na głębokie różnice w architekturze trzeba go postawić na nowo, a potem ręcznie przywrócić używane maszyny z kopii zapasowych.

Wybredny instalator

Nie widać jakichś specjalnych nowości w instalatorze systemu poza jedną: jeśli spróbujemy uruchomić go na komputerze nie wspierającym mechanizmów wirtualizacji IOMMU/VT-d oraz SLAT, zostaniemy ostrzeżeni, a później uruchamianie maszyn wirtualnych będzie wiązało się z licznymi problemami. Można to obejść, ale nie jest to zalecane: złośliwe urządzenia z dostępem do DMA mogłyby uzyskać nieuprawniony dostęp do pamięci operacyjnej.

Co dalej, Qubes OS-ie?

Jedno jest pewne – ambitny projekt realizowany siłami niewielkiej grupki ochotników potrzebuje pieniędzy. Granty z Open Technology Fund nie wystarczą. Zmiany wprowadzone w Qubes OS-ie 4.0 otwierają jednak drogę do zupełnie nowego rynku, obfitującego w pieniądze – wielkiego biznesu. Ze względu na rosnące obawy przed wyciekiem informacji, nowe regulacje dotyczące bezpieczeństwa przetwarzania danych, system zespołu Joanny Rutkowskiej mógłby znakomicie sprawdzić się w tych organizacjach, które mają dużo do ukrycia, jednak jego „hobbystyczna” natura utrudniała wdrożenia Enterprise.

Wraz z solidną dokumentacją, przejrzystymi interfejsami programowania i sprzętową izolacją maszyn wirtualnych, Qubes OS 4.0 może być gotowy by zabezpieczyć informacje wszędzie tam, gdzie ryzyko włamania jest zbyt duże, a Windows nie wydaje się wystarczająco bezpiecznym systemem.

Zainteresowani przetestowaniem tego systemu mogą pobrać obrazy ISO bezpośrednio z serwerów projektu, lub przez BitTorrenta – linki znajdziecie na stronach pobierania. Oczywiście maszyna wirtualna z Windowsem nie jest domyślną częścią Qubes OS-a, aby z niej korzystać, należy posiadać licencję. Jeśli jesteście zainteresowani praktycznym przewodnikiem po Qubes OS-ie na łamach dobrychprogramów – dajcie znać w komentarzach.

Przydatne linki

© dobreprogramy

Komentarze