La maggior parte degli utenti Linux non ha idea di cosa sia curl. Tuttavia, i programmatori e gli amministratori di sistema conoscono bene questa utility.
Questo comando di shell e la libreria associata, libcurl, sono usati per trasferire dati attraverso i protocolli di rete e sono utilizzati in desktop, server, istanze cloud, automobili, TV, router e praticamente in tutti i dispositivi Internet of Things (IoT). Gli sviluppatori stimano che sia utilizzato in oltre venti miliardi di istanze. Tuttavia, recentemente è stata scoperta una vulnerabilità di sicurezza potenzialmente grave, CVE-2023-38545.
Grave vulnerabilità mette a rischio miliardi di dispositivi
Lo sviluppatore principale di Curl, Daniel Stenberg, ha scritto in un post sul blog che questo è “il peggior problema di sicurezza scoperto in Curl da molto tempo“. E gli esperti di sicurezza confermano. Stenberg avverte che gli utenti Tor, che si connettono tramite SOCKS5, sono più esposti a un rischio di sicurezza se visitano siti HTTPS compromessi.
CVE-2023-38545 è una vulnerabilità di overflow della memoria. Può essere sfruttata per l’esecuzione di codice remoto. Sono già disponibili dei proof-of-concept che mostrano come sfruttare la vulnerabilità per prendere il controllo di un sistema. La falla è stata introdotta nella versione 7.69.0 di libcurl, rilasciata a febbraio 2020, e riguarda tutte le versioni successive fino alla 8.3.0 inclusa.
Steinberg si dice imbarazzato per il suo errore e si scusa con gli utenti e con la comunità di Linux per aver messo a rischio la sicurezza di oltre venti miliardi di dispositivi che usano il suo codice. Avrebbe voluto accorgersi prima della falla, che è rimasta nel codice per oltre tre anni.
Stenberg ha gestito in modo intelligente la comunicazione della falla di sicurezza
Alcuni esperti di sicurezza, come Bill Demirkapi del team Vulnerability and Mitigations del Microsoft Security Response Center e la società di fornitura di software JFrog, hanno comunque minimizzato la gravità della falla scoperta in curl. Ritengono, infatti, che la stragrande maggioranza degli utenti di curl non sarà colpita da questa vulnerabilità. L’insieme delle condizioni che rendono una macchina suscettibile di essere attaccata è più limitato di quanto si pensasse in precedenza.
Tuttavia, dato l’ampio utilizzo di Curl in vari sistemi operativi, applicazioni e dispositivi IoT, l’annuncio tempestivo del problema da parte di Stenberg è stata una mossa strategica intelligente. Ha dato alle aziende tutto il tempo necessario per verificare i propri sistemi, identificare tutte le istanze di curl e libcurl in uso e sviluppare un piano completo di patch a livello aziendale.
Inoltre, le informazioni sulla falla sono state condivise con gli sviluppatori di varie distribuzioni Linux, Unix e Unix-like. Questo approccio collaborativo ha assicurato che le patch e i pacchetti aggiornati fossero pronti prima del rilascio ufficiale di curl v8.4.0. Per mitigare i rischi associati a queste vulnerabilità, perciò, basta aggiornare alla versione 8.4.0 di curl/libcurl o applicare le patch alle versioni precedenti.