Índex
logcheck
Logcheck és un programa que monitora els fitxers de log cada hora i envia els logs sopitosos per email a l’administrador. La llista fitxers monitorats es guarda a /etc/logcheck/logcheck.logfiles i el fitxer de configuració està a /etc/rsyslog.conf.
Logcheck té diversos nivells de detall. Independentment del nivell, segurament s’han de personalitzar per excloure alguns missatges depenent dels serveis que hi ha instal·lats:
- paranoid: molt detallat, es recomana per firewalls o servidors especials.
- server: és el mode per defecte que es recomana per servidors.
- workstation: tal com el nom indica, està pensat per ordinadors.
Les regles que s’apliquen es poden dividir en diversos tipus.
- Cracking: /etc/logcheck/cracking.d/
- Ignorat cracking: /etc/logcheck/cracking.ignore.d/
- Alertes de seguretat: /etc/logcheck/violations.d/
- Ignorat alertes de segretat: /etc/logcheck/violations.ignore.d/
- Finalment, el missatges restants, considerats events del sistema
Un esdeveniment de sistema sempre se senyalitza a no ser que hi hagi una regla a /etc/logcheck/ignore.d.{paranoid,server,workstation}/ que indica que l’esdeveniment s’ha d’ignorar. Per descomptat, es tenen en compte els esdeveniments indicats pel nivell de verbositat segons el mode seleccionat.
Per veure si hi ha algun esdeveniment, pots fer-ho amb la següent comanda:
nadki@debian:~$ sudo -u logcheck logcheck -o
Per fer una prova de concepte, simularé un atac de força bruta contra el servei SSH:
Els inicis de sessió s’emmagatzemen a /var/log/auth.log:
Amb logcheck, pots veure fàcilment tots els logs centralitzats:
En temps real
top és una eina que et permet llistar tots els processos que s’estan executant. Quan un sistema està sobrecarregat o s’ha quedat sense memòria, top et permet veure ràpidament el procés que és culpable.
També et pot servir per identificar problemes de seguretat. Per exemple, un procés no conegut que s’està executant com a www-data. Podria ser que fos un procés iniciat per un atacant que ha aprofitat una vulnerabilitat a la web.
Hi ha diverses maneres de filtrar els processos:
- P: %CPU utilitzada, és el que va per defecte
- M: %MEM
- T: temps de CPU
- N: identificador de procès
- k: mata el procés indicat
- r: canvia la prioritat d’un procés
També hi ha eines gràfiques com xfce4-taskmanager per XFCE, gnome-system-monitor per GNOME o ksysguard per KDE.
Detectar canvis
Quan s’instal·la un sistema, la majoria dels fitxers no s’acostumen a modificar. Per tant, és una bona idea tenir-los monitorats per si un atacant canviés el contingut del fitxer o el substituís per un de maliciós.
dpkg
dpkg –verify (o dpkg -V) t’avisa si un fitxer ha estat modificat. Això ho fa comprovant els hashes que té emmagatzemats a /var/lib/dpkg/info/NOM_PAQUET.md5sums.
Per exemple, un atacant utilitza el binari whois per amagar codi maliciós. El md5 de whois és 579d3aed6013bc5e4bace410caed7c94, que és el mateix que té emmagatzemat dpkg:
Ara suposa que un atacant modifica el binari, així vol dir que el hash serà completament diferent. 98cd0605a3d656d82175c905e5c63c57 en aquest cas.
Per tant, quan executes dpkg -V aquest veurà que el hash no coincideix i mostrarà un avís indicant que el binarai ha estat modificat.
nadki@debian:~$ dpkg -V whois
??5?????? /usr/bin/whois
Està clar que un atacant que sap el que fa, pot modificar perfectament els fitxers md5sum per canviar els hashes. Per protegir-te contra aquest tipus d’atac, pots utilitzar el sistema de verificació de la signatura digital d’APT
AIDE
L’eina Advanced Intrusion Detection Environment (AIDE) comprova la integritat dels fiters i detecta canvis comparant-los amb una imatge feta del sistema. La imatge es guarda a la base de dades /var/lib/aide/aide.db.
AIDE no ve per defecte al Linux, pots instal·lar-la per APT. Una vegada instal·lada l’has d’iniciar la primera vegada amb aideinit, llavors s’executarà cada dia a través de l’script /etc/cron.daily/aide i guardarà tots els canvis detectats a /var/log/aide/NOM_FITXER.log.
De la mateixa manera que dpkg, la base de dades s’emmagatzema en local. Això vol dir que un atacant la podria arribar a modificar. Per evitar-ho, pots configurar AIDE perquè guardi les referències a un USB o disc dur de només lectura.
Existeixen altres programes similars:
- Tripwire: la diferència és que té un mecanisme de signatures que evita que un atacant pugui modificar la versió de les referències de la base de dades.
- Samhain: la diferència és que permet detectar alguns rootkits.
Altres
Hi ha moltíssimes eines diferents que et poden ajudar a monitorar el sistema, a part de les que has vist abans, que també són molt interessants:
- checksecurity: conjunt d’scripts que realitzen comprovacions bàsiques al sistema, com buscar contrasenyes buides, fitxers amb setuid…
- ckrootkit: permet detectar si hi ha rootkits instal·lats al sistema.
- rkhunter: permet detectar si hi ha rootkits instal·lats al sistema.
Es recomana no quedar-se amb una sola eina, sinó utilitzar-ne varies depenent de les seves potencialitats.