I manutentori del sistema operativo FreeBSD hanno rilasciato aggiornamenti per rimediare a una vulnerabilità di sicurezza che colpisce il modulo ping che potrebbe essere potenzialmente sfruttata per mandare in crash il programma o attivare l’esecuzione di codice da remoto.
Il problema, assegnato all’identificatore CVE-2022-23093, interessa tutte le versioni supportate di FreeBSD e riguarda una vulnerabilità di stack overflow del buffer basata su stack nel servizio di ping.
“ping legge i pacchetti IP grezzi dalla rete per elaborare le risposte nella funzione pr_pack()“, secondo un avviso pubblicato la scorsa settimana.
Prima capiamo cos’è il ping
Parlare di questa cosa, senza sapere cos’è, aiuta poco, Wikipedia ci viene in aiuto con una definizione:
Ping (Packet internet groper) è un’utility di amministrazione per reti di computer usata per misurare il tempo, espresso in millisecondi, impiegato da uno o più pacchetti ICMP a raggiungere un dispositivo di rete (attraverso una qualsiasi rete informatica basata su IP) e a ritornare indietro all’origine.
Adesso, se sei un videogiocatore di videogiochi online in particolar modo (vedi FPS), probabilmente avrai già familiarità con questo concetto, anche se non sai magari spiegarlo a parole tue.
Per farla breve possiamo dire che “più il ping è basso, più la linea è buona“, detta papale papale con una semplificazione enorme.
Immagina di tirare una palla addosso ad un muro e che questa ritorni da te: più veloce torna quella palla da te, meno tempo ci mette, ecco il ping spiegato con una metafora.
Come funziona questa vulnerabilità?
“Il pr_pack() copia le intestazioni IP e ICMP ricevute nei buffer dello stack per un’ulteriore elaborazione. In tal modo, non tiene conto della possibile presenza di intestazioni di opzioni IP che seguono l’intestazione IP nella risposta o nel pacchetto quotato.”
Di conseguenza, il buffer di destinazione potrebbe essere sovraccaricato fino a 40 byte quando sono presenti le intestazioni dell’opzione IP.
Gli autori del progetto FreeBSD hanno notato che il processo di ping viene eseguito in una sandbox in modalità “capability” (capacità) ed è quindi limitato nel modo in cui può interagire con il resto del sistema operativo.
OPNsense, un software di routing e firewall open source basato su FreeBSD, ha anche rilasciato una patch (versione 22.7.9) per tappare la falla di sicurezza, insieme ad altri problemi.
I risultati arrivano quando i ricercatori di Qualys hanno documentato un’altra nuova vulnerabilità nel programma snap-confine nel sistema operativo Linux, basandosi su un precedente difetto di escalation dei privilegi (CVE-2021-44731) venuto alla luce nel febbraio 2022.
Gli snap sono pacchetti di applicazioni autonomi che possono essere distribuiti dagli sviluppatori upstream agli utenti (se hai confidenza con i sistemi Linux, sai benissimo che con il canale Snap puoi installare cose che solitamente non installi con “sudo apt install”, su FreeBSD essendo un sistema Unix fa qualcosa di analogo).
Il nuovo difetto (CVE-2022-3328), introdotto come parte di una patch per CVE-2021-44731, si può “incontrare” con altri due difetti in multipathd chiamati Leeloo Multipath: un bypass dell’autorizzazione e un attacco symlink tracciato come CVE-2022- 41974 e CVE-2022-41973, che serve per ottenere i privilegi di root abusivamente da remoto.
Poiché il multipathd viene eseguito per impostazione predefinita come root, uno sfruttamento di questi difetti di programmazione potrebbe consentire a un malintenzionato senza privilegi di ottenere le autorizzazioni più elevate sull’host vulnerabile ed eseguire codice arbitrario.
Concludendo
FreeBSD è molto probabile che non sai nemmeno di cosa si tratti, quindi questa problematica riguarda una nicchia ben inferiore a quella degli utilizzatori di una distribuzione qualsiasi di Linux per fare un esempio.
L’unico modo resta aspettare aggiornamenti da parte della casa madre che risolverà il problema: tutto qui.
————-
Contenuto pubblicato su tech.icrewplay.com Read More