
Contournement d'authentification PoC pour LG On Screen Phone (CVE-2014-8757)
L'application LG On-Screen Phone (OSP) permet d'accéder et de contrôler facilement les smartphones Android de LG depuis un PC. La connexion peut être établie soit via un câble USB, soit sans fil par Wi-Fi ou Bluetooth. Lors d'une tentative de connexion au téléphone via OSP, une boîte de dialogue contextuelle s'affiche sur le téléphone et doit être confirmée et acceptée par le propriétaire. Une fois le canal établi, le contenu de l'écran de l'appareil est transmis au PC sous forme de flux vidéo, et les clics de souris sur le PC sont transformés en événements tactiles sur le téléphone. En utilisant OSP, on peut contrôler un smartphone LG comme s'il était entre ses mains.
SEARCH-LAB Ltd. a découvert une grave faille de sécurité dans le protocole On Screen Phone utilisé par les smartphones LG. Un attaquant malveillant peut contourner la phase d'authentification de la communication réseau et ainsi établir une connexion à l'application On Screen Phone sans que le propriétaire en ait connaissance ou y consente. Une fois connecté, l'attaquant peut prendre le contrôle total du téléphone – même sans y avoir physiquement accès. L'attaquant a uniquement besoin d'accéder au même réseau local que le téléphone, par exemple via Wi-Fi.
L'identifiant CVE-2014-8757 a été attribué à cette vulnérabilité.
LG On Screen Phone v4.3.009 (inclus) et les versions antérieures de l'application sont vulnérables. Cette vulnérabilité a été corrigée dans LG OSP v4.3.010.
La plupart des modèles de smartphones LG sont concernés et l'application OSP est même préinstallée, sans possibilité de la désinstaller ou de l'arrêter. Sur les modèles plus récents, comme le G3, l'application OSP n'est plus préinstallée.
Le code vulnérable réside dans le composant On Screen Phone :
shell@geehrc:/ $ps |grep osp
system 1411 303 559616 44504 ffffffff 00000000 S com.lge.osp
Il est démarré automatiquement au démarrage et il n'y a aucun moyen dans les paramètres système de le désactiver.
Le processus écoute sur 0.0.0.0:8382 :
shell@geehrc:/ $ netstat -nap|grep 8382
netstat -nap|grep 8382
tcp 0 0 0.0.0.0:8382 0.0.0.0:* LISTEN
Le logiciel client LG On Screen Phone exécuté sur le PC se connecte à ce port TCP. Après avoir reçu la bannière initiale, le client envoie le message binaire suivant au serveur exécuté sur le téléphone :
00000000 18 00 1c 96 dd 82 c2 31 0a 0d 5a dc 05 2a 23 f4 .......1 ..Z..*#.
00000010 21 a5 d3 02 01 00 00 34 33 30 39 30 !......4 3090
Ce message déclenche la boîte de dialogue de confirmation sur le téléphone demandant à l'utilisateur s'il souhaite autoriser cette connexion. Si l'utilisateur appuie sur Annuler, le serveur du téléphone envoie une réponse avec un message négatif au client puis ferme immédiatement la connexion TCP.
Cependant, le processus serveur n'exige pas que ce message soit envoyé avant de traiter d'autres requêtes, comme le lancement du flux vidéo ou l'envoi de fichiers, la gestion des événements tactiles/clavier, des notifications. En utilisant un client modifié, il est possible de se connecter au téléphone sans que la boîte de dialogue de confirmation ne s'affiche sur le téléphone.
L'attaquant a un contrôle total sur le téléphone.
Le code de la preuve de concept a été testé sur les modèles G1 et G2.
Ce script utilitaire osp-discovery écoute les messages de découverte broadcast de l'application officielle LG On Screen Phone et y répond, de sorte que l'application croie qu'un téléphone exécutant OSP est disponible localement.
Le script osp-proxy attend que l'application officielle LG On Screen Phone s'y connecte, ce qui est possible en exécutant osp-discovery.pl.
SEARCH-LAB Ltd. a signalé cette menace de manière responsable au fabricant en septembre 2014, qui a confirmé la gravité du problème et a commencé à travailler sur le correctif. La version corrigée de l'application est désormais disponible en téléchargement via le centre de mise à jour de LG et/ou sera disponible sous forme de mise à jour de maintenance pour certains modèles. Les utilisateurs de smartphones LG doivent s'assurer d'avoir au moins la version 4.3.010 de l'application On Screen Phone (OSP) installée. Veuillez noter que lorsque OSP est préinstallé, l'appareil est vulnérable par défaut – OSP démarre automatiquement et ne peut pas être désactivé dans les paramètres.
Utilisateurs finaux : Mettez à jour l'application OSP vers la révision 4.3.010 ou plus récente via le centre de mise à jour LG.