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

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    mars 2013
    Messages
    3 124
    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 : 3 124
    Points : 70 937
    Points
    70 937

    Par défaut Quel est l'impact du typosquattage dans les gestionnaires de paquets des langages de programmation ?

    Quel est l'impact du typosquattage dans les gestionnaires de paquets des langages de programmation ?
    Un étudiant montre que même les institutions gouvernementales américaines ne sont pas à l'abri

    Nikolai Philipp Tschacher, un étudiant allemand, a publié un mémoire de licence en système d’information à l’université de Hambourg (Allemagne) dans lequel il a parlé du typosquattage dans les gestionnaires de paquets des langages de programmation.

    « Durant l’avènement du web 2.0, des langages de programmation de haut niveau comme Ruby, Node.js (JavaScript), Python, Perl et PHP ont gagné en popularité, ce qui a permis à plus de bibliothèques d’être hébergées sur des gestionnaires de paquets centralisés. Comme l’enseigne le typosquattage (mais aussi pour le cybersquattage ainsi que le squattage de domaine), la popularité des grands sites Web peut être utilisée à mauvais escient par des parties tierces en enregistrant des noms de domaine qui ressemblent à leurs domaines cibles, mais contiennent des fautes de frappe intentionnelles. Le même principe peut être appliqué aux gestionnaires de paquets : si un utilisateur a l'intention d'installer un logiciel populaire et se trompe dans l’orthographe du nom du paquet, un paquet squatté malveillant est téléchargé à la place, ce qui peut conduire à l'exécution de code (potentiellement avec des privilèges administratifs) », a-t-il expliqué en guise de préambule.

    Et de continuer en disant que « ce travail va tenter de montrer que la même méthodologie employée pour le squattage de domaine peut être appliquée aux gestionnaires de paquets. L'objectif principal de ce travail est d'estimer les risques liés à de telles attaques. En outre, dans ce mémoire, nous essaierons de développer des contre-mesures simples et efficaces que les gestionnaires de paquets pourraient employer ».

    Le typosquattage, qui est une forme de cybersquattage, se fonde principalement sur les fautes de frappe et d'orthographe commises par l'internaute au moment de saisir une adresse web dans un navigateur. Lorsqu’un internaute saisit accidentellement le nom mal orthographié dans sa barre d’adresse, les typos (erreurs) les redirigent vers des sites factices qui, dans bien des cas, imitent le site original tandis qu’ils tentent de télécharger un logiciel malveillant ou de récupérer des identifiants de l’utilisateur.

    Se servant de cette méthode vieille d’une décennie (l’un des exemples que nous pouvons citer est « Goggle.com », une variante de Google qui était présente sur internet de 2006 à 2008), il a d’abord identifié 214 des paquets les plus téléchargés par les utilisateurs. Par la suite, il a effectué un upload de codes tests des 214 paquets dans trois communautés populaires de développeurs (notamment PyPI, RubyGems et NPM qui sont les communautés de développeurs Python, Ruby et JavaScript) en prenant le soin d’attribuer à chaque fois des noms qui étaient semblables à des paquets largement utilisés déjà présentés par d'autres utilisateurs. Le code de l’étudiant fournissait un avertissement qui informait les développeurs qu’ils avaient téléchargé le mauvais paquet. Mais, avant de le faire, le code envoyait une requête web à un ordinateur de l’université afin qu’il puisse garder une trace du nombre de fois où les codes tests avaient été téléchargés et s’ils avaient reçu des droits administrateurs (via un booléen). D'autres informations étaient également associées comme le système d'exploitation et le type d'architecture de l'hôte (exemple Linux-3.14.48), la liste des paquets installés avec le gestionnaire des paquets, les informations hardware de l'hôte ou encore l'historique de commande de l'utilisateur actuel et qui contient le gestionnaire de paquet comme substring.

    Sur une période de plusieurs mois, son code factice été exécuté plus de 45 000 fois sur plus de 17 000 domaines distincts, et plus de la moitié du temps son code s’est vu octroyé des droits administrateur. Deux des domaines concernés se terminaient par « .mil », ce qui suggère que les personnes appartenant au corps de l'armée américaine ont exécuté son script.

    « Il y avait également 23 domaines en .gov des institutions gouvernementales des États-Unis », a-t-il indiqué. Selon lui, « ce nombre est très alarmant, car la prise en charge des hôtes dans les laboratoires de recherche américains et les institutions gouvernementales peut avoir des conséquences potentiellement désastreuses pour eux ».

    Les États-Unis ont été le pays qui a le plus été touché avec 5810 installations uniques, suivis par la Chine avec 2050 installations uniques et l'Allemagne avec 743 installations uniques. La France quant à elle figure en 8e position avec 469 installations uniques.


    Selon Dan Rosenberg, senior researcher pour le compte d’Azimut Security, « je pense que nous sommes assez conscients du fait que si nous installons un module aléatoire tiers que personne n'a examiné et vous ne connaissez pas, il y a un risque inhérent parce qu'il peut tout faire ». « La nouveauté ici c’est que même si vous connaissez et avez confiance en un module, si vous faites une erreur vous pouvez encore exécuter un code non sécurisé ».

    Parmi les contre-mesures que propose Tschacher aux gestionnaires de paquets figurent entre autres :
    • la prohibition de noms de paquets de base : ce travail a montré que la plupart des installations issues de typo sont dues à des utilisateurs qui essayent de réinstaller des noms standards de bibliothèque avec le gestionnaire de paquets. Donc, il est obligatoire pour chaque dépôt de paquet d'empêcher tout nom de module d'être enregistré par des utilisateurs tiers, qui a été une partie du langage de base à un moment donné dans le temps. Il arrive que des utilisateurs arrêtent de se servir d'un langage de développement pendant des années et, quand ils reviennent par la suite, ils essayent de se servir de bibliothèques dépréciées ou retirées. La première chose qu'ils essayent de faire est de réinstaller les fonctionnalités manquantes en se servant d'un gestionnaire de paquets ;
    • réduire le jeu de caractères dans les noms de paquets ;
    • empêcher l'exécution directe de code ou les installations ;
    • générer une liste de candidats potentiels de typo.

    Source : Typosquatting in Programming Language Package Managers (mémoire au format PDF)
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  2. #2
    Membre éprouvé Avatar de atha2
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    janvier 2007
    Messages
    657
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : janvier 2007
    Messages : 657
    Points : 1 119
    Points
    1 119

    Par défaut

    D'autres informations étaient également associées comme le système d'exploitation et le type d'architecture de l'hôte (exemple Linux-3.14.48), la liste des paquets installés avec le gestionnaire des paquets, les informations hardware de l'hôte ou encore l'historique de commande de l'utilisateur actuel et qui contient le gestionnaire de paquet comme substring.
    Pas sur que les militaires cités dans l'article aient appréciés... Dans certain cas l'historique des commandes contient des mots de passe.
    C'était bien censé être un PoC de virus sans aucun danger ?

  3. #3
    Rédacteur
    Avatar de eclesia
    Profil pro
    Inscrit en
    décembre 2006
    Messages
    2 066
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : décembre 2006
    Messages : 2 066
    Points : 2 970
    Points
    2 970

    Par défaut

    Ils vont surement mettre ca une Nième fois sur dos des chinois ou des russes.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    novembre 2003
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : novembre 2003
    Messages : 103
    Points : 536
    Points
    536

    Par défaut

    Alors déjà, impressionné par le mémoire de Nikolai.
    Je ne doute pas qu'il a un bel avenir dans la branche

    L'historique de commande lié au mauvais repo, je peux comprendre : cela permet d'identifier les commandes passées et de comprendre ensuite le comportement qui a amené à faire cette install.

    ça fait réfléchir.
    je me demande l'impact possible sur les repos des distributions linux, les officiels et les "célèbres" comme SoftwareCollections.org ?

  5. #5
    Expert confirmé
    Avatar de TiranusKBX
    Homme Profil pro
    Développeur C, C++, C#, Python, PHP, HTML, JS
    Inscrit en
    avril 2013
    Messages
    1 473
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur C, C++, C#, Python, PHP, HTML, JS
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2013
    Messages : 1 473
    Points : 4 927
    Points
    4 927
    Billets dans le blog
    6

    Par défaut

    Citation Envoyé par atha2 Voir le message
    Pas sur que les militaires cités dans l'article aient appréciés... Dans certain cas l'historique des commandes contient des mots de passe.
    C'était bien censé être un PoC de virus sans aucun danger ?
    Rien n'empèche de se faire un peut d'argent avec les données je supose ?
    merci de me mettre des quand mes messages sont pertinent, et pour les pas contents voici mon service client pour eux

    [Projet en cours] Strategy(nom provisoire) - Advance wars like
    cordova-plugin-file-hash Plugin cordova servant à obtenir le hash d'un fichier

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Astrophysicien
    Inscrit en
    septembre 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Astrophysicien

    Informations forums :
    Inscription : septembre 2012
    Messages : 5
    Points : 8
    Points
    8

    Par défaut

    Citation Envoyé par gagaches Voir le message
    je me demande l'impact possible sur les repos des distributions linux, les officiels et les "célèbres" comme SoftwareCollections.org ?
    A priori, ce ne devrait pas être possible pour les repos officiels des distributions. Il est censé y avoir des processus de validation/test des paquets. Après, si tu passe par un dépot comme le AUR d'ArchLinux ou les PPA non-officiel d'Ubuntu, tout devient possible. Mais là, c'est entièrement ta responsabilité, car non géré par les mainteneurs de la distrib.

    C'est surtout les gestionnaires comme pip ou npm qui peuvent être touchés.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    novembre 2003
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : novembre 2003
    Messages : 103
    Points : 536
    Points
    536

    Par défaut

    npm, ce vaste fourre-tout de plein de framworks pas encore finis de développés mais déjà en production ... (c'est encore dredi, pas taper )

    bon, ça rassure un peu quand même côté repo officiels.

Discussions similaires

  1. [2008R2] Quel est l'impact de IKARE de ITRUST sur les instances SQL Server ?
    Par hmira dans le forum Administration
    Réponses: 2
    Dernier message: 14/04/2016, 19h40
  2. Quel est l'index qui sert pour les For Each ?
    Par Nixar dans le forum VB.NET
    Réponses: 5
    Dernier message: 04/06/2007, 09h23
  3. Réponses: 2
    Dernier message: 18/01/2007, 14h46
  4. Réponses: 2
    Dernier message: 14/10/2005, 18h05
  5. Quel est l'équivalent de Findcomponent pour les Forms ?
    Par Ben_Le_Cool dans le forum Composants VCL
    Réponses: 12
    Dernier message: 23/09/2005, 13h48

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