Red Hot Cyber
Sicurezza Informatica, Notizie su Cybercrime e Analisi Vulnerabilità
PHP PEAR: 2 bug di 15 anni possono portare ad attacchi in supply-chain

PHP PEAR: 2 bug di 15 anni possono portare ad attacchi in supply-chain

5 Aprile 2022 15:46

PEAR (abbreviazione di PHP Extension and Application Repository) ha una vulnerabilità di 15 anni che permetteva attacchi alla catena di approvvigionamento, incluso l’accesso per pubblicare pacchetti fraudolenti tramite l’esecuzione di codice arbitrario.

Nello specifico, PEAR è un framework di distribuzione per componenti PHP riutilizzabili. Thomas Chauchefoin di SonarSource ha parlato di un annoso problema che lo affligge.

Secondo lui, il bug è apparso nel codice nel lontano 2007 ed era associato all’uso della funzione mt_rand() crittograficamente non sicura usata per la reimpostazione della password, che ha aiutato l’attaccante a:

“rilevare una password valida e ripristinare il token in meno di 50 tentativi”.

L’esperto ha inoltre riportato che:

“Un utente malintenzionato che utilizza il bug potrebbe accedere a qualsiasi account di sviluppo e pubblicare una versione dannosa, mentre il secondo bug consente l’accesso permanente al server PEAR”

Armato di un exploit, un utente malintenzionato potrebbe quindi attaccare gli account dello sviluppatore o dell’amministratore per prenderne il controllo e quindi pubblicare codice contenente del malware, il che porterebbe a una compromissione diffusa della catena di approvvigionamento.

La seconda vulnerabilità menzionata dall’esperto dovrebbe essere utilizzata insieme alla prima per ottenere l’accesso iniziale. Il bug si basa su una versione precedente di Archive_Tar che è suscettibile a un problema di path traversal (CVE-2020-36193) che può portare all’esecuzione di codice arbitrario remoto.

 “Queste vulnerabilità esistono da più di un decennio ed erano facili da trovare e da sfruttare, sollevando dubbi sulla mancanza di contributi sulla sicurezza da parte delle aziende che si affidano a queste soluzioni”

Ha riassunto Chauchefouin.

Lo sfruttamento del rese password

le istanze pearweb non consentono l’autoregistrazione: gli account sono riservati agli sviluppatori disposti a proporre pacchetti da inserire nel repository ufficiale di PEAR. La richiesta di account può essere eseguita con il modulo Richiedi account, in cui il richiedente deve fornire informazioni sulla propria identità e sul progetto che desidera distribuire. Le richieste vengono quindi convalidate manualmente dagli amministratori PEAR. 

Si tratta di una scelta interessante per ridurre gli abusi e ridurre al minimo la superficie di attacco del servizio: escluso il bug tracker, le uniche funzionalità “interessanti” disponibili senza account sono questo modulo di richiesta account, la funzionalità di autenticazione e reimpostazione della password. 

Dopo aver scansionato questo progetto su SonarCloud, il nostro motore ha identificato un Security Hotspot in un metodo chiamato resetPassword() : 

SonarCloud segnala l'uso di un generatore di numeri non sicuro in resetPassword()

Questo codice genera un valore casuale, un hash MD5 e quindi lo inserisce nel database insieme ad altri dettagli necessari per la reimpostazione della password. L’uso di MD5 non è un problema, fintanto che il valore hash è abbastanza forte e unico.

Il problema è spiegato in dettaglio nella descrizione della regola SonarCloud: mt_rand() non dovrebbe essere usato per motivi di sicurezza. 

Esaminiamo i valori concatenati insieme e quindi sottoposti a hash con md5() :

  • mt_rand(4,13) : è un numero intero compreso tra 4 e 13 (limiti inclusi);
  • $user : il nome utente dell’account da resettare, conosciuto e controllato dall’attaccante;
  • time() : il timestamp corrente;
  • $pass1 : la nuova password da utilizzare, conosciuta e controllata dall’attaccante.

Dal punto di vista dell’attaccante, il valore finale si basa solo su due incognite, che sono l’output di mt_rand() e time() : il primo non può produrre molti valori (10), e il secondo può essere facilmente approssimato da l’attaccante. 

Inoltre, il server HTTP di pear.php.net aggiunge un’intestazione Date alle sue risposte, restringendola a pochi valori (< 5). 

Potremmo concludere che gli aggressori possono scoprire un token di reimpostazione della password valido in meno di 50 tentativi ed è stato sviluppato uno script per sfruttare questa debolezza e confermarne l’impatto: questo è il primo passaggio del video introduttivo.

Come aneddoto, questo bug è stato introdotto nel marzo 2007 durante la prima implementazione di questa funzionalità . 

Utilizzando questo exploit contro gli account degli sviluppatori o amministratori esistenti, gli aggressori potrebbero pubblicare nuove versioni di pacchetti esistenti dopo avervi incluso del codice dannoso. Verrebbe quindi scaricato ed eseguito automaticamente ogni volta che qualcuno recupera questi pacchetti da PEAR. 

Ti è piaciuto questo articolo? Ne stiamo discutendo nella nostra Community su LinkedIn, Facebook e Instagram. Seguici anche su Google News, per ricevere aggiornamenti quotidiani sulla sicurezza informatica o Scrivici se desideri segnalarci notizie, approfondimenti o contributi da pubblicare.

Agostino Pellegrino 300x300
E’ un libero professionista, insegnante e perito di informatica Forense, Cyber Security ed Ethical Hacking e Network Management. Ha collaborato con importanti istituti di formazione a livello internazionale e ha esercitato teaching e tutorship in tecniche avanzate di Offensive Security per la NATO ottenendo importanti riconoscimenti dal Governo degli Stati Uniti. Il suo motto è “Studio. Sempre”.
Aree di competenza: Cybersecurity architecture, Threat intelligence, Digital forensics, Offensive security, Incident response & SOAR, Malware analysis, Compliance & frameworks

Articoli in evidenza

Immagine del sitoInnovazione
Robot in cerca di carne: Quando l’AI affitta periferiche. Il tuo corpo!
Silvia Felici - 06/02/2026

L’evoluzione dell’Intelligenza Artificiale ha superato una nuova, inquietante frontiera. Se fino a ieri parlavamo di algoritmi confinati dietro uno schermo, oggi ci troviamo di fronte al concetto di “Meatspace Layer”: un’infrastruttura dove le macchine non…

Immagine del sitoCybercrime
DKnife: il framework di spionaggio Cinese che manipola le reti
Pietro Melillo - 06/02/2026

Negli ultimi anni, la sicurezza delle reti ha affrontato minacce sempre più sofisticate, capaci di aggirare le difese tradizionali e di penetrare negli strati più profondi delle infrastrutture. Un’analisi recente ha portato alla luce uno…

Immagine del sitoVulnerabilità
Così tante vulnerabilità in n8n tutti in questo momento. Cosa sta succedendo?
Agostino Pellegrino - 06/02/2026

Negli ultimi tempi, la piattaforma di automazione n8n sta affrontando una serie crescente di bug di sicurezza. n8n è una piattaforma di automazione che trasforma task complessi in operazioni semplici e veloci. Con pochi click…

Immagine del sitoInnovazione
L’IA va in orbita: Qwen 3, Starcloud e l’ascesa del calcolo spaziale
Sergio Corpettini - 06/02/2026

Articolo scritto con la collaborazione di Giovanni Pollola. Per anni, “IA a bordo dei satelliti” serviva soprattutto a “ripulire” i dati: meno rumore nelle immagini e nei dati acquisiti attraverso i vari payload multisensoriali, meno…

Immagine del sitoCyber Italia
Truffe WhatsApp: “Prestami dei soldi”. Il messaggio che può svuotarti il conto
Silvia Felici - 06/02/2026

Negli ultimi giorni è stato segnalato un preoccupante aumento di truffe diffuse tramite WhatsApp dal CERT-AGID. I messaggi arrivano apparentemente da contatti conosciuti e richiedono urgentemente denaro, spesso per emergenze come spese mediche improvvise. La…