Während der Entwicklerkonferenz Google I/O 2019 kündigte Google Project Mainline an – ein Versuch, Sicherheitsupdates über Module in Android Q zu beschleunigen.
Die Fragmentierung der Android-Version ist eine der größten Herausforderungen, die Google lösen muss. Während die Google Pixel-Smartphones dank der unglaublichen Bemühungen von Pixel und zu den sichersten Smartphones auf dem Markt gehören Laut AOSP-Ingenieuren sind viele andere Smartphones anfällig für Exploits, weil veraltete Betriebssystemversionen oder veraltete Sicherheitspatches ausgeführt werden Ebenen. Der neueste Bericht von Gartner zeigt, dass Android 9 Pie ein bisher unglaublich sicheres Betriebssystem ist nur etwa 10 % aller Smartphones sind auf dem Release.
Google bekämpft die Versionsfragmentierung mit Initiativen wie Projekt Treble, eine umfassende Neuarchitektur von Android, die zu einer Trennung zwischen den Android-OS-Framework-Komponenten und den HAL-Komponenten des Anbieters führt,
erweiterter Linux-Kernel LTS, obligatorische Sicherheitspatch-Updates für 2 Jahre und Android Enterprise empfohlen. Auf der Google I/O 2019 kündigte das Unternehmen seine neueste Initiative zur Beschleunigung von Sicherheitsupdates an: Project Mainline für Android Q.Projekthauptlinie: Aktualisierung von Android Q-Systemmodulen über Google Play
In den letzten Monaten haben wir etwas namens „APEX" im AOSP. APEX, oder Android Pony EXpressist ein neuer Pakettyp, der einem APK ähnelt. Anstelle einer Android-Anwendung beherbergt APEX jedoch eine native oder Klassenbibliothek. Vorkompilierter Code, der von Android-Apps, Hardware Abstraction Layers (HAL) und Android aufgerufen werden kann Laufzeit (ART). Wie das APK können APEX-Pakete den Benutzern über herkömmliche Paketinstallationsmethoden in Android bereitgestellt werden: den Google Play Store/Paketmanager oder ADB.
APEX-Module können viel früher im Boot-Prozess verwendet werden als APK-basierte Module und werden außerdem durch dm-verity und Android Verified Boot unterstützt, um die Sicherheit zu erhöhen. Für das Mounten der Payload-Images im APEX-Paket ist der Loop-Treiber des Linux-Kernels erforderlich, daher benötigen Geräte die Linux-Kernel-Version 4.9+. Für die Verwaltung der APEX-Pakete ist der neue APEX-Daemon erforderlich, der mit Android Q eingeführt wurde. Während Geräte, die auf Android Q mit Linux-Kernel 4.4 aktualisieren, APEX unterstützen können (wie Google Pixel 3), müssen OEMs zusätzliche Patches zusammenführen, damit es funktioniert. Meistens unterstützen nur Geräte, die mit Android Q starten, Project Mainline.
GNU/Linux-Distributionen sind schon lange in der Lage, Systemkomponenten unabhängig von vollständigen Systemaktualisierungen zu aktualisieren, bei Android war jedoch immer ein Systemupdate erforderlich, um sie zu aktualisieren. Google hat sich entschieden, diese Pakete nicht über herkömmliche Linux-Paketverwaltungssysteme wie dpkg und rpm zu verteilen, da diese Pakete nach der Installation nicht mit dm-verity schützen.
Da es für Gerätehersteller lange dauert, Updates bereitzustellen, können viele Geräte tage-, wochen- oder sogar monatelang veraltete Systemkomponenten aufweisen. Durch die Verteilung dieser Komponenten als APEX-Pakete kann Google das lange Warten auf die Bereitstellung eines Systemupdates durch OEMs umgehen.
Allerdings übt Google nicht die vollständige Kontrolle über alle Systemkomponenten aus. Das Unternehmen hat mit seinen OEM-Partnern zusammengearbeitet, um eine Reihe von System-Apps (als APKs) und Systemkomponenten (als APEX) auszuwählen Pakete) zur Modularisierung, damit sie die Sicherheit, den Datenschutz und die Konsistenz für alle Benutzer mit Geräten verbessern können, die mit gestartet werden Android Q. Obwohl Google nicht genau bekannt gegeben hat, wie es auf die ersten Systemkomponenten gekommen ist, hat es dies getan hat uns die Liste der Systemkomponenten auf Geräten zur Verfügung gestellt, die mit Android Q gestartet werden und bis dahin aktualisierbar sind Google:
- Sicherheit: Mediencodecs, Media Framework-Komponenten, DNS-Resolver, Conscrypt
- Privatsphäre: Benutzeroberfläche für Dokumente, Berechtigungscontroller, ExtServices
- Konsistenz: Zeitzonendaten, ANGLE (Entwickler-Opt-in), Modulmetadaten, Netzwerkkomponenten, Captive Portal-Anmeldung, Netzwerkberechtigungskonfiguration
Sofortige Aktualisierungen von Conscrypt, der Java-Sicherheitsbibliothek und den Medienkomponenten, die „fast 40 % der kürzlich gepatchten Schwachstellen ausmachten“, werden Android-Geräte sicherer machen. Aktualisierungen des Berechtigungscontrollers verbessern den Datenschutz. Die Standardisierung der Zeitzonendaten wird hilfreich sein, um Android-Geräte auf der ganzen Welt auf dem gleichen Stand zu halten, wenn ein Land beschließt, seine Zeitzone zu ändern. Darüber hinaus werden Spieleentwickler von der Standardisierung profitieren WINKEL.
Google beginnt mit diesen Systemkomponenten, könnte aber in zukünftigen Android-Versionen weitere hinzufügen. Von diesen 13 Komponenten werden Conscrypt, Timezone-Daten, Media Codecs und Media Framework-Komponenten als APEX-Pakete geliefert. Die anderen 9 Komponenten sind System-APKs. Während sowohl APEX als auch APKs über Google Play erhältlich sind, ist die Aktualisierung eines APEX-Pakets erforderlich erfordert einen Neustart. Google hat den UI-Ablauf dafür noch nicht mitgeteilt, aber sobald die Geräte mit Android Q gestartet werden, werden wir wahrscheinlich weitere Informationen über Project Mainline- und APEX-Pakete erfahren.