Treceți la conținutul principal

Configurarea și regulile Suricata

 

Suricata este un sistem de detectare și prevenire a intruziunilor (IDS/IPS) open-source, capabil să analizeze pachetele de rețea și să monitorizeze traficul pentru semne de activitate malițioasă. Este foarte configurabil și poate fi folosit în medii complexe.

1. Configurarea Suricata

A. Instalarea Suricata

Pe majoritatea distribuțiilor Linux, Suricata poate fi instalat prin managerul de pachete sau din surse. Exemple:

  • Ubuntu/Debian:

    bash

    sudo apt update sudo apt install suricata
  • CentOS/RHEL (via EPEL):

    bash

    sudo dnf install epel-release sudo dnf install suricata
  • Din sursă (opțional):

    1. Descărcați sursa oficială:
      bash

      wget https://www.openinfosecfoundation.org/download/suricata-<versiune>.tar.gz
    2. Compilați și instalați:
      bash

      tar -xvf suricata-<versiune>.tar.gz cd suricata-<versiune> ./configure make sudo make install

B. Configurarea inițială

  1. Fișierul principal de configurare:
    Localizat, de regulă, în /etc/suricata/suricata.yaml.

  2. Setați interfața de rețea:
    În fișierul suricata.yaml, specificați interfața de rețea care va fi monitorizată:

    yaml

    af-packet: - interface: eth0
  3. Configurați sursele de reguli:
    Suricata folosește reguli pentru detectarea traficului malițios. Cele mai comune surse de reguli sunt:

    • ET Open Rules (Emerging Threats):
      Gratuit, poate fi descărcat automat folosind suricata-update.
    • Reguli personalizate: Le puteți crea și adăuga manual.

    Pentru a descărca regulile oficiale:

    bash

    sudo suricata-update sudo suricata-update list-sources
  4. Testați configurația:
    Verificați fișierul yaml pentru erori:

    bash

    sudo suricata -T -c /etc/suricata/suricata.yaml -v
  5. Pornirea serviciului:

    • În mod manual:
      bash

      sudo suricata -c /etc/suricata/suricata.yaml -i eth0
    • Ca serviciu:
      bash

      sudo systemctl start suricata sudo systemctl enable suricata

2. Regulile Suricata

A. Structura unei reguli Suricata

O regulă este compusă dintr-un header și un payload.

Format general:

plaintext

alert <protocol> <source_ip> <source_port> -> <destination_ip> <destination_port> (options)

B. Exemple de reguli:

  1. Detectarea unui port scan:

    plaintext

    alert tcp any any -> any 22 (msg:"SSH brute-force attempt"; threshold: type both, track by_src, count 5, seconds 60; sid:1000001;)
    • Explicație:
      • Detectează 5 conexiuni către portul 22 (SSH) în 60 de secunde.
      • msg: Mesajul afișat în alertă.
      • sid: ID-ul unic al regulii.
  2. Detectarea traficului către un IP specific:

    plaintext

    alert ip any any -> 192.168.1.100 any (msg:"Suspicious traffic to server"; sid:1000002;)
  3. Detectarea unui fișier descărcat:

    plaintext

    alert http any any -> any any (file.magic:"PDF document"; msg:"PDF file downloaded"; sid:1000003;)

C. Adăugarea regulilor personalizate:

  1. Creați un fișier nou în directorul regulilor, de exemplu:

    bash

    sudo nano /etc/suricata/rules/local.rules
  2. Adăugați regula:

    plaintext

    alert tcp any any -> any 80 (msg:"HTTP traffic detected"; sid:1000004;)
  3. Actualizați configurația pentru a include regulile locale: Editați suricata.yaml:

    yaml

    rule-files: - local.rules
  4. Reporniți Suricata pentru a încărca regulile:

    bash

    sudo systemctl restart suricata

3. Tipuri de acțiuni în reguli

  • alert: Generează o alertă pentru evenimentele care corespund regulii.
  • drop: Blochează pachetul și înregistrează evenimentul (doar în modul IPS).
  • reject: Blochează pachetul și trimite un răspuns către sursă.
  • pass: Permite trecerea traficului fără alte verificări.

4. Moduri de rulare Suricata

  • IDS (Intrusion Detection System):
    Monitorizează traficul și generează alerte, fără a interveni în fluxul traficului.

    bash

    sudo suricata -c /etc/suricata/suricata.yaml -i eth0
  • IPS (Intrusion Prevention System):
    Interceptează și blochează pachetele conform regulilor. Necesită configurarea în modul inline:

    yaml

    af-packet: - interface: eth0 cluster-type: cluster_flow cluster-id: 98 defrag: yes use-mmap: yes

5. Analiza logurilor și alertelor

Suricata generează loguri în /var/log/suricata/. Principalele fișiere:

  • fast.log: Alertări rapide în format text.
  • eve.json: Informații detaliate despre evenimente, în format JSON.

Pentru a analiza rapid:

bash

tail -f /var/log/suricata/fast.log jq '.' /var/log/suricata/eve.json

Suricata oferă o soluție puternică și flexibilă pentru securitatea rețelei, dar necesită o configurare atentă și reguli bine definite pentru a fi eficientă.

Comentarii

Postări populare de pe acest blog

Containerizare nativă pe macOS: Apple lansează propriul „Distrobox”

  Editorial de: Andrei Popescu, Penguin Reviews În cadrul Conferinței Globale a Dezvoltatorilor (WWDC25), Apple a prezentat „Containerization” – un nou framework open‑source care aduce pe macOS, bazat pe Apple Silicon, un mecanism performant și sigur pentru rularea distribuțiilor Linux in containere, similar ideii de Distrobox sau WSL . 🔹 Ce este Containerization? Framework în Swift : scris integral într-un limbaj modern, se bazează pe Virtualization.framework și rulează fiecare container Linux într‑o mașină virtuală ultra‑ușoară , asigurând izolare completă la nivel de kernel . Performanţă ridicată : containerele pornesc în câteva milisecunde, folosind dinamic doar resursele necesare, datorită accelerării hardware oferite de cipurile ARM Apple . Protecție avansată : fiecare container rulează separat, eliminând riscurile asociate scăpărilor de procese între medii sau către sistemul gazdă . 🛠 Funcționalități cheie Funcționalitate Detalii Imagini OCI standard Compatibile c...

Kali GPT: asistentul AI care transformă pentesting‑ul

  Editorial de: Elena Marinescu, Penguin Reviews Într‑o mișcare revoluționară pentru comunitatea de securitate cibernetică, XIS10CIAL a lansat Kali GPT , un asistent AI conceput special pentru Kali Linux, bazat pe GPT‑4, care integrează inteligența artificială direct în terminal, redefinind modul în care se realizează testele de penetrare . 🔍 Ce aduce Kali GPT? Integrare în terminalul Kali – Kali GPT înțelege comenzi în limbaj natural, generează payloads, interpretează scanări Nmap, configurează Metasploit și explică tool‑uri precum Burp Suite, fără să părăsești shell‑ul . Asistent contextual – adaptează răspunsurile în funcție de nivel (începători vs. experți), oferind explicații simplify sau tehnice avansate . Automatizare AI – generează comenzi, script‑uri și payloads, reduce erorile umane și accelerează ciclul pentesting‑ului . Beneficii clare Productivitate sporită – reducerea semnificativă a timpului de research și documentare Învățare accelerată – e...

De ce Danemarca renunță la Microsoft Office și Windows în favoarea LibreOffice și Linux

  de Mihai Georgescu, editor colaborator Danemarca face un pas major în orientarea către suveranitatea digitală: sectorul public a început să înlocuiască Microsoft Office și Windows cu LibreOffice și distribuții Linux. Misunea este de a readuce controlul datelor în spațiul UE și de a diminua dependența de furnizori extra-comunitari. Motivele deciziei Guvernul danez a început tranziția pe baza a trei obiective prioritare: Suveranitate digitală – datele rămân sub control european, nu sunt transmise către servere non‑UE . Reducerea costurilor – eliminarea licențelor Microsoft și direcționarea fondurilor către dezvoltatori și companii locale. Securitate și interoperabilitate – standardizarea pe formate deschise (ODF) pentru o colaborare mai eficientă între instituții și cetățeni . Strategia de implementare Pilot gradual – implementări în etape, începând cu LibreOffice și Windows, urmate de trecerea la Linux — fără tranziția “brutală” în toate birourile deodată . Form...