Un code malveillant a été détecté dans rest-client et 10 autres paquets Ruby

Dans le populaire paquet gem rest-client, qui totalise 113 millions de téléchargements, une vulnérabilité a été identifiée , une injection de code malveillant (CVE-2019-15224) qui exécute des commandes et envoie des informations vers un hôte externe. L'attaque a été réalisée via la compromission du compte développeur de rest-client sur le dépôt rubygems.org, après quoi les attaquants ont publié les versions 1.6.10-1.6.13 les 13 et 14 août, incluant des modifications malveillantes. Avant le blocage des versions malveillantes, environ mille utilisateurs les avaient téléchargées (les attaquants, pour ne pas attirer l'attention, ont publié des mises à jour de versions anciennes).

La modification malveillante redéfinit la méthode «#authenticate» dans la classe
Identity, chaque appel à cette méthode entraînant l'envoi de l'email et du mot de passe fournis lors de la tentative d'authentification vers l'hôte des attaquants. Cela permet l'interception des paramètres de connexion des utilisateurs de services utilisant la classe Identity et ayant installé une version vulnérable de la bibliothèque rest-client, qui est présente comme dépendance dans de nombreux paquets Ruby populaires, y compris ast (64 millions de téléchargements), oauth (32 millions), fastlane (18 millions) et kubeclient (3,7 millions).

De plus, un backdoor a été ajouté au code, permettant l'exécution de code Ruby arbitraire via la fonction eval. Le code est transmis via un cookie signé par la clé de l'attaquant. Pour informer les attaquants de l'installation du paquet malveillant sur un hôte externe, un URL du système de la victime et un ensemble d'informations sur l'environnement, telles que les mots de passe enregistrés pour les bases de données et les services cloud, sont envoyés. Des tentatives de chargement de scripts pour le minage de cryptomonnaies ont été enregistrées en utilisant le code malveillant mentionné ci-dessus.

Après avoir analysé le code malveillant, il a été détecté, noté que des modifications similaires sont présentes dans 10 paquets dans Ruby Gems, qui n'ont pas été capturés, mais spécialement préparés par les attaquants sur la base d'autres bibliothèques populaires avec des noms similaires, dans lesquels le tiret a été remplacé par un underscore ou inversement (par exemple, basé sur cron-parser un paquet malveillant cron_parser a été créé, et sur la base de doge_coin le paquet malveillant doge-coin). Paquets problématiques :

Le premier paquet malveillant de cette liste a été publié le 12 mai, mais la plupart sont apparus en juillet. En tout, ces paquets ont été téléchargés environ 2500 fois.

Source : opennet.ru

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster