Bonnes pratiques de sécurité réseau

Cette section contient des recommandations pour assurer la sécurité des communications réseau à partir d'appareils Android.

Socettes d'écoute sécurisées

Utilisez les sockets d'écoute avec prudence. En règle générale, il ne devrait pas y avoir de sockets d'écoute ouverts sur les appareils, car ils fournissent un vecteur permettant à un pirate informatique distant d'accéder à l'appareil.

  • Les appareils Android doivent réduire au maximum le nombre de sockets d'écoute Internet qu'ils exposent, en particulier au démarrage ou par défaut. Par défaut, aucun socket ne doit écouter sur Internet au démarrage.
    • Les processus racine et les processus appartenant à l'identifiant unique (UID) du système ne doivent pas exposer de sockets d'écoute.
  • Les sockets d'écoute doivent pouvoir être désactivés sans mise à jour OTA. Pour ce faire, vous pouvez modifier la configuration du serveur ou de l'appareil utilisateur.
  • Pour les sockets locaux utilisant l'IPC, les applications doivent utiliser un socket de domaine UNIX dont l'accès est limité à un groupe. Créez un descripteur de fichier pour l'IPC et définissez-le sur +RW pour un groupe UNIX spécifique. Toutes les applications clientes doivent appartenir à ce groupe UNIX.
  • Certains appareils dotés de plusieurs processeurs (par exemple, un radio/modem distinct du processeur de l'application) utilisent des sockets réseau pour communiquer entre les processeurs. Dans ce cas, le socket réseau utilisé pour la communication entre les processeurs doit utiliser une interface réseau isolée pour empêcher l'accès des applications non autorisées sur l'appareil (c'est-à-dire utiliser iptables pour empêcher l'accès des autres applications sur l'appareil).
  • Les daemons qui gèrent les ports d'écoute doivent être résistants aux données mal formées. Vous devez effectuer des tests de fuzz sur le port à l'aide d'un client non autorisé et, si possible, d'un client autorisé. Envoyez des bugs pour suivre les plantages.

La suite de tests de compatibilité Android (CTS) inclut des tests qui vérifient la présence de ports d'écoute ouverts.

Désactiver adb

Android Debug Bridge (adb) est un outil de développement et de débogage utile, mais il est conçu pour être utilisé dans un environnement contrôlé et sécurisé. Il ne doit pas être activé pour une utilisation générale.

  • Assurez-vous qu'adb est désactivé par défaut.
  • Assurez-vous qu'adb exige de l'utilisateur qu'il l'active avant d'accepter les connexions.