{"id":28826,"date":"2024-05-14T10:44:36","date_gmt":"2024-05-14T08:44:36","guid":{"rendered":"https:\/\/www.kaspersky.it\/blog\/?p=28826"},"modified":"2024-05-16T12:44:21","modified_gmt":"2024-05-16T10:44:21","slug":"beware-github-malicious-links","status":"publish","type":"post","link":"https:\/\/www.kaspersky.it\/blog\/beware-github-malicious-links\/28826\/","title":{"rendered":"Malware in agguato nei collegamenti &#8220;ufficiali&#8221; di GitHub e GitLab"},"content":{"rendered":"<p>Uno dei consigli pi\u00f9 longevi sulla sicurezza \u00e8: \u201cscaricare software solo da fonti ufficiali\u201d. Le \u201cfonti ufficiali\u201d sono in genere i principali app store di ciascuna piattaforma, ma per milioni di app open source utili e gratuite, la fonte pi\u00f9 \u201cufficiale\u201d che c\u2019\u00e8 \u00e8 il repository dello sviluppatore stesso su un sito dedicato come GitHub o GitLab. L\u00ec puoi trovare il codice sorgente del progetto, le correzioni e le aggiunte al codice e spesso una build pronta all\u2019uso. Questi siti sono familiari a chiunque abbia il minimo interesse in computer, software e programmazione. Ecco perch\u00e9 \u00e8 stata una spiacevole scoperta per molti (inclusi gli specialisti della sicurezza IT e gli stessi sviluppatori) che un file accessibile a un link come <em>github{.}com\/{nome_utente}\/{nome_repo}\/files\/{id_file}\/{nome_file}<\/em> potesse essere pubblicato da qualcuno diverso dallo sviluppatore e contenere\u2026 qualsiasi cosa.<\/p>\n<p>Naturalmente, i criminali informatici ne hanno subito approfittato.<\/p>\n<h2>Definiamo il problema<\/h2>\n<p>GitHub e il suo parente stretto GitLab si basano sulla collaborazione nei progetti di sviluppo software. Uno sviluppatore pu\u00f2 caricare il proprio codice e altri possono offrire aggiunte, correzioni o creare fork, cio\u00e8 versioni alternative dell\u2019app o della libreria. Se un utente trova un bug in un\u2019app, pu\u00f2 segnalarlo allo sviluppatore creando un apposito report. Altri utenti possono confermare il problema nei commenti. Si possono anche commentare le nuove versioni dell\u2019app. Se necessario, \u00e8 possibile allegare file ai commenti, ad esempio schermate che mostrano l\u2019errore o documenti che causano l\u2019arresto anomalo dell\u2019applicazione. Questi file sono archiviati nei server GitHub utilizzando link del tipo sopra descritto.<\/p>\n<p>Tuttavia, GitHub ha una particolarit\u00e0: se un utente prepara un commento e carica i file di accompagnamento ma non fa clic su \u201cPubblica\u201d, le informazioni rimangono \u201ccongelate\u201d nella bozza, invisibili sia al proprietario dell\u2019applicazione che agli altri utenti di GitHub. Viene per\u00f2 creato un link diretto al file caricato nel commento, pienamente funzionante, e chiunque segua il thread di commenti ricever\u00e0 il file dal CDN di GitHub.<\/p>\n<div id=\"attachment_28827\" style=\"width: 1219px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-28827\" class=\"size-full wp-image-28827\" src=\"https:\/\/media.kasperskydaily.com\/wp-content\/uploads\/sites\/89\/2024\/05\/14104139\/beware-github-malicious-links-01.jpg\" alt=\"Un link per il download di un file dannoso viene generato dopo l'aggiunta del file a una bozza di commento su GitHub\" width=\"1209\" height=\"787\"><p id=\"caption-attachment-28827\" class=\"wp-caption-text\">Un link per il download di un file dannoso viene generato dopo l\u2019aggiunta del file a una bozza di commento su GitHub<\/p><\/div>\n<p>Nel frattempo, i proprietari del repository in cui \u00e8 pubblicato questo file nei commenti non possono eliminarlo, n\u00e9 bloccarlo. Non sanno nemmeno che esiste! Inoltre non vi \u00e8 alcuna impostazione per limitare il caricamento di tali file nell\u2019ambito del repository. L\u2019unica soluzione \u00e8 disabilitare completamente i commenti (su GitHub \u00e8 possibile farlo per un massimo di sei mesi), ma ci\u00f2 priverebbe gli sviluppatori dei feedback.<\/p>\n<p>Il meccanismo di commento di GitLab \u00e8 simile, in quanto consente la pubblicazione di file tramite bozze di commenti. I file sono accessibili tramite un link del tipo <em>gitlab.com\/{nome_utente}\/{nome_repo}\/uploads\/{id_file}\/{name_file}.<\/em><\/p>\n<p>Il problema in questo caso \u00e8 in qualche modo mitigato dal fatto che solo gli utenti GitLab registrati e connessi possono caricare file.<\/p>\n<h2>Un regalo alle campagne di phishing<\/h2>\n<p>Grazie alla possibilit\u00e0 di pubblicare file arbitrari su collegamenti che iniziano con GitHub\/GitLab e contengono i nomi di sviluppatori rispettati e progetti popolari (perch\u00e9 un commento non pubblicato contenente un file pu\u00f2 essere lasciato in quasi tutti i repository), i criminali informatici hanno l\u2019opportunit\u00e0 di apportare attacchi di phishing molto convincenti. Sono gi\u00e0 state scoperte <a href=\"https:\/\/www.bleepingcomputer.com\/news\/security\/github-comments-abused-to-push-malware-via-microsoft-repo-urls\/\" target=\"_blank\" rel=\"nofollow noopener\">campagne dannose<\/a> in cui \u201ccommenti\u201d, presumibilmente contenenti app per barare nei giochi vengono lasciati nei repository di Microsoft.<\/p>\n<p>Un utente attento potrebbe chiedersi cosa ci faccia un cheat di gioco in un repository di Microsoft: <em>https:\/\/github{.}com\/microsoft\/vcpkg\/files\/\u2026..\/Cheat.Lab.zip<\/em> . Ma \u00e8 molto pi\u00f9 probabile che le parole chiave \u201cGitHub\u201d e \u201cMicrosoft\u201d rassicurino la vittima, che non esaminer\u00e0 ulteriormente il link. I criminali pi\u00f9 intelligenti potrebbero camuffare il loro malware in modo ancora pi\u00f9 accurato, ad esempio presentandolo come una nuova versione di un\u2019app distribuita tramite GitHub o GitLab e pubblicandone il link nei commenti relativi a tale app.<\/p>\n<h2>Come proteggersi da contenuti dannosi su GitHub e GitLab<\/h2>\n<p>Questo difetto di progettazione rimane irrisolto e chiunque pu\u00f2 caricare liberamente file arbitrari nei CDN di GitHub e GitLab, pertanto gli utenti di queste piattaforme devono stare estremamente attenti.<\/p>\n<ul>\n<li>Non scaricare file da link GitHub\/GitLab diretti che trovi in fonti esterne, ad esempio altri siti Web, e-mail o chat. Apri invece la pagina del progetto ( <em>github{.}com\/{nome_utente}\/{nome_repo}<\/em> o <em>gitlab{.}com\/{nome_utente}\/{nome_repo})<\/em> e assicurati di poter scaricare il file da l\u00ec. I file ufficiali degli sviluppatori devono essere tutti pubblicati e visibili nel repository.<\/li>\n<li>Assicurati di essere nella pagina giusta: in GitHub, GitLab e altri repository open source, le frodi di <a href=\"https:\/\/www.kaspersky.com\/blog\/lookalike-domains-in-bec\/48686\/\" target=\"_blank\" rel=\"noopener nofollow\">typosquatting<\/a> sono diffuse: si tratta della creazione di progetti falsi con nomi che differiscono dall\u2019originale per una o due lettere (ad esempio, Chaddev anzich\u00e9 Chatdev).<\/li>\n<li>Evita di scaricare applicazioni con poche stelle (equivalenti a un \u201cmi piace\u201d) e create di recente.<\/li>\n<li>Usa la protezione da malware e phishing su tutti i tuoi computer e smartphone. <a href=\"https:\/\/www.kaspersky.it\/premium?icid=it_bb2023-kdplacehd_acq_ona_smm__onl_b2c_kdaily_lnk_sm-team___kprem___\" target=\"_blank\" rel=\"noopener\">Kaspersky Premium<\/a>\u00a0fornisce una protezione completa per gamer e appassionati di informatica.<\/li>\n<\/ul>\n<input type=\"hidden\" class=\"category_for_banner\" value=\"premium-geek\">\n","protected":false},"excerpt":{"rendered":"<p>Si pu\u00f2 essere colpiti da malware scaricando file dai repository di Microsoft su GitHub? A quanto pare, s\u00ec. Stiamo all&#8217;erta!<\/p>\n","protected":false},"author":2524,"featured_media":28828,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[2641],"tags":[1843,1045,3098,3826,638,3003,116,67],"class_list":{"0":"post-28826","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-threats","8":"tag-gamer","9":"tag-giocatori","10":"tag-github","11":"tag-gitlab","12":"tag-minacce","13":"tag-open-source","14":"tag-phishing","15":"tag-suggerimenti"},"hreflang":[{"hreflang":"it","url":"https:\/\/www.kaspersky.it\/blog\/beware-github-malicious-links\/28826\/"},{"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":"ar","url":"https:\/\/me.kaspersky.com\/blog\/beware-github-malicious-links\/11672\/"},{"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":"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":"fr","url":"https:\/\/www.kaspersky.fr\/blog\/beware-github-malicious-links\/21872\/"},{"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.it\/blog\/tag\/phishing\/","name":"phishing"},"_links":{"self":[{"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/posts\/28826","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/users\/2524"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/comments?post=28826"}],"version-history":[{"count":2,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/posts\/28826\/revisions"}],"predecessor-version":[{"id":28836,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/posts\/28826\/revisions\/28836"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/media\/28828"}],"wp:attachment":[{"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/media?parent=28826"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/categories?post=28826"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/tags?post=28826"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}