A fost lansată versiunea platformei mobile securizate GrapheneOS 2024011300, care este un fork al codului sursă Android (AOSP, Android Open Source Project), extins și modificat pentru a îmbunătăți securitatea și a asigura confidențialitatea. Anterior, proiectul a evoluat sub numele AndroidHardening și, înainte de aceasta, a fost derivat din proiectul CopperheadOS, după un conflict între fondatorii săi. GrapheneOS suportă oficial majoritatea dispozitivelor Google Pixel moderne (Pixel 4/5/6/7/8, Pixel Fold, Pixel Tablet). Proiectul este distribuit sub licența MIT.
GrapheneOS include multe tehnologii experimentale legate de îmbunătățirea izolației aplicațiilor, gestionarea detaliată a accesului, blocarea manifestării vulnerabilităților tipice și dificultățile în exploatarea acestora. De exemplu, platforma folosește o implementare proprie a malloc și o variantă modificată a libc cu protecție împotriva coruperii memoriei, precum și o separare mai strictă a spațiului de adresare între procese. În loc de JIT în Android Runtime, se utilizează doar compilarea ușor anticipată (AOT, ahead-of-time). În nucleul Linux sunt incluse multe mecanisme suplimentare de protecție, de exemplu, în slub sunt adăugate marcaje canar pentru blocarea depășirii buffer-elor. Pentru a îmbunătăți izolația aplicațiilor, se utilizează SELinux și seccomp-bpf.
Există posibilitatea de a acorda acces la operațiuni de rețea, senzori, cartea de contacte și dispozitive periferice (USB, cameră) doar aplicațiilor selectate. Citirea din clipboard este permisă doar aplicațiilor în care este activ pe moment focusul de introducere. Din oficiu, obținerea informațiilor despre IMEI, adresa MAC, numărul de serie al SIM-ului și alte identificatoare hardware este interzisă. Au fost luate măsuri suplimentare pentru izolarea proceselor legate de Wi-Fi și Bluetooth și prevenirea scurgerilor ca urmare a activității wireless. Multe dintre mecanismele de întărire a securității dezvoltate în cadrul proiectului au fost transferate în baza principală a codului sursă Android.
GrapheneOS utilizează verificarea criptografică a componentelor descărcate și criptarea avansată a datelor la nivelul sistemelor de fișiere ext4 și f2fs (datele sunt criptate folosind AES-256-XTS, iar numele fișierelor – AES-256-CTS utilizând HKDF-SHA512 pentru a genera o cheie separată pentru fiecare fișier), în loc de dispozitivul de blocare. Datele din partițiile sistemului și din fiecare profil de utilizator sunt criptate cu chei diferite. Se folosesc capacitățile hardware disponibile pentru a accelera operațiunile de criptare. Pe ecranul de blocare este afișat un buton de ieșire, după apăsarea căruia cheile pentru decriptare sunt resetate, iar stocarea este trecută într-o stare neactivată. Există o setare pentru a interzice instalarea aplicațiilor suplimentare pentru profilurile de utilizator selectate. Pentru a proteja împotriva atacurilor de forțare a parolelor, este utilizat un sistem de întârziere, care depinde de numărul de încercări eșuate (de la 30 de secunde la 1 zi).
GrapheneOS nu include principial aplicații și servicii Google, precum și implementări alternative ale serviciilor Google, cum ar fi microG. Totuși, există posibilitatea de a instala serviciile Google Play într-un mediu izolat, care nu are privilegii speciale. Proiectul dezvoltă, de asemenea, câteva aplicații proprii, concentrate pe protecția informațiilor și intimitate. De exemplu, sunt disponibile browserul Vanadium bazat pe Chromium și o variantă modificată a motorului WebView, un vizualizator PDF protejat, un firewall, aplicația Auditor pentru verificarea dispozitivelor și detectarea intruziunilor, o aplicație pentru utilizarea camerei, axată pe asigurarea confidențialității, și un sistem de creare a copiilor de siguranță criptate Seedvault.
Printre modificările din noua versiune:
- Mecanismul de repornire automată a fost complet reproiectat, fiind trecut la utilizarea unui timer în procesul init, în loc de procesul system_server, ceea ce a sporit securitatea și a împiedicat repornirea unui dispozitiv care nu a fost deblocat niciodată. Timpul de repornire automată a fost redus de la 72 la 18 ore. Ideea principală a repornirii automate este de a reseta partițiile activate (decriptate) ce conțin datele utilizatorilor în starea inițială nedecifrată după un anumit timp de inacțiune.
Datele profilului utilizatorului după repornirea dispozitivului sunt criptate și sunt decriptate numai după ce utilizatorul introduce parola de acces. Dacă utilizatorul nu deblochează sesiunea activată timp de mai mult de 18 ore — dispozitivul va fi repornit automat (timpul de așteptare poate fi modificat în setările Settings > Security > Auto reboot) pentru a preveni analiza cheilor care rămân în memorie, în cazul în care dispozitivul ajunge în alte mâini.
Ca o demonstrație a necesității aplicării funcției de repornire automată, dezvoltatorii GrapheneOS au menționat vulnerabilitățile recent descoperite în smartphone-urile Google Pixel și Samsung Galaxy, care permit companiilor specializate în analiza criminalistică să spioneze utilizatorii și să extragă date atunci când dispozitivul este activat (când sesiunea este activă și datele sunt decriptate).
- A fost adăugat un vizualizator de jurnale (Settings > System > View logs), care permite evaluarea problemelor întâmpinate și simplifică pregătirea rapoartelor de eroare.
- Interfața pentru trimiterea rapoartelor de blocare a fost reproiectată.
- În adevtool a fost adăugată suportul pentru Pixel Camera Service, care permite utilizarea modului nocturn în aplicațiile de pe smartphone-urile Pixel 6+.
- În adevtool a fost suspendat suportul pentru dispozitivele care nu sunt acceptate în Android 14.
- A fost adăugat un output de notificări pentru activarea detectorului de deteriorare a memoriei în malloc.
- În nucleul Linux a fost dezactivat suportul pentru sysrq.
- Nucleul Linux a fost actualizat la cea mai recentă versiune a GKI (Generic Kernel Image) 5.10.206 pentru dispozitivele Pixel 6, Pixel 6 Pro, Pixel 6a, Pixel 7, Pixel 7 Pro, Pixel 7a, Pixel Tablet, Pixel Fold, precum și la versiunea 5.15.145 pentru dispozitivele Pixel 8 și Pixel 8 Pro. De asemenea, au fost pregătite compilări cu nucleul 6.1.69.
- Browserul Vanadium a fost actualizat la baza de cod Chromium 120.0.6099.210.0.
Sursa: opennet.ro
