Atomic Arch : 1 600 paquets vérolés dans le dépôt AUR d’Arch Linux
Mon seignaur, il est l'AUR de se protéger
Illustration : Flock
Le 15 juin à 17h13
Une attaque non revendiquée a permis à des pirates d’infecter des centaines de paquets dans le dépôt AUR d’Arch Linux. La distribution n’est pas directement touchée, le dépôt étant consacré aux paquets gérés par la communauté. L’ampleur de l’attaque montre une nouvelle fois les limites d’un modèle de sécurité avant tout basé sur la confiance.
Atomic Arch : 1 600 paquets vérolés dans le dépôt AUR d’Arch Linux
Mon seignaur, il est l'AUR de se protéger
Illustration : Flock
Une attaque non revendiquée a permis à des pirates d’infecter des centaines de paquets dans le dépôt AUR d’Arch Linux. La distribution n’est pas directement touchée, le dépôt étant consacré aux paquets gérés par la communauté. L’ampleur de l’attaque montre une nouvelle fois les limites d’un modèle de sécurité avant tout basé sur la confiance.
Sécurité
Sécurité
10 min
AUR, pour Arch User Repository, est un dépôt communautaire pour la distribution Arch Linux (et celles qui en dérivent). Comme indiqué sur le wiki d’Arch Linux, il « a été créé pour organiser et partager les nouveaux paquets de la communauté et pour aider à accélérer l’inclusion des paquets populaires dans le dépôt « extra » ». Il n’est donc pas géré par l’équipe de maintenance d’Arch Linux, n’est le plus souvent pas activé par défaut et contient un grand nombre de paquets (archives regroupant les fichiers nécessaires à un logiciel et les métadonnées associées) non présents dans la distribution.
Pratique, AUR est aussi un fourre-tout dans lequel la traçabilité est parfois très relative. C’est cet aspect qui a été exploité par les pirates.
L’attaque
Le 11 juin, les chercheurs de l’entreprise de sécurité Sonatype découvrent une campagne d’attaque coordonnée contre le dépôt AUR. Le ou les pirates ont pris le contrôle de paquets AUR dits « orphelins », c’est-à-dire abandonnés et en quête d’un repreneur. Ces paquets ont été modifiés : les fichiers de description des paquets (PKGBUILD) pointent vers un paquet npm malveillant à l’installation.
Dans son billet, Sonatype indique qu’une vingtaine de paquets modifiés ont ainsi été détectés. Un script post-installation a même été injecté pour appeler la commande « npm install atomic-lockfile ».
Entre les 11 et 12 juin, le nombre de paquets détectés comme malveillants s’envole, comme rapporté par le collectif de renseignement open source IFIN (Independent Federated Intelligence Network) et la communauté AUR. On passe ainsi de 20 à plus de 400 paquets, qui distribuent à la fois un rootkit assurant la persistance dans les machines infectées et un malware dédié au vol d’identifiants et de jetons d’accès (tokens d’authentification).
Il reste 80% de l'article à découvrir.
Déjà abonné ou lecteur ? Se connecter
Soutenez un journalisme indépendant,
libre de ton, sans pub et sans reproche.
Accédez en illimité aux articles
Profitez d'un média expert et unique
Intégrez la communauté et prenez part aux débats
Partagez des articles premium à vos contacts
expert et sans pub.
Commentaires (21)
Le 15 juin à 17h33
Modifié le 15 juin à 17h36
Modifié le 15 juin à 18h17
Oui, je suis bien d’accord. Combien de personnes se sont fait compromettre pendant l’intervalle où ils découvraient l’ampleur du problème ?
Et qu’on ne vienne pas me dire : "Il suffit de lire le PKGBUILD." Pour moi, cette phrase rejette la faute sur l’utilisateur final, alors que très peu de personnes ont vraiment les compétences pour détecter une backdoor intentionnelle.
C’est facile de lire un PKGBUILD qui fait un simple
./configure && make && make install(ou son équivalent CMake). En revanche, une backdoor intentionnelle à la XZ (via un simple.!) est bien plus ardue à repérer.Prenez l’exemple des paquets CUDA (https://aur.archlinux.org/cgit/aur.git/tree/?h=cuda-12.8): il y a un patch diff, une fonction
prepareavec des commandesfind,sed, etc., un fichier deprofile.d, des modifications des options de compilation via les fichiers*.pc...Bref, il y a un problème avec le système de maintenance des paquets AUR. L’ignorer serait contre-productif. c'est plus facile a ecrire qu'à faire j'en suis bien conscient et j'ai pas la solution..
PS: Soyons bien content que l'attaque ait été massive et pas dilué dans le temps (avec des users/comitters différents pour chaque paquet). L'attaque aurait été beaucoup plus difficile a détecter..
Le 15 juin à 18h18
Modifié le 15 juin à 18h54
l'AUR est une force de la distribution Archlinux, je pense pas que tu puisses l'utiliser au quotidien sans y avoir recours.
et meme pour les utilisateurs "pas lambda", quel est le pourcentage d'entre eux expert en packaging/backdooring/malware?
As tu toutes les compétences pour affirmer à 100% qu'il n'y a rien de malicieux dans le paquet cuda cité? Moi pas en tout cas alors meme que je package et suis féru de cybersec...
Le 15 juin à 19h20
La surface d'attaque reste donc réduite chez eux.
Cela n'enlève rien à la problématique de ce repository et ses risques.
Le 15 juin à 22h42
D'ailleurs les outils dans les dépôts officiels ne permettent pas de builder automatiquement des paquets depuis AUR et c'est volontaire.
Le but est que l'utilisateur utilise AUR en étant conscient de ce qu'il fait et en comprenant les mécanismes.
Le 16 juin à 13h29
Oui, la naïveté, tout ça.... Mais je partage l'idée que tout n'incombe pas à l'utilisateur. C'est pas comme si AUR était stocké sur un site tier.
Modifié le 16 juin à 09h09
Perso, je lis toujours le PKGBUILD et si je comprends pas (comme le paquet cuda que tu cites en exemple), bah j'installe pas.
Quand je vois certains utiliser des outils d'installation automatique basés sur l'AUR, ça me donne froid au dos... Faut limite être inconscient.
Honnêtement, je comprends pas pourquoi tout le monde semble s'exciter maintenant qu'une attaque d'ampleur a eu lieu. Ça a toujours été facilement possible et on l'a toujours su.
Après, tant mieux si ça mène à des mesures de sécurité supplémentaires mais faudrait pas que ça détruise l'esprit de l'AUR non plus.
Modifié le 16 juin à 21h23
le probleme est plus pernicieux, car l'attaque a abusée de la liberté de passer mainteneur d'un paquet devenu "orphelin" sans controle.
il ne s'agit pas seulement d'inspecter un paquet à son installation mais de l'ensemble de tes paquets AUR à chaque mise à jour, ca peut vite devinir tres compliqué!
PS: la commande
pacman -Qmlistera vos paquets non maintenu officiellement, vérifiez s'ils sont toujours nécessaires et supprimez les s'ils sont inutilisés pour réduire la surface d'attaqueModifié le 17 juin à 09h06
Merci pour le pacman -Qm, je viens de remarquer que j'avais un vieux lib32-openssl-1.1 maintenant inutile qui s'était fait rétrograder dans l'AUR. C'est supprimé !
Modifié le 15 juin à 18h05
Or ils n'en disent pas grand chose à part avoir bloqué quelques update.
Quelqu'un en sait-il plus ?
Le 15 juin à 19h01
Pis, je subodore que les US vont maintenant s'en donner à coeur joie après avoir coupé Mythos à leurs "alliés"...
Modifié le 15 juin à 20h40
Le 16 juin à 09h17
Les attaquants ne sont donc probablement pas un/des APT. D'un point de vu criminel, je pense que c'est beaucoup d'effort pour peu de résultat au final. Reste le défie technique: je pense que notre attaquant est soit en manque de reconnaissance, soit quelqu'un qui voulais "alerter" sur la faiblesse de AUR (je ne crois pas à cette dernière).
Par contre, une chose est sur: si il y'a bien une communauté à même de retrouver le/les responsables, c'est bien celle de Arch. C'est prendre beaucoup de risque de s'attaquer à cette population de cette manière...
Le 16 juin à 10h39
A mon sens, ce sont des cibles de choix pour pouvoir pivoter vers des systèmes d'entreprises ou de diffusions de logiciels (libres entre autre).
Le 16 juin à 17h11
Modifié le 16 juin à 21h10
Comme toujours, la sécurité IT est un ensemble de pratiques à cumuler pour réduire la surface d'attaque. Personnellement, je ne conçois plus la possibilité d'avoir une station de travail sans un pare feu comme Opensnitch ou équivalent qui permet de contrôler qui veut accéder à quoi.
C'est une véritable orgie pour chaque logiciel avec parfois la création d'une dizaine de règles juste pour un exécutable...
D'autres pratiques en vrac : regarder la page sur AUR du package avant de l'installer pour la première fois histoire de voir son sérieux dans le maintient, s'il est toujours maintenu, les commentaires, etc. Un peu comme un repo GitHub/GitLab où l'on évitera d'aller pull et lancer un truc plus mis à jour depuis 8 ans.
Modifié le 16 juin à 09h52
D'ailleurs, quid de SteamOS qui est une distribution Arch based ?
Modifié le 16 juin à 10h41
La distrib a un filesystem immutable, d'ailleurs, à l'exception de la home utilisateur.
Modifié le 16 juin à 11h59
Signaler un commentaire
Voulez-vous vraiment signaler ce commentaire ?