+ Répondre à la discussion Actualité déjà publiée
  1. #1
    Chroniqueur Actualités

    Homme Profil pro
    Webmaster
    Inscrit en
    janvier 2014
    Messages
    714
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : janvier 2014
    Messages : 714
    Points : 15 942
    Points
    15 942

    Par défaut Des paquets malveillants portant des noms trompeurs ont été découverts sur la plateforme PyPI

    Des paquets malveillants portant des noms trompeurs ont été découverts sur la plateforme PyPI,
    ils pourraient avoir été utilisés dans des logiciels

    L’autorité de sécurité nationale slovaque vient d’alerter les mainteneurs de la plateforme Python Package Index (PyPI) sur du code malveillant qui a été introduit dans des paquets et mis à la disposition des développeurs sur ce dépôt. Ces codes malicieux qui sont en majeure partie des bibliothèques ont été publiés sous des noms légèrement modifiés ressemblant aux paquets officiels disponibles sur PyPI. Par exemple, un paquet a été nommé urllib en référence au dépôt officiel nommé urrlib3, ou encore un autre paquet a été nommé bzip pour semer la confusion par rapport au paquet officiel nommé bzip2. Ci-dessous, la liste complète des paquets publiés sur la plateforme avec du code malveillant.

    • Le paquet Django-server a été publié sur la plateforme le 2 juin dernier à 8 h 22 pour se faire passer pour django-server-guardian-api ;
    • Le paquet acqusition a été posté sur la plateforme le 3 juin dernier à 1 h 58 en référence au dépôt officiel nommé acquisition ;
    • Le paquet apidev-coop a été posté sur la plateforme le 3 juin dernier à 5 h 16 afin de se faire passer pour apidev-coop_cms ;
    • Le paquet bzip a été publié sur la plateforme le 4 juin dernier à 7 h 8 pour se faire passer pour bz2file ;
    • Le paquet crypt a été publié sur la plateforme le 3 juin dernier à 8 h 3 pour se faire passer pour le dépôt crypto ;
    • Le paquet pwd a été publié sur la plateforme le 2 juin dernier à 13 h 12 afin de se faire passer pour Pwdhash ;
    • Le paquet setup-tools a été publié sur la plateforme le 2 juin dernier à 8 h 54 pour se faire passer pour setuptools ;
    • Le paquet telnet a été publié sur la plateforme le 2 juin dernier à 15 h 35 pour se faire passer pour telnetsrvlib ;
    • Le paquet urlib3 a été publié sur la plateforme le 2 juin dernier à 7 h 9 pour se faire passer pour urllib3 ;
    • Le paquet urllib a été publié sur la plateforme le 2 juin dernier à 7 h 3 pour se faire passer pour urllib3.


    Selon les découvertes faites par l’agence de sécurité slovaque, « ces paquets contiennent exactement le même code que leur paquet en amont, leur fonctionnalité est identique, mais le script d’installation, setup.py, est modifié pour inclure un code malveillant (mais relativement bénin) ». « Le code malveillant ajouté aux faux paquets est exécuté dès que le développeur ou l’administrateur système installe le paquet (ce qui se fait souvent avec des privilèges administrateur) ».

    Après analyse des échantillons des paquets disponibles, les chercheurs slovaques expliquent que les auteurs de ces paquets falsifiés ont utilisé des techniques d’offuscation pour cacher les données. Seules quelques informations comme l’exécution d’une requête HTTP vers un serveur distant à partir de l’adresse http://121.42.217.44:8080/, le nom d’hôte, le nom de l’utilisateur qui a installé le paquet ont pu être récoltées.

    Et pour couronner le tout, les chercheurs expliquent qu’il existe des « preuves que les faux paquets ont effectivement été téléchargés et incorporés dans plusieurs logiciels entre juin 2017 et septembre 2017. »

    Pour l'agence slovaque, « le succès de l’attaque repose sur la négligence du développeur, ou de l’administrateur système, qui ne vérifie pas complètement le nom du paquet ». Plusieurs personnes ayant téléchargé ces paquets par divers moyens y compris avec l’utilitaire pip, les chercheurs soulignent l’attaque est facilitée par cet outil qui ne nécessite pas la signature cryptographique et exécute du code arbitraire pendant l’installation du paquet, ce qui est un bogue et une fonctionnalité bien documentée. En outre, l’agence de sécurité slovaque met en avant le fait qu’il est « également facile de publier n’importe quel code Python arbitraire dans le dépôt PyPI, qui n’a pas de contrôle de qualité ou d’évaluation de code.»

    Après avoir découvert la supercherie, les chercheurs de l’agence slovaque ont alerté la plateforme PyPI. Les paquets malveillants ont été automatiquement retirés du dépôt. Toutefois, le danger n’est pas pour autant écarté avec les différents paquets qui auraient été intégrés dans les logiciels et distribués à travers les serveurs.

    Après la lumière faite sur ce problème de typographie utilisé pour tromper les visiteurs de la plateforme PyPI, le chercheur Benjamin Bach et le journaliste Hanno Böck ont rapporté qu’ils ont également alimenté le dépôt PyPI avec des paquets dont les noms ressemblent fortement aux paquets officiels de la plateforme. Vu que cette approche n’avait d’autres buts que de montrer le degré d’exposition des développeurs lors du téléchargement des paquets sur PyPI, Bach a modifié les paquets qui contenaient le code des paquets officiels afin qu’ils se connectent seulement à un serveur qui enregistre l’adresse IP de chaque développeur. En l’espace de deux jours, 7535 téléchargements ont été effectués avec leurs 20 paquets les plus téléchargés. Par ailleurs, bien que ces paquets aient été retirés de PyPI, Bach informe que ses 108 autres paquets portant des noms trompeurs n’ont pas encore été retirés.

    Source : Rapport de l’agence de sécurité slovaque, Rapport de Benjamin Bach

    Et vous ?

    Fréquentez-vous PyPI ?

    Avec ces possibilités de télécharger des paquets infectés sur cette plateforme, allez-vous continuer à la fréquenter ?

    Voir aussi

    Un bogue dans Java et Python permettrait à des attaquants de contourner les défenses des pare-feu, selon des chercheurs en sécurité
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  2. #2
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Ingénieur systèmes embarqués
    Inscrit en
    juin 2009
    Messages
    3 548
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur systèmes embarqués

    Informations forums :
    Inscription : juin 2009
    Messages : 3 548
    Points : 9 334
    Points
    9 334
    Billets dans le blog
    1

    Par défaut

    Comme toute personne utilisant Python, oui j'utilise PyPI pour installer des paquets avec pip(3).

    Et, je pense, que comme toute personne utilisant Python, je ne vais pas m'arrêter d'utiliser cette plateforme.... mais je ferai attention ! :-o

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    juillet 2008
    Messages
    123
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : juillet 2008
    Messages : 123
    Points : 303
    Points
    303

    Par défaut Pypi

    J'utilise des paquets issus de pypi pour certains projets, comme "splinter" pour automatiser des pages web. Mais ça m'a toujours gêné, ce dépot en dehors, à coté, des dépôts officiels. J'aurais 100x préféré pouvoir télécharger splinter depuis apt-get.

  4. #4
    Membre averti Avatar de cervo
    Homme Profil pro
    Développeur informatique
    Inscrit en
    décembre 2012
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : décembre 2012
    Messages : 212
    Points : 378
    Points
    378

    Par défaut


    je pense qu'uliser une signature crypto pour telecharger les paquets sera un bon debut. mais la réelle solution sera d'evaluer ou de tester les codes avant leur publication sur le depot pypi... au moins on obtient une garantie que le code posté à été évalué auparavant... meme si faut pas se cacher que ce sera une grosse tâche.
    Toute chose dépend de la valeur qu'on lui attribue !

Discussions similaires

  1. Réponses: 2
    Dernier message: 23/09/2016, 15h16
  2. Réponses: 10
    Dernier message: 11/05/2014, 15h19
  3. Réponses: 1
    Dernier message: 28/06/2012, 16h04
  4. Réponses: 1
    Dernier message: 27/04/2012, 16h41
  5. Réponses: 0
    Dernier message: 01/02/2010, 14h51

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