Le malware SkyGoFree espionne votre téléphone Android et ses messages

Mobilité

En ce début d’année 2018, le malware curieusement dénommé SkyGoFree est sans doute la menace la plus séreuse pour Android. En un mot, SkyGoFree (ou SkyFree) est décrit très simplement comme un spyware.

skygoforce

En ce début d’année 2018, la première menace sérieuse pour Android, du moins en observant l’intérêt que lui porte les médias, est sans aucun doute le malware, curieusement nommé, SkyGoFree.

Remarque : le nom a apparemment été inventé par des chercheurs de Kaspersky, tout simplement parce qu’ils “ont trouvé ce mot dans l’un des domaines” utilisé par l’un des échantillons qu’ils ont examiné. Le malware n’est pas destiné aux utilisateurs de l’entreprise de télécommunications Sky ou du service Sky Go TV.

En un mot, SkyGoFree (ou SkyFree, le nom sous lequel les produits Sophos le détectent) est décrit très simplement : un spyware.

Un coup d’œil dans le code Java décompilé de ce malware révèle l’éventail des données qu’il peut dérober :

  . . .
  public static final String URL_UPLOAD_CAMERA = "upload_camera.php";
  public static final String URL_UPLOAD_CELL_INFO = "upload_cella.php";
  public static final String URL_UPLOAD_FILESYSTEM = "upload_filesystem.php";
  public static final String URL_UPLOAD_FILE_SEND = "upload_documents.php";
  public static final String URL_UPLOAD_HISTORY = "upload_history.php";
  public static final String URL_UPLOAD_INFO_TEL = "upload_info_tel.php";
  public static final String URL_UPLOAD_LISTAPP = "upload_listapp.php";
  public static final String URL_UPLOAD_REG_CALL = "upload_reg_call.php";
  public static final String URL_UPLOAD_RUBRICA = "upload_rubrica.php";
  public static final String URL_UPLOAD_SMS = "upload_sms.php";
  public static final String URL_UPLOAD_WHATSAPP_SMS = "upload_whatsapp_msg.php";
  . . .

RUBRICA, au cas où vous vous poseriez la question, signifie CARNET D'ADRESSES en italien. Une grande partie du code semble avoir été écrite par des individus parlant l’italien. Les lignes présentées ci-dessus proviennent d’un fichier source appelé Costanti.java, qui serait traduit par Constantes.java en français.

Il existe beaucoup de fonctionnalités malveillantes dans ce malware, comme une fonction appelée StartReverse() qui connecte votre téléphone à un serveur géré par les cybercriminels, afin de leur donner ce qui est communément appelé un reverse shell.

Normalement, pour vous connecter à une invite de commande (connue sous Unix et Linux sous le nom shell), vous devez initier une connexion à un périphérique, signifiant ainsi qu’il faut passer à travers les pare-feux et la traduction d’adresses réseaux gênantes.

De nombreux réseaux mobiles, et presque tous les réseaux Wi-Fi, vous permettent d’établir des connexions sortantes avec d’autres personnes, mais ne laissent pas les autres se connecter directement à vous. En effet, vous êtes supposé être un “consommateur de données” sur le réseau (client), et pas un “producteur de données” (serveur).

Les hackers contournent cet obstacle avec un reverse shell : une astuce d’intrusion classique qui inverse le processus d’ouverture de session.

Votre appareil initie la connexion vers les cybercriminels, mais uniquement pour établir la connexion. Ensuite, votre appareil se transforme en serveur, avec les cybercriminels dans le rôle des clients “connectés”, avec un contrôle direct de votre téléphone.

SkyGoFree intègre également une fonctionnalité (dont le nom peut être discuté), appelée Social, pour permettre aux cybercriminels de récupérer des données provenant de nombreuses autres applications présentes sur votre appareil.

Voici l’édition d’un fragment du code qui essaie de voler vos données de réseaux sociaux (ne vous inquiétez pas si vous ne comprenez pas Java, c’est uniquement à titre d’illustration):

 . . .
  mMap.put("messenger", new Social("/data/data/com.facebook.orca/databases/", new String[] { "upload_facebook_chat.php" }));
  mMap.put("facebook", new Social("/data/data/com.facebook.katana/databases/", new String[] { "upload_facebook_search.php", "upload_facebook_contacts.php" }));
  mMap.put("whatsapp", new Social("/data/data/com.whatsapp/databases/", new String[] { "upload_whatsapp_msgstore.php", "upload_whatsapp_contacts.php" }));
  mMap.put("gmail", new Social("/data/data/com.google.android.gm/databases/", new String[] { "upload_email_gmail.php" }));
  mMap.put("mlite", new Social("/data/data/com.facebook.mlite/databases/", new String[] { "upload_messengerlite_chat.php" }));
  . . .

La bonne nouvelle est que sur un téléphone Android normal, les applications ne peuvent pas lire aveuglément les données entre elles.

À moins que vous ayez rooté votre appareil, ou que vous ayez un téléphone ancien ou non patché, avec une faille de sécurité qui permettrait à des malwares de rooter votre téléphone automatiquement et secrètement en arrière-plan, cette partie du malware ne fonctionnera pas.

SkyGoFree dispose également d’un composant qui peut effectuer un call home pour télécharger et installer des modules supplémentaires, une sorte de système de plugins pour ce malware (lorsque nous avons enquêté, les fichiers d’extension que le malware cherchait étaient hors ligne).

Les malwares sont souvent programmés pour pouvoir se mettre à jour ou se propager eux-mêmes, rendant ainsi la menace encore plus sérieuse : en effet, ni vous, ni les chercheurs, ne pouvez savoir à l’avance ce que les cybercriminels pourront décider de faire avec vos appareils infectés.

Quoi rechercher ?

L’échantillon que nous avons examiné prétend être une “mise à jour du système”, en utilisant une icône verte Android :

skygoforce

Si vous lancez l’application, elle démarre en arrière-plan mais supprime presque immédiatement sa propre icône pour vous donner l’impression que la “mise à jour” est terminée.

Heureusement, l’application apparaît toujours sur la page System | Apps, où vous pourrez l’arrêter et la désinstaller :

skygoforce

Nous n’avons reçu aucun signalement de ce malware qui serait présent dans la nature, et autant que nous le sachions il ne s’est jamais retrouvé sur Google Play. Ainsi, pour être infecté, vous devrez vous rendre sur la page Paramètres | Sécurité et activer l’option (qui ne l’est pas par défaut) pour Autoriser l'installation d'applications de sources inconnues :

skygoforce

Google Play n’est pas le jardin d’Eden dépourvu de virus dont vous avez toujours rêvé, mais il reste tout de même plus sûr que d’autres lieux où vous pouvez récupérer des applications de sources inconnues, telles que des marchés alternatifs, des forums Android non réglementés, ou encore des liens envoyés par des amis.

Quoi faire ?

  • Restez sur Google Play. Si vous devez quitter ce dernier pour une application spécifique, allez dans Paramètres | Sécurité après l’installation et désactivez Autoriser des sources inconnues.
  • Utilisez un anti-virus Android. Des produits gratuits tels que Sophos Mobile Security pour Android vous aideront à bloquer les malwares et vous avertiront concernant des paramètres non sécurisés au sein de votre appareil.
  • Ne faites pas confiance aux mises à jour système proposées par des tiers. Soyez particulièrement prudent avec les “mises à jour” qui prétendent proposer des fonctionnalités ou services supplémentaires, non disponibles officiellement.


Billet inspiré de SkyGoFree malware spies on your Android phone and your messages, sur Sophos nakedsecurity.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.