Google: What the fuck? En nu heel snel dat Android-lek dichten!

Abonneer je gratis op Techzine!

Vorige week verscheen er een blog van mijn hand omdat ik een idee of visie had hoe Microsoft de smartphonemarkt nog in handen kan krijgen met Windows 10. Deze blog is aardig goed gelezen waarvoor dank! Vandaag wederom een blog, maar dit keer niet met een idee of een visie maar omdat ik boos ben, boos op Google. Ik ben boos op Google omdat ze bekendgemaakt hebben dat ze geen beveiligingsupdates meer uit gaan brengen voor Android 4.3, daarmee laten ze maar liefst 930 miljoen-apparaten in de kou staan. Dat kan gewoon niet, je kan niet zoveel schijt aan je gebruikers hebben. Ik beroep me op Google’s slogan; "don’t be evil"!

Wat is er aan de hand?

Er is een tijdje terug een beveiligingslek gevonden in de engine van de Android-browser die gebruikt wordt in Android 4.3 en alle voorgaande versies. Deze engine zorgt ervoor dat alle webpagina’s en webelementen goed worden geladen in de browser maar ook in apps die gebruik maken van een zogenaamde webview. Wat belangrijk is om te weten is dat echt enorm veel apps hier gebruik van maken. In Android 4.4 heeft Google deze engine vervangen door een nieuwe variant, vandaar dat het beveiligingslek hier niet in voorkomt.

Google heeft nu echter bekendgemaakt dat het geen patch zal uitbrengen om dit lek te dichten. De reden die Google aanhaalt is dat het alleen de laatste twee Android-versies voorziet van patches, wat neerkomt op Android 5.0 en Android 4.4. Android 4.3 valt dus buiten de boot, dat terwijl deze versie nog net geen anderhalf jaar geleden is uitkomen, dat gebruikers om een update vragen is dan ook geen onredelijke eis. Google eist zelf van fabrikanten dat ze hun smartphones minimaal 1,5 jaar voorzien van updates.

Het eist van bedrijven als Apple en Microsoft zelfs dat ze beveiligingslekken in hun besturingssystemen binnen 90 dagen dichten want daarna gaat Google over tot publicatie van de lekken met alle gevolgen van dien. Google meet dus duidelijk met twee maten wanneer het aan komt tot het ontwikkelen van software-updates door derden of wanneer het dat zelf moet doen.

Het verhaal van de versienummers is overigens niet Google’s enige verweer tegen het uitbrengen van de update. Het bedrijf geeft ook aan dat het gaat om meer dan 5 miljoen regels code waar elke maand meer dan 1000 aanpassingen in worden doorgevoerd en dat het simpelweg teveel werk is om daar een update te ontwikkelen. Ik ga niet betwisten dat het niet veel werk is een update te maken of dat het geen lastig of moeilijk karwei is. Ik verwijs in dit geval gewoon naar Microsoft, dat bedrijf is ook in staat updates voor Windows te ontwikkelen waarmee lekken worden gedicht en Windows bestaat uit veel meer code dan 5 miljoen regels.

Eigenlijk zijn alle excuses die Google probeert aan te voeren om geen update te hoeven maken allemaal knap waardeloos. Het bedrijf laat namelijk 930 miljoen-apparaten in de kou staan, dat zijn minimaal 500 miljoen unieke gebruikers, 500 miljoen is een half miljard en ruim 7 procent van de totale wereldbevolking, die met een toestel rondlopen met een fors beveiligingslek.

De echte reden waarom Google geen update maakt is namelijk een hele andere, stel dat het bedrijf wel een patch ontwikkeld voor Android 4.3, dan is het nog maar de vraag hoeveel toestellen voorzien zullen worden van deze patch. Alle smartphone-fabrikanten moeten namelijk deze patch gaan testen en waar nodig aanpassen zodat die geschikt is voor hun Android-smartphones, vervolgens moet de patch door de providers worden getest en pas daarna kan die worden uitgerold. Aangezien fabrikanten slechts 1,5 jaar hun toestellen hoeven te voorzien van Android-updates is de kans groot dat ze deze update laten schieten, waardoor Google al het werk om een patch te maken min of meer voor niets zou doen.

Het echte probleem

Het probleem zit veel dieper, het probleem zit bij de Android-fragmentatie en de aanpassingen van fabrikanten. Google kiest ervoor om Android in een zeer hoog tempo door te ontwikkelen zodat het besturingssysteem beter en geschikter wordt voor meer toepassingen. Er verschijnt ongeveer elke negen maanden een update. Zo is recent ondersteuning toegevoegd voor auto’s, televisies en wearables. Daarnaast kiest Google ervoor om Android-fabrikanten enorm veel vrijheid te geven in hoe ze Android aanpassen. Deze regels zijn simpelweg te soepel en dat zorgt ervoor dat het uitrollen van updates een tergend traag en complex proces is geworden.

Veel fabrikanten bouwen Android namelijk volledig om met hun eigen toepassingen en ontwerpen, wat tot gevolg heeft dat ze dit elke keer opnieuw moeten doen als er een nieuwe Android-versie of beveiligingsupdate beschikbaar komt en als de hardware van hun smartphones enorm verschilt moeten ze dat ook nog per toestel doen. Dat kost redelijk veel tijd en daarom wordt ook elke keer de afweging gemaakt gaan we een toestel wel of niet van een update voorzien.

In mijn optiek moet Google twee dingen doen, ten eerste gewoon die update maken en de fabrikanten helpen om die update zo snel mogelijk bij de eindgebruiker te krijgen en niet 930 miljoen apparaten in de kou laten staan. Als je slogan "Don’t be evil" is dan ga ik je er ook aan houden als dat zo uitkomt.

Daarnaast moet Google de voorwaarden aanpassen voor Android-fabrikanten. Ze moeten allemaal een voorbeeld nemen aan HTC en misschien nog wel een paar stappen verder gaan. HTC heeft ervoor gekozen om een groot deel van de aanpassingen die ze doen aan Android in losse applicaties te stoppen. Hierdoor kunnen ze Android-updates redelijk snel doorvoeren omdat ze maar weinig aanpassingen hoeven te doen, de meeste zitten uiteindelijk in losse applicaties zitten die bovenop Android draaien en niet in Android.

Daarnaast kan HTC de onderdelen die het in losse applicaties heeft gestoken via de Play Store updaten. Bijvoorbeeld een camera- of galerij-app. Ook de complete launcher (het startscherm) en applicatielijst kunnen losse apps zijn die bovenop Android draaien.

Als Google verplicht dat alle aanpassingen in losse applicaties moeten zitten bovenop Android, dan kan Google het updateproces van de Android-kern voor zijn rekening nemen en kunnen updates veel sneller worden uitgerold en kunnen gebruikers altijd over de laatste Android-versie beschikken. Het enige wat de fabrikanten dan hoeven te doen is hun apps bij te houden en zorgen dat deze compatibel zijn met de laatste Android-versie. Er blijft dan nog een klein probleempje open staan met betrekking tot hardware-ondersteuning en drivers, maar daar valt vast wel een oplossing voor te bedenken. Dat is Microsoft ook gelukt met Windows.

Dus Google: Don’t be evil en ga dat lek dichten en zorg dat je je zaakjes op orde krijgt. Verder zullen fabrikanten niet bij zijn als de aanpassingen in Android verder aan banden worden gelegd, maar het zorgt wel voor een veiliger besturingssysteem wat makkelijker voorzien kan worden van updates. Daarnaast denk ik dat de aanpassingsmogelijkheden die losse apps bieden niet veel onder hoeven te doen voor de huidige aanpassingen. Ook dat kan Google regelen via een goede software development kit (SDK).