I ricercatori di sicurezza informatica hanno scoperto un nuovo pacchetto malevolo nel repository Python Package Index (PyPI) che si spaccia per una libreria della piattaforma blockchain Solana, ma che in realtà è progettato per rubare le informazioni riservate delle vittime.
Vale la pena notare che negli ultimi tempi, non è inusuale che pacchetti malevoli creati in Python vengano usati per scopi malevoli.
Pacchetto malevolo creato in Python: ecco cosa sanno i ricercatori
“Il progetto legittimo dell’API Python di Solana è noto come ‘solana-py’ su GitHub, ma semplicemente ‘solana‘ nel registro software Python, PyPI“, ha dichiarato il ricercatore di Sonatype Ax Sharma in un rapporto pubblicato la scorsa settimana, riguardo questo pacchetto malevolo; il ricercatore ha poi aggiunto che: “Questa lieve discrepanza nei nomi è stata sfruttata da un attore malevolo che ha pubblicato un progetto ‘solana-py’ su PyPI.”
Il pacchetto malevolo “solana-py” ha attirato un totale di 1.122 download da quando è stato pubblicato il 4 agosto 2024. Non è più disponibile per il download su PyPI.
Il pacchetto malevolo ha codice python aggiuntivo rispetto alla controparte originale
L’aspetto più sorprendente della libreria di questo pacchetto malevolo programmato in linguaggio Python è che riportava i numeri di versione 0.34.3, 0.34.4 e 0.34.5; l’ultima versione del pacchetto legittimo “solana” è 0.34.3. Questo indica chiaramente un tentativo da parte dell’attore malevolo di ingannare gli utenti che cercavano “solana”, inducendoli inavvertitamente a scaricare “solana-py”.
Inoltre, il pacchetto malevolo copia il codice reale dal suo omologo, ma inietta un codice aggiuntivo nello script “init.py” che è responsabile della raccolta delle chiavi del portafoglio blockchain di Solana dal sistema.
Queste informazioni vengono poi esfiltrate a un dominio di Hugging Face Spaces gestito dal criminale informatico (“treeprime-gen.hf[.]space”), evidenziando ancora una volta come i vari criminali informatici stiano abusando di servizi legittimi per scopi dannosi.
Quali sono i rischi di questo pacchetto malevolo creato in linguaggio Python
La campagna di attacco rappresenta un rischio per la catena di approvvigionamento, poiché l’indagine di Sonatype ha scoperto che librerie legittime come “solders” fanno riferimento a “solana-py” nella loro documentazione su PyPI, portando a uno scenario in cui gli sviluppatori potrebbero aver scaricato per errore “solana-py” da PyPI, ampliando così la superficie d’attacco.
“In altre parole, se uno sviluppatore che utilizza il pacchetto PyPI legittimo ‘solders’ nella propria applicazione viene fuorviato (dalla documentazione di solders) a cadere nel progetto ‘solana-py’ con errore tipografico, introdurrebbe inavvertitamente un programma di furto di criptovalute nella propria applicazione“, ha spiegato Sharma.
Il ricercatore di sicurezza informatica Sharma ha successivamente dichiarato che: “Questo non solo ruberebbe i loro segreti, ma anche quelli di qualsiasi utente che esegue l’applicazione dello sviluppatore.”
La rivelazione arriva mentre Phylum ha dichiarato di aver identificato centinaia di migliaia di pacchetti spam su npm contenenti marcatori di abuso del protocollo Tea, una campagna che è emersa per la prima volta nell’aprile 2024.
“Il progetto Tea protocol sta prendendo provvedimenti per risolvere questo problema“, ha dichiarato l’azienda di sicurezza della catena di approvvigionamento. “Sarebbe ingiusto per i partecipanti legittimi al protocollo Tea vedere ridotta la loro remunerazione a causa del fatto che altri stanno truffando il sistema. Inoltre, npm ha iniziato a rimuovere alcuni di questi spammer, ma il tasso di rimozione non corrisponde al tasso di nuove pubblicazioni.“
La doppia faccia dell’Open Source
Se è vero da un lato che l’Open Source permette di risolvere i problemi praticamente in tempo reale (previa conoscenza del linguaggio di programmazione interessato), dall’altro è vero che chiunque (qualora esperto in un determinato linguaggio) avendo accesso al codice può creare ogni sorta di danni informatici immaginabili.
Molto spesso (a malincuore), ci si dimentica di questa doppia faccia dell’Open Source e questo caso in cui un pacchetto malevolo creato in Python è coinvolto, lo ricorda.