DoS-Demo mit Suricata auf OPNsense

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

DoS-Demo mit Suricata auf OPNsense

Topologie

Angreifer → OPNsense (WAN mit Suricata IPS) → Webserver

Voraussetzungen

  • OPNsense mit WAN/LAN, NAT und funktionierendem Routing
  • Webserver hinter OPNsense (Port 80 offen)
  • Angreifer-Host mit hping3
  • In OPNsense: System → Settings → Networking → Hardware offloading deaktivieren (Checksum, TSO, LRO)

Ausgangstest ohne IPS

  • Erreichbarkeit prüfen:
curl -I http://web.it214.xinmen.de/
  • Angriff starten (nur kurz laufen lassen):
sudo hping3 -S --flood -V -p 80 web.it214.xinmen.de
  • Erwartung: Webserver nicht mehr erreichbar

Suricata als IPS aktivieren

  • Services → Intrusion Detection → Administration
    • Haken bei "Enable IDS"
    • Haken bei "IPS mode"
    • Interface: WAN auswählen
    • Save und Start
  • Services → Intrusion Detection → Download
    • Ruleset "ET open" aktivieren
    • Download & Update Rules ausführen
  • Services → Intrusion Detection → Policies
    • Neue Policy hinzufügen
      • Action: drop
      • Categories: dos.rules, scan.rules (weitere falls nötig)
      • Enabled anhaken
    • Save und Apply

Test mit aktivem IPS

  • Normalen HTTP-Request prüfen:
curl -I http://web.it214.xinmen.de/
  • Angriff wiederholen:
sudo hping3 -S --flood -V -p 80 web.it214.xinmen.de
  • Erwartung: Suricata verwirft die Flood-Pakete, Webserver bleibt erreichbar
  • Kontrolle: Services → Intrusion Detection → Alerts → Einträge mit "drop" sichtbar

Anpassungen

  • Falls keine Drops sichtbar: Policy an oberste Stelle verschieben und Apply
  • Für nachvollziehbare Demo gedrosselten Flood verwenden:
sudo hping3 -S -i u500 -V -p 80 web.it214.xinmen.de

Fehlerbehebung

  • Keine Drops: prüfen ob IPS mode aktiv, Regeln aktualisiert
  • OPNsense überlastet: Flood nur kurz laufen lassen, vCPU/RAM erhöhen
  • Legitime Verbindungen blockiert: Alerts prüfen, spezifische Regeln deaktivieren oder Policy anpassen