Záleží, jaké hrozby chceme řešit. A u opatření potom záleží na celém schématu, ne tolik na jedné technologii.
Izolace aplikací we Waylandu je určitě fajn věc, pokud ovšem máme izolováno i jinde. Jinak to může být celkem bezcenná hračka. Pokud řešíme lokálního útočníka, který u nás spustil jinou aplikaci a má přístup do ~, může zkoušet různé jiné nepravosti – od nahrazení cache v prohlížeči (zapíšu mu přímo do cache nějaký špehovací JS s dlouhou expirací…) přes nahrazování desktop files (uživatel pak spustí mírně jinou aplikaci…) až po alias sudo v .bashrc. A to jsem nemluvil o takových věcech jako „debugging“ jiného procesu. Toto Wayland nevyřeší.
Separátní prohlížeče (popř. separátní profily stejného prohlížeče) – tím vyřešíme zájmena CSRF a uXSS, pokud se ale útočníkovi podaří vykonat vlastní kód, je to bez sandboxingu bezzubé.
Firejail – bohužel jsem nenašel, před čím má přesně chránit, to autoři moc nezdokumentovali. Co jsem ale zkoušel, ochrání spíše proti menším zranitelnostem jako path traversal v prohlížeči. Pokud máme větší zranitelnost nebo pokud je aplikace přímo škodlivá, Firejail moc nepomůže.
Subgraph OS: Asi to bude lepší než Firejail (navíc je to celý systém, ne snaha vyřešit jednu sice věc ve větším schématu), ale, co jsem četl, zas tak silné to taky nebude: https://micahflee.com/2017/04/breaking-the-security-model-of-subgraph-os/
Qubes OS mi přijde jako nejlepší volba, pokud má uživatel dost RAM
Jenom doplním, že Qubes OS není omezený na Fedoru. Je tu i oficiální template pro Debian a pak tu jsou templates pro Whonix, Ubuntu a Arch.
Ano, v dom0 je jen upravená Fedora, ale to je tak to poslední místo, kde mě zajímá konkrétní distribuce. Spíš je trochu škoda, že je staršího data, takže s novějším HW jsem potřeboval novější kernel. Ten je naštěstí v repositářích (unstable), což jsem ale zjistil až po kompilaci l
Sten to už odpověděl, já jen přidám, že toho je trošku víc. Oproti kombinaci Fedora + VirtualBox (a do jisté míry i oproti Fedora + Xen) to má pár výhod:
* Bezpečnost – tak, jak je Xen v QubesOS použit, izoluje QEMU do dalšího malého virtuálního stroje. Tím předchází spoustě bezpečnostních problémů. Dále tu není nič jako defaultně připojený mikrofon atd. Qubes taky odděluje například připojení k síti – síťovou kartu obsluhuje separátní virtuální stroj a dom0 (ta privilegovaná část) ani nemá přímo přístup k síti.
* HW nároky – Qubes umí ve VM spustit redukované GUI (bez window manageru atd., což je v seamless módu celkem zbytečnost) a umí za běhu přidělovat a odebírat RAM. Díky tomu není problém mít spuštěných hodně virtuálních strojů. S 16GiB RAM není problém jich mít třeba deset (i víc) s tím, že jeden z nich zabirá polovinu a zbytek se dělí o zbylých 8GiB… A stačí jim to, některé VM si vystačí s třeba 300MiB RAM nebo i méně.
* Integrace – QubesOS má například pěkný seamless mód.