Introduzione¶
Nell'ultimo articolo abbiamo configurato un nuovo sistema rocky linux 8 con lo stig DISA applicato utilizzando OpenSCAP. Ora ci occuperemo di come testare il sistema usando gli stessi strumenti e di quali tipi di rapporti possiamo generare usando gli strumenti oscap e la sua controparte UI SCAP Workbench.
Rocky Linux 8 (e 9!) include una suite di contenuti SCAP per verificare e correggere la conformità a vari standard. Se avete costruito un sistema STIG nella prima parte, lo avete già visto in azione. Il programma di installazione di anaconda ha sfruttato questo contenuto per modificare la configurazione di rocky 8 per implementare vari controlli, installare/rimuovere pacchetti e cambiare il modo in cui funzionano i punti di mount a livello di sistema operativo.
Nel corso del tempo, questi aspetti potrebbero cambiare e sarà opportuno tenerli sotto controllo. Spesso utilizzo questi rapporti anche per dimostrare che un determinato controllo è stato implementato correttamente. In ogni caso, Rocky ne è dotato. Inizieremo con alcune nozioni di base.
Elenco dei Profili di Sicurezza¶
Per elencare i profili di sicurezza disponibili, è necessario utilizzare il comando oscap info
fornito dal pacchetto openscap-scanner
. Questo dovrebbe essere già installato nel vostro sistema, se avete seguito la procedura dalla prima parte. Per ottenere i profili di sicurezza disponibili:
oscap info /usr/share/xml/scap/ssg/content/ssg-rl8-ds.xml
Nota
Il contenuto di Rocky linux 8 utilizzerà il tag "rl8" nel nome del file. In Rocky 9, sarà "rl9".
Se tutto va bene, si dovrebbe ricevere una schermata simile a questa:
DISA è solo uno dei tanti profili di sicurezza supportati dalle definizioni SCAP di Rocky Linux. Abbiamo anche profili per:
Verifica della conformità DISA STIG¶
Qui è possibile scegliere tra due tipi:
- stig - Senza interfaccia grafica
- stig_gui - Con una GUI
Eseguire una scansione e creare un rapporto HTML per il DISA STIG:
sudo oscap xccdf eval --report unit-test-disa-scan.html --profile stig /usr/share/xml/scap/ssg/content/ssg-rl8-ds.xml
Il risultato sarà un rapporto come questo:
E produrrà un rapporto HTML:
Generazione di script Bash di Riparazione¶
Successivamente, genereremo una scansione e useremo i risultati della scansione per generare uno script bash per rimediare al sistema in base al profilo DISA stig. Non consiglio di utilizzare la riparazione automatica, è sempre necessario rivedere le modifiche prima di eseguirle.
1) Generare una scansione del sistema:
```bash
sudo oscap xccdf eval --results disa-stig-scan.xml --profile stig /usr/share/xml/scap/ssg/content/ssg-rl8-ds.xml
```
2) Utilizzare l'output della scansione per generare lo script:
```bash
sudo oscap xccdf generate fix --output draft-disa-remediate.sh --profile stig disa-stig-scan.xml
```
Lo script risultante includerà tutte le modifiche da apportare al sistema.
Attenzione
Esaminate questo documento prima di eseguirlo! Apporterà modifiche significative al sistema.
Generazione dei Playbook Ansible di Riparazione¶
È anche possibile generare azioni di rimedio in formato playbook ansible. Ripetiamo la sezione precedente, ma questa volta con l'output di Ansible:
1) Generare una scansione del sistema:
```bash
sudo oscap xccdf eval --results disa-stig-scan.xml --profile stig /usr/share/xml/scap/ssg/content/ssg-rl8-ds.xml
```
2) Utilizzare l'output della scansione per generare lo script:
```bash
sudo oscap xccdf generate fix --fix-type ansible --output draft-disa-remediate.yml --profile stig disa-stig-scan.xml
```
Attenzione
Anche in questo caso, rivedetelo prima di eseguirlo! Percepite uno schema? Questa fase di verifica di tutte le procedure è molto importante!
Informazioni sull'Autore¶
Scott Shinn è il CTO di Atomicorp e fa parte del team Rocky Linux Security. Dal 1995 si occupa di sistemi informativi federali presso casa Bianca, del Dipartimento della Difesa e dell'Intelligence Community dal 1995. Parte di questo è stata la creazione degli STIG e l'obbligo di usarli e mi dispiace molto per questo.
Author: Scott Shinn
Contributors: Steven Spencer, Franco Colussi