{"id":21872,"date":"2024-05-21T10:47:44","date_gmt":"2024-05-21T08:47:44","guid":{"rendered":"https:\/\/www.kaspersky.fr\/blog\/?p=21872"},"modified":"2024-05-21T16:41:28","modified_gmt":"2024-05-21T14:41:28","slug":"beware-github-malicious-links","status":"publish","type":"post","link":"https:\/\/www.kaspersky.fr\/blog\/beware-github-malicious-links\/21872\/","title":{"rendered":"Des programmes malveillants dans des liens &laquo;&nbsp;officiels&nbsp;&raquo; GitHub et GitLab"},"content":{"rendered":"<p>L\u2019un des tout premiers conseils en mati\u00e8re de s\u00e9curit\u00e9 est celui-ci : \u00ab\u00a0Ne t\u00e9l\u00e9chargez que des logiciels provenant de sources officielles.\u00a0\u00bb Les \u00ab\u00a0sources officielles \u00a0\u00bb correspondent g\u00e9n\u00e9ralement aux principaux magasins d\u2019applications disponibles sur chaque plateforme, mais pour des millions d\u2019applications open source utiles et gratuites, la source la plus \u00a0\u00bb officielle \u00a0\u00bb est l\u2019espace de stockage du d\u00e9veloppeur sur un site d\u00e9di\u00e9 comme GitHub ou GitLab. Vous y trouverez le code source du projet, les correctifs et les ajouts apport\u00e9s au code et, souvent, une version pr\u00eate \u00e0 l\u2019emploi de l\u2019application. Ces sites sont connus de tous ceux qui s\u2019int\u00e9ressent de pr\u00e8s ou de loin aux ordinateurs, aux logiciels et \u00e0 la programmation. C\u2019est pour cette raison qu\u2019il a \u00e9t\u00e9 tr\u00e8s d\u00e9sagr\u00e9able pour beaucoup de monde (y compris pour les sp\u00e9cialistes en s\u00e9curit\u00e9 informatique et les d\u00e9veloppeurs eux-m\u00eames) de d\u00e9couvrir qu\u2019un fichier accessible par un lien comme <em>github{.}com\/{User_Name}\/{Repo_Name}\/files\/{file_Id}\/{file_name}<\/em> pouvait \u00eatre publi\u00e9 par une autre personne que le d\u00e9veloppeur et contenir\u2026 n\u2019importe quoi.<\/p>\n<p>Bien s\u00fbr, les cybercriminels en ont imm\u00e9diatement profit\u00e9.<\/p>\n<h2>Analyse du probl\u00e8me<\/h2>\n<p>GitHub et son proche parent GitLab sont construits autour de la collaboration sur des projets de d\u00e9veloppement de logiciels. Un d\u00e9veloppeur peut y charger son code, et d\u2019autres personnes peuvent proposer des ajouts et des correctifs ou m\u00eame cr\u00e9er des forks, aussi appel\u00e9s reprises logicielles, c\u2019est-\u00e0-dire des versions alternatives de l\u2019application ou de la biblioth\u00e8que. Si un utilisateur trouve un bug dans une application, il peut le signaler au d\u00e9veloppeur en cr\u00e9ant un rapport de probl\u00e8me. Les autres utilisateurs peuvent confirmer ce probl\u00e8me dans les commentaires. Par ailleurs, il est possible de commenter les nouvelles versions de l\u2019application. Si n\u00e9cessaire, il est \u00e9galement possible de joindre \u00e0 ces commentaires des fichiers, comme des captures d\u2019\u00e9cran de l\u2019erreur ou des documents \u00e0 l\u2019origine d\u2019un plantage de l\u2019application. Ces fichiers sont stock\u00e9s sur les serveurs de GitHub \u00e0 l\u2019aide de liens semblables \u00e0 ceux d\u00e9crits ci-dessus.<\/p>\n<p>Cependant, GitHub a une particularit\u00e9 : si un utilisateur r\u00e9dige un commentaire et charge les fichiers qui l\u2019accompagnent sans cliquer sur \u00ab\u00a0Publier\u00a0\u00bb, les informations restent \u00ab\u00a0bloqu\u00e9es\u00a0\u00bb dans le brouillon et sont donc invisibles pour le propri\u00e9taire de l\u2019application comme pour les autres utilisateurs de GitHub. N\u00e9anmoins, un lien direct vers le fichier charg\u00e9 dans les commentaires est cr\u00e9\u00e9 et demeure enti\u00e8rement op\u00e9rationnel, et toute personne qui suit ce lien re\u00e7oit le fichier depuis le CDN de GitHub.<\/p>\n<div id=\"attachment_21873\" style=\"width: 1219px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/media.kasperskydaily.com\/wp-content\/uploads\/sites\/93\/2024\/05\/21104319\/beware-github-malicious-links-01.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-21873\" class=\"size-full wp-image-21873\" src=\"https:\/\/media.kasperskydaily.com\/wp-content\/uploads\/sites\/93\/2024\/05\/21104319\/beware-github-malicious-links-01.jpg\" alt=\"Un lien de t\u00e9l\u00e9chargement vers un fichier malveillant est g\u00e9n\u00e9r\u00e9 apr\u00e8s l'ajout de ce fichier \u00e0 un commentaire non publi\u00e9 sur GitHub.\" width=\"1209\" height=\"787\"><\/a><p id=\"caption-attachment-21873\" class=\"wp-caption-text\">Un lien de t\u00e9l\u00e9chargement vers un fichier malveillant est g\u00e9n\u00e9r\u00e9 apr\u00e8s l\u2019ajout de ce fichier \u00e0 un commentaire non publi\u00e9 sur GitHub.<\/p><\/div>\n<p>De leur c\u00f4t\u00e9, les propri\u00e9taires de l\u2019espace de stockage dans lequel ce fichier est publi\u00e9 ne peuvent pas le supprimer ou le bloquer. Ils n\u2019ont m\u00eame pas connaissance de son existence\u00a0! De plus, il n\u2019existe pas de param\u00e8tres pour restreindre le chargement de ce type de fichiers dans l\u2019espace de stockage dans son ensemble. La seule solution consisterait \u00e0 d\u00e9sactiver compl\u00e8tement les commentaires (sur GitHub, il est possible de les d\u00e9sactiver pendant six mois), mais cela emp\u00eacherait les d\u00e9veloppeurs de recevoir des retours.<\/p>\n<p>Le m\u00e9canisme des commentaires sur GitLab est similaire, car il permet de publier des fichiers par l\u2019interm\u00e9diaire de brouillons de commentaires. Les fichiers sont accessibles via un lien comme <em>gitlab.com\/{User_Name}\/{Repo_Name}\/uploads\/{file_Id}\/{file_name}.<\/em><\/p>\n<p>Cependant, dans ce cas pr\u00e9cis, le probl\u00e8me est quelque peu minimis\u00e9 par le fait que seuls les utilisateurs GitLab enregistr\u00e9s et connect\u00e9s peuvent charger des fichiers.<\/p>\n<h2>Un vrai cadeau pour les campagnes de phishing<\/h2>\n<p>Gr\u00e2ce \u00e0 la possibilit\u00e9 de publier des fichiers arbitraires via des liens commen\u00e7ant par \u00ab\u00a0github\u00a0\u00bb ou \u00ab\u00a0gitlab\u00a0\u00bb et contenant les noms de d\u00e9veloppeurs respect\u00e9s et de projets populaires (car un commentaire non publi\u00e9 avec un fichier peut \u00eatre laiss\u00e9 dans presque tous les espaces de stockage), les cybercriminels sont en mesure de mener des attaques de phishing tr\u00e8s convaincantes. <a href=\"https:\/\/www.bleepingcomputer.com\/news\/security\/github-comments-abused-to-push-malware-via-microsoft-repo-urls\/\" target=\"_blank\" rel=\"noopener nofollow\">Des campagnes malveillantes<\/a> impliquant des \u00ab\u00a0commentaires\u00a0\u00bb cens\u00e9s contenir des applications de triche li\u00e9es \u00e0 des jeux ont d\u00e9j\u00e0 \u00e9t\u00e9 d\u00e9couvertes dans des espaces de stockage Microsoft.<\/p>\n<p>Un utilisateur vigilant pourrait se demander pourquoi une application de triche li\u00e9e \u00e0 un jeu se trouverait dans l\u2019espace de stockage Microsoft <em>https:\/\/github{.}com\/microsoft\/vcpkg\/files\/\u2026..\/Cheat.Lab.zip<\/em>. Cependant, il est bien plus probable que les mots cl\u00e9s \u00ab\u00a0github\u00a0\u00bb et \u00ab\u00a0microsoft\u00a0\u00bb rassurent la victime, qui n\u2019analysera pas davantage le lien. Les cybercriminels les plus rus\u00e9s peuvent dissimuler leurs programmes malveillants avec encore plus de soin, par exemple en les pr\u00e9sentant comme une nouvelle version d\u2019une application distribu\u00e9e via GitHub ou GitLab et en publiant des liens via des \u00ab\u00a0commentaires\u00a0\u00bb sur l\u2019application en question.<\/p>\n<h2>Comment vous prot\u00e9ger des contenus malveillants sur GitHub et GitLab\u00a0?<\/h2>\n<p>Alors que ce d\u00e9faut de conception n\u2019a toujours pas \u00e9t\u00e9 corrig\u00e9 et que n\u2019importe qui peut encore librement charger des fichiers arbitraires vers le CDN de GitHub et de GitLab, les utilisateurs de ces plateformes doivent faire preuve d\u2019une extr\u00eame prudence.<\/p>\n<ul>\n<li>Ne t\u00e9l\u00e9chargez pas de fichiers \u00e0 partir de liens directs vers GitHub ou GitLab trouv\u00e9s dans des sources externes, c\u2019est-\u00e0-dire sur d\u2019autres sites Internet, dans des emails ou dans des chats. Ouvrez plut\u00f4t la page du projet (<em>github{.}com\/{User_Name}\/{Repo_Name}<\/em> ou <em>gitlab{.}com\/{User_Name}\/{Repo_Name})<\/em> et assurez-vous que vous pouvez effectivement t\u00e9l\u00e9charger le fichier \u00e0 partir de l\u00e0. Les fichiers officiels des d\u00e9veloppeurs doivent \u00eatre publi\u00e9s et visibles dans leur espace de stockage.<\/li>\n<li>V\u00e9rifiez que vous vous trouvez sur la vraie page des d\u00e9veloppeurs. Dans GitHub, GitLab et les autres espaces de stockage open source, le <a href=\"https:\/\/www.kaspersky.fr\/blog\/lookalike-domains-in-bec\/20872\/\" target=\"_blank\" rel=\"noopener\">typosquattage<\/a>, c\u2019est-\u00e0-dire la cr\u00e9ation de faux projets dont le nom diff\u00e8re d\u2019une ou deux lettres de l\u2019original (par exemple, Chaddev au lieu de Chatdev), est une pratique courante.<\/li>\n<li>\u00c9vitez de t\u00e9l\u00e9charger des applications qui ont peu d\u2019\u00e9toiles (ou de mentions j\u2019aime) et qui ont \u00e9t\u00e9 cr\u00e9\u00e9es r\u00e9cemment.<\/li>\n<li>Utilisez une protection contre les programmes malveillants et le phishing sur tous vos ordinateurs et smartphones. <a href=\"https:\/\/www.kaspersky.fr\/premium?icid=fr_bb2022-kdplacehd_acq_ona_smm__onl_b2c_kdaily_lnk_sm-team___kprem___\" target=\"_blank\" rel=\"noopener\">Kaspersky Premium<\/a>\u00a0offre une protection compl\u00e8te aux joueurs et aux passionn\u00e9s d\u2019informatique.<\/li>\n<\/ul>\n<input type=\"hidden\" class=\"category_for_banner\" value=\"premium-geek\">\n","protected":false},"excerpt":{"rendered":"<p>Est-il possible de se faire infecter par des programmes malveillants en t\u00e9l\u00e9chargeant des fichiers depuis des espaces de stockage Microsoft sur GitHub ? Oui, c&rsquo;est possible. Faites preuve de vigilance !<\/p>\n","protected":false},"author":2722,"featured_media":21875,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[686],"tags":[87,4476,4477,1396,204,4369,89],"class_list":{"0":"post-21872","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-threats","8":"tag-conseils","9":"tag-github","10":"tag-gitlab","11":"tag-joueurs","12":"tag-menaces","13":"tag-open-source","14":"tag-phishing"},"hreflang":[{"hreflang":"fr","url":"https:\/\/www.kaspersky.fr\/blog\/beware-github-malicious-links\/21872\/"},{"hreflang":"en-in","url":"https:\/\/www.kaspersky.co.in\/blog\/beware-github-malicious-links\/27407\/"},{"hreflang":"en-ae","url":"https:\/\/me-en.kaspersky.com\/blog\/beware-github-malicious-links\/22731\/"},{"hreflang":"en-us","url":"https:\/\/usa.kaspersky.com\/blog\/beware-github-malicious-links\/30092\/"},{"hreflang":"en-gb","url":"https:\/\/www.kaspersky.co.uk\/blog\/beware-github-malicious-links\/27562\/"},{"hreflang":"es-mx","url":"https:\/\/latam.kaspersky.com\/blog\/beware-github-malicious-links\/27369\/"},{"hreflang":"es","url":"https:\/\/www.kaspersky.es\/blog\/beware-github-malicious-links\/30022\/"},{"hreflang":"it","url":"https:\/\/www.kaspersky.it\/blog\/beware-github-malicious-links\/28826\/"},{"hreflang":"ru","url":"https:\/\/www.kaspersky.ru\/blog\/beware-github-malicious-links\/37388\/"},{"hreflang":"tr","url":"https:\/\/www.kaspersky.com.tr\/blog\/beware-github-malicious-links\/12343\/"},{"hreflang":"x-default","url":"https:\/\/www.kaspersky.com\/blog\/beware-github-malicious-links\/51203\/"},{"hreflang":"pt-br","url":"https:\/\/www.kaspersky.com.br\/blog\/beware-github-malicious-links\/22606\/"},{"hreflang":"de","url":"https:\/\/www.kaspersky.de\/blog\/beware-github-malicious-links\/31264\/"},{"hreflang":"ja","url":"https:\/\/blog.kaspersky.co.jp\/beware-github-malicious-links\/36366\/"},{"hreflang":"ru-kz","url":"https:\/\/blog.kaspersky.kz\/beware-github-malicious-links\/27711\/"},{"hreflang":"en-au","url":"https:\/\/www.kaspersky.com.au\/blog\/beware-github-malicious-links\/33561\/"},{"hreflang":"en-za","url":"https:\/\/www.kaspersky.co.za\/blog\/beware-github-malicious-links\/33223\/"}],"acf":[],"banners":"","maintag":{"url":"https:\/\/www.kaspersky.fr\/blog\/tag\/phishing\/","name":"phishing"},"_links":{"self":[{"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/posts\/21872","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/users\/2722"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/comments?post=21872"}],"version-history":[{"count":3,"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/posts\/21872\/revisions"}],"predecessor-version":[{"id":21877,"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/posts\/21872\/revisions\/21877"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/media\/21875"}],"wp:attachment":[{"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/media?parent=21872"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/categories?post=21872"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/tags?post=21872"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}