{"id":30580,"date":"2026-04-09T13:19:27","date_gmt":"2026-04-09T11:19:27","guid":{"rendered":"https:\/\/www.kaspersky.it\/blog\/?p=30580"},"modified":"2026-04-09T12:28:07","modified_gmt":"2026-04-09T10:28:07","slug":"indonesianfoods-npm-spam-campaign","status":"publish","type":"post","link":"https:\/\/www.kaspersky.it\/blog\/indonesianfoods-npm-spam-campaign\/30580\/","title":{"rendered":"Pacchetti spam nell&#8217;npm: cosa sono e perch\u00e9 sono pericolosi?"},"content":{"rendered":"<p>Cosa richiamano alla mente le parole bakso, sate e rendang? Per molti la risposta \u00e8 \u201cniente\u201d; i buongustai li riconosceranno come alimenti base indonesiani; mentre chi segue le notizie sulla sicurezza informatica ricorder\u00e0 un attacco all\u2019ecosistema Node Package Manager (npm), lo strumento che consente agli sviluppatori di utilizzare librerie predefinite invece di scrivere ogni riga di codice da zero.<\/p>\n<p>A met\u00e0 novembre, <a href=\"https:\/\/sourcecodered.com\/indonesianfoods-npm-worm\/\" target=\"_blank\" rel=\"noopener nofollow\">il ricercatore sulla sicurezza Paul McCarty ha segnalato la scoperta di una campagna di spam<\/a> volta a ingombrare il registro npm. Naturalmente, pacchetti privi di significato sono gi\u00e0 stati visualizzati nel registro, ma in questo caso sono state trovate decine di migliaia di moduli senza alcuna funzione utile. Il loro unico scopo era iniettare dipendenze del tutto inutili nei progetti.<\/p>\n<p>I nomi dei pacchetti contenevano nomi dei piatti indonesiani inseriti a caso e termini culinari come bakso, sate e rendang, motivo per cui la campagna si \u00e8 guadagnata il soprannome di \u201cIndonesianFoods\u201d. La portata era impressionante: al momento della scoperta erano stati identificati circa 86.000 colli.<\/p>\n<p>Di seguito, analizziamo com\u2019\u00e8 successo e cosa stavano effettivamente cercando gli autori degli attacchi.<\/p>\n<h2>Approfondimento su IndonesianFoods<\/h2>\n<p>A prima vista, i pacchetti di IndonesianFoods non sembravano elementi indesiderati. Presentavano strutture standard, file di configurazione validi e persino documentazione ben formattata. Secondo i <a href=\"https:\/\/www.endorlabs.com\/learn\/the-great-indonesian-tea-theft-analyzing-a-npm-spam-campaign\" target=\"_blank\" rel=\"noopener nofollow\">ricercatori di Endor Labs<\/a>, questo camuffamento ha consentito ai pacchetti di persistere nel registro npm per quasi due anni.<\/p>\n<p>Non \u00e8 che gli autori degli attacchi tentassero in modo aggressivo di inserire le proprie creazioni in progetti esterni. Invece, hanno semplicemente invaso l\u2019ecosistema con codice dall\u2019aspetto legittimo, in attesa che qualcuno commettesse un errore di battitura o scegliesse accidentalmente la propria libreria dai risultati di ricerca. Non \u00e8 chiaro cosa si debba cercare esattamente per confondere il nome di un pacchetto con un piatto indonesiano, ma la ricerca originale <a href=\"https:\/\/sourcecodered.com\/indonesianfoods-npm-worm\/\" target=\"_blank\" rel=\"noopener nofollow\">rileva<\/a> che almeno 11 progetti sono riusciti in qualche modo a includere questi pacchetti nelle proprie build.<\/p>\n<p>Una piccola parte di questi pacchetti indesiderati aveva un meccanismo di autoreplicazione integrato: una volta installati, creavano e pubblicavano i nuovi pacchetti nel registro npm ogni sette secondi. Questi nuovi moduli presentavano nomi casuali (relativi anche alla cucina indonesiana) e numeri di versione, tutti pubblicati, come prevedibile, utilizzando le credenziali della vittima.<\/p>\n<p>Altri pacchetti dannosi integrati con la piattaforma blockchain TEA. Il <a href=\"https:\/\/tea.xyz\/\" target=\"_blank\" rel=\"noopener nofollow\">progetto TEA<\/a> \u00e8 stato progettato per premiare i creatori open source con token in proporzione alla popolarit\u00e0 e all\u2019utilizzo del codice, operando teoricamente su un modello \u201cProof of Contribution\u201d.<\/p>\n<p>Una parte significativa di questi pacchetti non conteneva alcuna funzionalit\u00e0 effettiva, tuttavia spesso contenevano una decina di dipendenze che, come \u00e8 facile immaginare, indicavano altri progetti di spam nell\u2019ambito della stessa campagna. Pertanto, se una vittima include erroneamente uno di questi pacchetti dannosi, ne trascina molti altri, alcuni dei quali hanno le proprie dipendenze. Il risultato \u00e8 un progetto finale ingombro di un\u2019enorme quantit\u00e0 di codice ridondante.<\/p>\n<h2>Cosa ci guadagnano gli autori degli attacchi?<\/h2>\n<p>Le teorie principali sono due. La cosa pi\u00f9 ovvia \u00e8 che l\u2019intera elaborata campagna spam \u00e8 stata progettata per sfruttare il summenzionato protocollo TEA. In sostanza, senza dare alcun contributo utile alla comunit\u00e0 open source, gli autori degli attacchi guadagnano token TEA, che sono risorse digitali standard che possono essere scambiate con altre criptovalute negli scambi. Utilizzando una rete di dipendenze e meccanismi di autoreplicazione, gli autori degli attacchi si atteggiano a legittimi sviluppatori open source per gonfiare artificialmente l\u2019importanza e le metriche di utilizzo dei propri pacchetti. Nei file README di alcuni pacchetti, gli autori degli attacchi si vantano persino dei propri guadagni.<\/p>\n<p>Tuttavia, c\u2019\u00e8 una teoria pi\u00f9 agghiacciante. Ad esempio, <a href=\"https:\/\/www.bleepingcomputer.com\/news\/security\/new-indonesianfoods-spammer-floods-npm-with-150-000-packages\/\" target=\"_blank\" rel=\"noopener nofollow\">il ricercatore Garrett Calpouzos suggerisce<\/a> che ci\u00f2 che stiamo vedendo \u00e8 semplicemente un proof of concept. La campagna IndonesianFoods potrebbe testare su strada un nuovo metodo di invio di malware destinato a essere venduto successivamente ad altri autori delle minacce.<\/p>\n<h2>Perch\u00e9 non dovrebbero esserci elementi indesiderati nei progetti<\/h2>\n<p>A prima vista, il pericolo per le organizzazioni di sviluppo software potrebbe non essere evidente: IndonesianFoods ingombra l\u2019ecosistema, ma non sembra comportare una minaccia immediata come ransomware o violazione dei dati.\u00a0 Tuttavia, le dipendenze ridondanti gonfiano il codice e sprecano le risorse di sistema degli sviluppatori. Inoltre, i pacchetti indesiderati pubblicati a nome dell\u2019organizzazione possono avere gravi ripercussioni sulla reputazione all\u2019interno della comunit\u00e0 di sviluppatori.<\/p>\n<p>Non possiamo nemmeno respingere la teoria di Calpouzos. Se i pacchetti di spam inseriti nel software ricevono un aggiornamento che introduce funzionalit\u00e0 veramente dannose, potrebbero diventare una minaccia non solo per l\u2019organizzazione, ma anche per gli utenti, evolvendosi in un vero e proprio attacco alla supply chain.<\/p>\n<h2>Come salvaguardare la vostra organizzazione<\/h2>\n<p>I pacchetti spam non si limitano a penetrare autonomamente in un progetto; installarli richiede una mancanza di giudizio da parte dello sviluppatore. \u00c8 pertanto consigliabile sensibilizzare regolarmente i dipendenti, anche quelli esperti di tecnologia, sulle moderne minacce informatiche. La nostra piattaforma di formazione interattiva, <a href=\"https:\/\/k-asap.com\/it\/?icid=it_kdailyplacehold_acq_ona_smm__onl_b2b_kasperskydaily_wpplaceholder____kasap___\" target=\"_blank\" rel=\"noopener\">KASAP (Kaspersky Automated Security Awareness Platform)<\/a>, pu\u00f2 essere d\u2019aiuto.<\/p>\n<p>\u00c8 inoltre possibile prevenire l\u2019infezione utilizzando <a href=\"https:\/\/www.kaspersky.it\/enterprise-security\/container-security?icid=it_kdailyplacehold_acq_ona_smm__onl_b2b_kasperskydaily_wpplaceholder_______\" target=\"_blank\" rel=\"noopener\">una soluzione specializzata per la protezione degli ambienti containerizzati<\/a>. Esegue la scansione di immagini e dipendenze di terze parti, si integra nel processo di compilazione e monitora i contenitori durante il runtime.<\/p>\n<blockquote><p>Per saperne di pi\u00f9 sugli attacchi alla supply chain, ti invitiamo a consultare il nostro rapporto analitico <a href=\"https:\/\/lp.kaspersky.com\/global\/report-supply-chain-reaction\/\" target=\"_blank\" rel=\"noopener nofollow\">Reazione della supply chain: proteggere l\u2019ecosistema digitale globale in un\u2019era di interdipendenza<\/a>. Si basa sugli approfondimenti di esperti tecnici e rivela la frequenza con la quale le organizzazioni affrontano i rischi della supply chain e delle relazioni di fiducia e come li percepiscono.<\/p><\/blockquote>\n<input type=\"hidden\" class=\"category_for_banner\" value=\"mdr\"><input type=\"hidden\" class=\"placeholder_for_banner\" data-cat_id=\"mdr\" value=\"28088\">\n","protected":false},"excerpt":{"rendered":"<p> A novembre 2025 l&#8217;ecosistema npm \u00e8 stato colpito da una marea di pacchetti indesiderati facenti parte della campagna dannosa IndonesianFoods. Stiamo analizzando le lezioni apprese da questo incidente.<\/p>\n","protected":false},"author":2509,"featured_media":30581,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[2364,2955,2956],"tags":[3723,638,3930,3076,1653],"class_list":{"0":"post-30580","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-business","8":"category-enterprise","9":"category-smb","10":"tag-attacco-alla-supply-chain","11":"tag-minacce","12":"tag-npm","13":"tag-supply-chain","14":"tag-sviluppo"},"hreflang":[{"hreflang":"it","url":"https:\/\/www.kaspersky.it\/blog\/indonesianfoods-npm-spam-campaign\/30580\/"},{"hreflang":"en-in","url":"https:\/\/www.kaspersky.co.in\/blog\/indonesianfoods-npm-spam-campaign\/30300\/"},{"hreflang":"en-ae","url":"https:\/\/me-en.kaspersky.com\/blog\/indonesianfoods-npm-spam-campaign\/25355\/"},{"hreflang":"ar","url":"https:\/\/me.kaspersky.com\/blog\/indonesianfoods-npm-spam-campaign\/13298\/"},{"hreflang":"en-gb","url":"https:\/\/www.kaspersky.co.uk\/blog\/indonesianfoods-npm-spam-campaign\/30150\/"},{"hreflang":"es-mx","url":"https:\/\/latam.kaspersky.com\/blog\/indonesianfoods-npm-spam-campaign\/29090\/"},{"hreflang":"es","url":"https:\/\/www.kaspersky.es\/blog\/indonesianfoods-npm-spam-campaign\/31971\/"},{"hreflang":"ru","url":"https:\/\/www.kaspersky.ru\/blog\/indonesianfoods-npm-spam-campaign\/41535\/"},{"hreflang":"tr","url":"https:\/\/www.kaspersky.com.tr\/blog\/indonesianfoods-npm-spam-campaign\/14428\/"},{"hreflang":"x-default","url":"https:\/\/www.kaspersky.com\/blog\/indonesianfoods-npm-spam-campaign\/55453\/"},{"hreflang":"fr","url":"https:\/\/www.kaspersky.fr\/blog\/indonesianfoods-npm-spam-campaign\/23774\/"},{"hreflang":"pt-br","url":"https:\/\/www.kaspersky.com.br\/blog\/indonesianfoods-npm-spam-campaign\/24861\/"},{"hreflang":"de","url":"https:\/\/www.kaspersky.de\/blog\/indonesianfoods-npm-spam-campaign\/33343\/"},{"hreflang":"en-au","url":"https:\/\/www.kaspersky.com.au\/blog\/indonesianfoods-npm-spam-campaign\/36034\/"},{"hreflang":"en-za","url":"https:\/\/www.kaspersky.co.za\/blog\/indonesianfoods-npm-spam-campaign\/35693\/"}],"acf":[],"banners":"","maintag":{"url":"https:\/\/www.kaspersky.it\/blog\/tag\/supply-chain\/","name":"supply chain"},"_links":{"self":[{"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/posts\/30580","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\/2509"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/comments?post=30580"}],"version-history":[{"count":2,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/posts\/30580\/revisions"}],"predecessor-version":[{"id":30587,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/posts\/30580\/revisions\/30587"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/media\/30581"}],"wp:attachment":[{"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/media?parent=30580"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/categories?post=30580"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/tags?post=30580"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}