Attacco ai sistemi di compilazione online tramite manipolazione dei file di intestazione

Hanno Böck, autore del progetto fuzzing-project.org, ha richiamato l'attenzione alla vulnerabilità delle interfacce di compilazione interattiva, che consentono l'elaborazione di codice esterno in linguaggio C. Specificando un percorso arbitrario nella direttiva «#include», l'errore di compilazione include il contenuto di un file che non è riuscito a compilare.

Ad esempio, inserendo in uno dei servizi online il codice «#include », è stato possibile ottenere l'hash della password dell'utente root dal file /etc/shadow, il che dimostra anche che il servizio web viene eseguito con i privilegi di root e avvia comandi di compilazione come utente root (non è escluso che durante la compilazione fosse usato un container isolato, ma l'esecuzione con privilegi di root nel container rappresenta anch'essa un problema). Il servizio problematico in cui è stato possibile riprodurre il problema non è ancora stato reso pubblico. I tentativi di aprire file nel pseudo FS /proc non hanno avuto successo poiché GCC li considera file vuoti, ma l'apertura di file da /sys funziona.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS 🔥 Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS | ProHoster