12. Auditoria SSH - 2ASIX-2021-22/ProjecteJSD GitHub Wiki
Auditoria SSH
Per realitzar auditories SSH hem escollit SSH-Audit ja què, és una eina senzilla, intuitiva però, a la vegada molt potent per extreure tots els resultats que ens interesen.
Què és SSH-Audit?
SSH-Audit és una eina per a l'auditoria de configuració de client i servidor ssh.
Algunes de les seves característiques són les següents:
- Suport del servidor de protocols SSH1 i SSH2.
- Analitzar la configuració del client SSH.
- Reconèixer dispositius o programari i el seu sistema operatiu, detectar compressió.
- Recopilar algorismes de codi d'intercanvi de claus, clau d'amfitrió, xifratge i autenticació de missatges.
- Informació de seguretat de sortida (problemes relacionats, llista de CVE assignada, etc.).
- Suporta Python 3.6 a 3.9.
- Sense dependències.
- ...
Què fa l'script?
El següent script ens permet realitzar una auditoria SSH a l'equip que nosaltres li indiquem. Podem realitzar-la de diferents formes:
-
Auditoria completa: Ens farà l'auditoria completa,
-
Auditoria FAILS: Només ens mostrarà les coses que s'haurien d'arreglar per tal de tenir un S.O. més segur.
-
Auditoria WARNS: Només ens mostrarà possibles warnings (els quals més endavant podríen ser fails).
-
Auditoria INFO: Ens mostrarà informació de les versions del OpenSSH, Dropbear SSH, entre d'altres...
En aquesta primera imatge podem veure el menú de l'script.
Llibreries importades
Per al correcte funcionament de l'script haurem d'importar les llibreries que veuen a la imatge.
Explicació de les funcions implementades
Auditoria completa
En primer lloc, demanem a l'usuari que introdueixi una IP (ip_host) després, crearem un funció anomenada auditoriaCompleta i amb el subprocess.call cridarem la comanda del sistema python3 ./ssh-audit/ssh-audit.py
per tal de que ens faci l'auditoria, passarem els resultats a un fitxer .txt anomenat complet i l'enviarem al bot de Telegram.
Auditoria FAILS
Demanem a l'usuari que introdueixi una IP (ip_host) després, crearem un funció anomenada auditoriaFails i amb el subprocess.call cridarem la comanda del sistema python3 ./ssh-audit/ssh-audit.py --level fails
per tal de que ens faci l'auditoria, passarem els resultats a un fitxer .txt anomenat fails i l'enviarem al bot de Telegram.
Auditoria WARNS
Demanem a l'usuari que introdueixi una IP (ip_host) després, crearem un funció anomenada auditoriaWarns i amb el subprocess.call cridarem la comanda del sistema python3 ./ssh-audit/ssh-audit.py --level warn
per tal de que ens faci l'auditoria, passarem els resultats a un fitxer .txt anomenat warns i l'enviarem al bot de Telegram.
Auditoria INFO
Demanem a l'usuari que introdueixi una IP (ip_host) després, crearem un funció anomenada auditoriaInfo i amb el subprocess.call cridarem la comanda del sistema python3 ./ssh-audit/ssh-audit.py --level info
per tal de que ens faci l'auditoria, passarem els resultats a un fitxer .txt anomenat info i l'enviarem al bot de Telegram.