
Posen un Honeypot en la teva vida
Crec que a dia d'avui no queden gaires que no sàpiguen què és un Honeypot, i el bé que ens pot venir tenir-lo implementat en les nostres infraestructures. La idea d'aquests cadells com sabem és alertar i detectar atacs o curiosos a la xarxa; doncs en aquest post, a més veurem com integrar-lo amb Centreon.
Feia temps que no jugava amb un Honeypot, recentment, en un post, els nois de El Hacker em van donar alguna idea interessant. Pot ser molt atractiu col·locar-los a la part pública i detectar els atacs que puguin patir les nostres IPs públiques, però potser sigui més interessant desplegar un Honeypot lleuger en cada segment de xarxa que disposem. Amb la idea de detectar curiosos, bots, o qualsevol escaneig que pugui existir a la nostra xarxa interna.
La veritat que existeixen nombrosos Honeypots i potser per això us he nomenat anteriorment el post del Hacker, la gran majoria es despleguen en un trist, i disposen d'interfícies precioses. En el meu cas, anava buscant un lleuger, un que detecti i respongui a certs serveis, als més comuns que pugui existir en una xarxa (telnet, smb, rdp, ldap, http…). El que s'ha dit, si algú intenta connectar a un port d'aquesta màquina ho sabrem, sigui un ransomware que intenta desplaçar-se, un escaneig de ports d'algun coti, o un bot intentant fer una força bruta. El mateix Honeypot podria alertar-me, però com sabeu, si puc centralitzar-lo a Centreon, i saber l'estat del Honeypot, doncs millor que millor… i si algú li aixeca una connexió, doncs alerta que m'arriba.
Total, no necessitem res més que un Ubuntu 18.04 amb 1vCPU i per posar-li 2GB de RAM, ens basarem en aquest simple però efectiu Honeypot, anomenat Chameleon. Porta un dashboard ja precreat en el seu propi Grafana i consisteix en un pack de 19 honeypots personalitzables per als serveis: DNS, HTTP Proxy, HTTP, HTTPS, SSH, POP3, IMAP, STMP, RDP, VNC, SMB, SOCKS5, Redis, TELNET, Postgres, MySQL, MSSQL, Elastic i LDAP.
Abans de desplegar res, que serà marrec gràcies als contenidors de Docker, haurem de canviar el port de connexió SSH al nostre Ubuntu, ja que el 22 d'any el farà servir un honeypot, així que editant el '/etc/ssh/sshd_config’ posem algun alt, com el 2222 (Port 2222) i reniciem el dimoni de sshd 'sudo systemctl restart sshd'.
N'hi haurà prou amb clonar de la repo de Chameleon, i executar un script, i ell s'encarregarà de tot, toca esperar.
git clone https://github.com/qeeqbox/chameleon.git cd chameleon sudo chmod +x ./run.sh sudo ./run.sh deploy sudo ./run.sh test
Tenim almenys dues opcions, (i) deploy, desplegarà 3 contenidors un Grafana, un altre amb Postgres i un altre amb els HoneyPots. L' opció (ii) test, a més desplegarà un syslog i un contenidor que simula connexions; crec menys interessant aquesta última opció i més pesada (per al que tractem en aquest post). Un cop hagi finalitzat la creació dels contenidors estarà tot llest. Accedirem a Grafana pel port 3000 i els credencials predeterminats (changeme457f6460cb287 / changemed23b8cc6a20e0). En el meu cas que ja tinc d'algun Grafana a la xarxa, doncs aquest contenidor no m'interessa, exporto el seu dashboard i l'importo al Grafana de producció, l'accés a la BD de Postgres seria usant el port 9999 i els 100.000 (changeme027a088931d22 / changeme0f40773877963).
I bo, per integrar-lo a Centreon i que aquest sigui el generador de les alertes de connexions, doncs el millor amb consultes a la BD de PostgreSQL del mateix Honeypot, així que amb un Comando tal que:
perl /usr/lib/centreon/plugins/centreon-plugins/centreon_plugins.pl --plugin=database::postgres::plugin --mode=sql --host=DIRECCION_IP_HONEYPOT --port=9999 --database=chameleon --username=changeme027a088931d22 --password=changeme0f40773877963 --sql-statement="$ARG1$" --warning =0 --critical=0
I d'argument se li manen les queries de Postgres, exemple el servei HTTP:
SELECT COUNT(*) FROM sniffer_table WHERE date >= (NOW() - INTERVAL '1 HOUR') AND data->>'dst_port' = '80' AND DATA ->>'action' = 'tcpscan'
I aquest seria el resultat. Si bé és cert que des del mateix grafana que porta Chameleon es podrien configurar alertes, ja em coneixeu com a bon centralitzador, tot passa per Centreon, cal assabentar-se de tot i des d'un únic punt central.
El que s'ha dit, espero que us hagi semblat curiós, però crec que és bo tenir alguna màquina d'aquest tipus a la nostra xarxa, si ens entren, millor que ens ho xiulet que haver d'esperar que ens entenem nosaltres mateixos. És lleugera, no consumeix…
PS: Ull amb posar un Honeypot públic a internet, treureu dades molt flipants de la selva que hi ha a internet, dels atacs, els ports més afectats o els que intenten els bots; però com us vulnerin la màquina, estaran a la vostra xarxa; les proves amb pesicola en una xarxa aïllada. Una abraçada,