Linux-distributie Ubuntu introduceert een nieuw package-formaat voor apps dat datadiefstal moet inperken. Op de desktop is deze beveiliging echter beperkt, waarschuwt kernel-developer Matthew Garrett.
Het nieuwe Snap van Ubuntu komt naast het bekende package-formaat Deb, dat afstamt van Ubuntu’s basis: de Linux-distributie Debian. Snap heeft zijn debuut deze maand gemaakt met de release van Ubuntu-versie 16.04. Deze nieuwe manier om programma’s (apps) te verpakken voor gebruik leunt slim op het idee van gescheiden en complete packages. Een app zelf komt hierbij in één pakket met alle benodigde elementen (dependancies) die nodig zijn voor de eigen werking. Updates aan apps en componenten blijven daarmee beperkt tot de desbetreffende app en zijn componenten.
Isolatie op app-niveau
Daarnaast moet Snap een grotere mate van veiligheid bieden doordat de individuele apps dus geïsoleerd zijn van elkaar en van het onderliggende besturingssysteem. De isolatie ten opzichte van het besturingssysteem betekent dat updates, bijvoorbeeld voor beveiliging, sneller kunnen doorkomen dan wanneer ze via de Linux-distributie zelf gedistribueerd worden. De isolatie tussen apps onderling, dankzij een strenge security-policy voor Snap, moet het onmogelijk maken voor een app om gebruikersdata te stelen.
Tot zover de theorie. In de praktijk doet Snap op desktop-Linux niet zo veel voor security. Dit stelt Matthew Garrett, een bekende developer die meewerkt aan de Linux-kernel. Hij blogt dat Snap weliswaar een beveiligingsverbetering biedt op de mobiele variant van Ubuntu, maar dat het voorgespiegelde voordeel niet geldt voor desktop-Ubuntu. Eerstgenoemde krijgt als display-server Mir, terwijl laatstgenoemde nog op het oude X11 vertrouwt. Die legacy ondermijnt nu de nieuwe app-beveiliging.
v
Snap zelf is wel veilig gemaakt, maar op desktopsystemen biedt het onderliggende X11-venstersysteem geen gedegen beveiliging. X ondersteunt niet verschillende niveaus aan vertrouwen voor applicaties, legt Garrett uit. ‘Een applicatie kan zich aanmelden om toetsaanslagen van elke andere applicatie op te vangen. Elke applicatie kan namaak key events in de input-stream injecteren. Een applicatie die beperkt wordt door strenge security-policies kan simpelweg in een ander venster data invoeren.’
Garrett spreekt van een misleidende boodschap. ‘Elke Snap-package die je installeert is in staat om al je privégegevens te kopiëren naar waarheen het maar wil, met slechts kleine moeite.’ De developer beweert dit niet alleen, maar heeft ook een proof-of-concept gemaakt, schrijft it-nieuwssite ZDnet.com. Zijn demonstratiesoftware toont een schattige teddybeer die stiekem toetsaanslagen in webbrowser Firefox opvangt. Garrett stelt dat zijn methode met een lichte aanpassing ook het stelen van ssh-sleutels mogelijk maakt.
Aanloop naar de overstap
‘Zo lang Ubuntu op de desktop nog X11 gebruikt, geeft het Snap-formaat je erg weinig betekenisvolle beveiliging’, aldus Garrett. ‘Het Snap-formaat biedt veel onderliggende technologie die een flinke stap ‘voorwaarts is om systemen te beschermen tegen onbetrouwbare applicaties van derde partijen”, erkent hij wel. ‘Zodra Ubuntu overschakelt op Mir als default zal het veel beter zijn dan de status quo. Maar op dit moment is de bescherming die Snap biedt makkelijk te omzeilen’, op de desktop dus.
Het langetermijndoel van Canonical is wel om met Mir het oudere X11 te vervangen. Hetzelfde kan gelden voor Snap ten opzichte van het Deb-formaat. De vraag is nog of en wanneer dat gaat gebeuren. Het aantal Linux-applicaties dat beschikbaar is in het Snap-formaat is nu nog beperkt, schrijft Infoworld. Mozilla heeft al wel toegezegd dat het zijn webbrowser Firefox later dit jaar zal uitbrengen als een Snap-package voor Ubuntu.
He, ik zie overeenkomsten met Windows 10 en Metro Apps. Of WinRt gebasseerde apps. Of hoe heet dat nu eigenlijk?