Passant les blocklist de Crowdsec al nostre firewall Fortigate

—Us heu dit alguna vegada que Crowdsec és una maravilla? 😛 per a qualsevol tipus d' empresa… que ens protegirà d'atacs externs o interns! que no és moc de gall dindi! Els equips que tinguin Crowdsec compartiran una llista negra d'IPs, així que quan un equip és atacat, la resta es protegirà. Però és que a més, aquesta blacklist podrem enviar-la al nostre firewall perimetral, perquè ens protegeixi ell!

Una passada…però per fer un remembering rapidíssim als que no hagin llegit encara algun post de Crowdsec… Diguem que és un agent que s'instal·la en equips Windows o Linux, que entre altres coses llegirà logs dels serveis que publiquin aquestes màquines i sabrà si està sent atacada, davant d' això realitzarà accions, per exemple afegir una regla al FW de l'OS bloquejant aquesta adreça IP atacant. La resta d'equips amb Crowdsec, en compartir la blacklist es protegiran també bloquejant aquesta IP, preveient qualsevol atac, sigui una IP local o pública.

Així que en aquest post veurem com podem fer que el nostre Firewall perimetral, en aquest cas un Fortigate pugui llegir aquesta blacklist i protegir des de més amunt tota l'organització.

El primer, en una màquina amb Crowdsec, on puguem arribar amb el firewall perimetral, hem d'instal·lar el 'Blocklist Mirror', un servei que publicarà via web la llista de bloquejos.

sudo apt install golang -y git clone https://github.com/crowdsecurity/cs-blocklist-mirror.git cd cs-blocklist-mirror/ make release cd crowdsec-blocklist-mirror-v*/ sudo ./install.sh

Si tenim el repositori de CrowdSec podríem instal·lar-lo/actualitzar-lo mitjançant apt o yum.

El primer de tot serà configurar Blocklist Mirror, ho fem editant '/etc/crowdsec/bouncers/crowdsec-blocklist-mirror.yaml'. Hem d'indicar la URL del servidor 'Local API', normalment aquests rols van a la mateixa màquina. I indiquem un port per on publicarem la llista, a més d'indicar l'adreça IP del firewall a les IPs de confiança perquè pugui connectar-se i llegir la llista:

...
    lapi_url: http://127.0.0.1:8080/
...
    listen_uri: 0.0.0.0:41412
...
      trusted_ips: # IP rangs, or IPs which don't require auth to access this blocklist
        - 127.0.0.1
        - ::1
        - 192.168.2.1
...

Habilitem i reiniciem el servei perquè carregui els nous canvis:

sudo systemctl enable crowdsec-blocklist-mirror sudo systemctl restart crowdsec-blocklist-mirror

I ja podrem provar d'obrir la URL: http://DIRECCION_IP:41412/security/blocklist si és que també ens fiquem al whitelist! Verificam que s'accedeix bé, que bategem manualment una adreça IP i s' actualitza la llista, o si detecta qualsevol atac en altres equips de Crowdsec.

En el nostre firewall anem a “Security Fabric” > “Extenal Connectos” > “Create New”,

Seleccionem 'IP Address',

Li indiquem un nom i indiquem la URL de la blocklist, i especifiquem el temps per refrescar la llista, “OK”,

Podem confirmar que és vàlid, l' última data d' actualització…

O si punxem a 'View Entries’ confirmar que és correcte,

I res, ara hauríem de crear regles en el nostre firewall, on com a Origen indiquem que és la llista d'IPs banejades que acabem de crear.

Recomanable en cada interfície fer regles d'entrada i sortida a les destinacions dels blocklist, denegant l' accés. Així en cas que sigui un atac públic no podrà accedir a recursos interns, o si és un atac intern, quedarà aïllat.

Ull, en fer això, recordar que tenim la possibilitat de quedar-nos fora de joc, això és, si per la raó que sigui el nostre equip fa un atac, per exemple s'intenta validar incorrectament per SSH o RDP o CIFS o HTTP(s) o el que sigui a algun equip de manera incorrecta, al 5t intent (per defecte) ens ficarà en aquesta llista negra. Així que al millor és interessant posar alguna IP en llistes blanques de Crowdsec, sent el fitxer '/etc/crowdsec/parsers/s02-enrich/whitelists.yaml’ on ho farem:

name: crowdsecurity/whitelists description: "Whitelist events from private ipv4 addresses"
whitelist:
  reason: "private ipv4/ipv6 ip/ranges"
  ip:
    - "127.0.0.1"
    - "::1"
    - "192.168.33.24" # La nostra màquina de gestió cidr:
    #- "192.168.0.0/16"
    #- "10.0.0.0/8"
    #- "172.16.0.0/12"
  # expression:
  #   - "'foo.com' in evt.Meta.source_ip.reverse"

Espero que us hagi resultat interessant, seguim un altre dia amb més màgia de Crowdsec! Veureu que forma més elegant de protestar les nostres màquines! Us agraeixo els Likes, M'agraden, Retuits i aquestes coses rares a les xarxes socials,

Abraçades!

Posts recomanats

Autor

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, no dubtis a contactar amb mi, us intentareu ajudar sempre que pugui, compartir és viure ;) . Gaudir dels documents!!!

Monitoritzant Docker des de Centreon

12 de January de 2023