Contexte de l'overhaul

GrapheneOS, dérivé d'Android Open Source Project, a publié la version 13.0 basée sur Android 13. Cette version supprime les applications Google préinstallées et les remplace par des alternatives open source maintenues par la communauté. Parmi les remplacements, on trouve un navigateur Chromium sans services Google, une application Calendrier dépourvue de synchronisation cloud et un gestionnaire de contacts limité aux données locales. Le choix de ces composants repose sur la réduction de la surface d'attaque liée aux services propriétaires.

Architecture du nouveau presse‑papiers

Le système de presse‑papiers d'Android autorise, par défaut, la lecture du contenu par n'importe quelle application active. GrapheneOS introduit une isolation stricte : chaque application possède son propre tampon de presse‑papiers, accessible uniquement via une API qui requiert l'autorisation explicite de l'utilisateur. Cette modification s'appuie sur les politiques SELinux renforcées de la ROM, qui bloquent les appels inter‑processus non autorisés. Le mécanisme utilise le service clipboard du framework Android, mais ajoute une couche de vérification d'identité avant de transmettre les données.

Implications pratiques pour les utilisateurs

Lorsque l'utilisateur copie une donnée sensible (mot de passe, token d'authentification), le contenu reste confiné à l'application source jusqu'à ce que l'utilisateur confirme le partage via la boîte de dialogue native. Cette approche empêche les applications malveillantes de récupérer les informations en arrière‑plan, un vecteur d'attaque fréquemment exploité dans les malwares Android. De plus, le remplacement des applications par défaut élimine les appels réseau non désirés, car les nouvelles applications n'intègrent pas de SDK de suivi.

Exemple de diagnostic

adb shell dumpsys clipboard

La commande ci‑dessus montre l'état du service de presse‑papiers sur un appareil GrapheneOS. Le rapport indique le propriétaire actuel du tampon et signale les tentatives d'accès rejetées par les politiques SELinux. Cette visibilité permet aux chercheurs de vérifier que l'isolement fonctionne comme prévu.