Když se i svoboda musí bránit: Lekce z napadení emulátoru Cemu
Všichni jsme tak trochu žili v iluzi, že svět Linuxu je neprostupná pevnost. Že pokud máme k dispozici zdrojový kód, jsme automaticky v bezpečí před nekalými úmysly digitálních pirátů. Jenže realita nás občas přetáhne po hlavě pořádně těžkým svazkem dokumentace. Aktuální incident s emulátorem Cemu, populárním nástrojem pro hraní titulů z Wii U, je přesně tím budíčkem, který jsme možná nepotřebovali, ale rozhodně si ho zasloužili.
Pro ty, kteří se v komunitě nepohybují denně: Cemu byl dlouhá léta synonymem pro špičkový, ale uzavřený software. Jeho přerod v open source projekt byl pro nás, zastánce svobodného softwaru a hnutí GNU, velkým vítězstvím. Konečně jsme viděli pod kapotu, konečně jsme mohli přispívat. Jenže právě tato otevřenost a s ní spojená infrastruktura se stala terčem útoku, který ukázal na zranitelné místo celého našeho ekosystému – na takzvaný dodavatelský řetězec (supply chain).
Bezpečnostní iluze a tvrdá realita
Představte si situaci: stahujete si oficiální sestavení ze známého GitHub repozitáře. Věříte vývojářům, věříte platformě. Jenže v posledních týdnech se do linuxových verzí ve formátu AppImage a do ZIP archivů vloudil nezvaný host. Malware. Nebyl tam proto, že by autoři Cemu náhle změnili své morální zásady a rozhodli se těžit kryptoměny na vašich procesorech. Byl tam proto, že někdo dokázal kompromitovat proces, kterým se ze zdrojového kódu stává spustitelný program.
Tady narážíme na klasický problém moderního vývoje. Zatímco my se soustředíme na čistotu kódu a svobodu licencí, útočníci míří na automatizované systémy, které ty binární balíčky chrlí. Je to ironické – zatímco u proprietárního softwaru jsme zvyklí na to, že nevíme, co se děje uvnitř, u open source nás často ukolébá falešný pocit bezpečí. „Vždyť je to na GitHubu, někdo by si toho všiml,“ říkáme si. Jenže kdo z nás skutečně kontroluje každý commit v buildovacích skriptech předtím, než si stáhne novou verzi své oblíbené hry?
Anatomie jednoho napadení
V případě Cemu šlo o sofistikovanou infiltraci. Škodlivý kód byl navržen tak, aby v systému tiše operoval a pravděpodobně sbíral citlivá data. Pro uživatele Linuxu, kteří se často cítí nadřazeni uživatelům komerčních operačních systémů z Redmondu, je to studená sprcha. Ukazuje se, že naše „imunita“ není vrozená, ale vydřená. A pokud polevíme v ostražitosti, dopadneme stejně jako kdokoli jiný.
Malware v AppImage je obzvláště zákeřná věc. Tento formát jsme si oblíbili pro jeho jednoduchost – stáhnete, nastavíte příznak spustitelnosti a hrajete. Žádné složité závislosti, žádné PPA repozitáře. Jenže právě tato izolovanost od systémových balíčkovacích nástrojů znamená, že se malware může snadno schovat uvnitř onoho úhledného balíčku. Je to jako trojský kůň, kterého si sami pozvete do obývacího pokoje, protože vypadá jako hezký dárek.
Proč je otevřenost stále řešením, nikoliv problémem
Někdo by mohl namítnout, že kdyby byl Cemu stále uzavřeným projektem pod kontrolou úzké skupiny lidí, k ničemu takovému by nedošlo. To je ovšem nebezpečný omyl. Rozdíl mezi uzavřeným a otevřeným softwarem v případě bezpečnostního incidentu není v tom, zda k němu dojde, ale v tom, jak se na něj reaguje. Tým kolem Cemu na problém upozornil okamžitě, jakmile byl odhalen. Transparentně přiznali chybu, popsali rozsah škod a nabídli řešení. To je přesně ta kultura, kterou u velkých korporací s jejich armádami právníků a PR manažerů nevidíme.
V uzavřeném ekosystému by se taková věc mohla tutlat měsíce, ne-li roky, pod záminkou „ochrany reputace značky“. V komunitě GNU a open source je reputace založena na pravdě. Ano, je to trapné, je to nepříjemné, ale je to venku. A díky tomu můžeme my, uživatelé, podniknout kroky k nápravě. Smazat infikované soubory, změnit hesla, prověřit integritu systému.

Jak se chránit ve světě bez hranic
Co si z toho vzít pro příště? Především to, že slepá důvěra je v digitálním světě luxus, který si nemůžeme dovolit. Jako linuxoví uživatelé máme k dispozici nástroje, o kterých se ostatním jen zdá, tak je sakra používejme. Kontrola kontrolních součtů (checksums) by neměla být jen rituálem pro paranoidní jedince, ale standardním postupem. Stejně tak bychom měli zvážit používání sandboxových technologií, jako je Flatpak nebo Snap, které, ač mají své mouchy a občas nás štvou svou režií, poskytují další vrstvu izolace mezi aplikací a našimi daty.
Tento incident s Cemu není koncem jedné éry, ale spíše dospíváním linuxového desktopu. Stáváme se relevantním cílem, což je svým způsobem poklona naší rostoucí popularitě, byť velmi nevyžádaná. Musíme se naučit žít s vědomím, že svoboda softwaru neznamená absenci nebezpečí, ale zodpovědnost za vlastní bezpečnost. A to je cena, kterou za nezávislost na uzavřených ekosystémech milerád zaplatím. Příště si jen ten AppImage prověřím o trochu pečlivěji, než stisknu Enter.



