600 millions de smartphones Samsung menacés par une vulnérabilité majeure

Par:
fredericmazue

mer, 17/06/2015 - 12:28

Cette vulnérabilité a été découverte par NowSecure. Un billet de blog en détaille le fonctionnement.

La vulnérabilité se situe dans la clavier virtuel SwiftKey que Samsung préinstalle sur ses terminaux, et dans le fait que lorsque ce clavier se met à jour, il le fait de façon non sécurisée, ce qui permet des attaques de type Man-in-the-middle, ou homme du milieu.

Le billet explique qu'il est typique, mais regrettable, que les fabricants et les revendeurs préinstallent des applications tierces, surtout lorsque celles-ci s'exécutent dans un contexte privilégié. Ce qui est le cas de SwiftKey :

➜  /tmp  aapt d badging SamsungIME.apk | head -3
       package: name='com.sec.android.inputmethod' versionCode='4' versionName='4.0'
       sdkVersion:'18'
       targetSdkVersion:'19'
       ➜  /tmp  shasum SamsungIME.apk
           72f05eff8aecb62eee0ec17aa4433b3829fd8d22  SamsungIME.apk

➜  /tmp  aapt d xmltree SamsungIME.apk AndroidManifest.xml | grep shared
           A: android:sharedUserId(0x0101000b)="android.uid.system" (Raw: "android.uid.system")

Ceci signifie que le clavier virtuel SwiftKey a été signé par la clé privée de Samsung et qu'il s'exécute dans le contexte le plus privilégié sur l'appareil : system user, ce qui équivaut presque à root.

La vulnérabilité est déclenchée au reboot de l'appareil, ou lorsque le clavier décide (imprévisiblement) de se mettre à jour. Un attaquant homme du milieu pourra alors injecter du code qui s'exécutera dans le contexte privilégié, ainsi que le démontre le billet.

Samsung a déjà corrigé le problème. Cependant les utilisateurs doivent attendre que les revendeurs diffusent des mises à jour pour bénéficier du correctif. Or SwiftKey ne peut pas être désinstallé ni même désactivé, et la vulnérabilité reste présente même s'il n'est pas défini comme clavier virtuel par défaut.

NowSecure a mis en ligne une page qui vous permettra de tester la vulnérabilité de votre terminal Samsung.