Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWünsch Dir wasWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Eigene Suricata-Regeln auf der OPNsense

Mitglied: lcer00

lcer00 (Level 2) - Jetzt verbinden

11.05.2020, aktualisiert 12.05.2020, 1139 Aufrufe, 4 Danke

Hallo zusammen,

die letzten 3 Tage habe ich damit verbracht, auf meinen OPNsense Firewalls eigene Regeln für die Einbruchserkennung (IDS/IPS) einzurichten. Dabei sollten Regeln zentral für alle OPNsense zur Verfügung gestellt werden. Aufgrund einiger Fallstricke in den von mir per Suchmaschine gefunden Anleitungen dazu hier ein kurzes Tutorial.


Behandeltes Setup, Voraussetzungen

Verwendet wurden 3 Firewalls mit OPNsense 20.1.1-amd64 . OPSense verwendet dabei Suricata 4.1.6. Auf den Firewalls ist bereits der Dienst Einbruchserkennung bereits aktiviert. Eine Anleitung hierzu findet sich unter https://docs.opnsense.org/manual/ips.html

Die Regeln sollen auf einem Webserver im LAN unter der url
zur Verfügung gestellt werden. Bei mir war das ein IIS auf einem Windows 2012R2. Grundsätzlich kann man aber auch jeden anderen Webserver nutzen.

Ich habe einen Regelsatz für das Zulassen von Downloads aus den ESET-Repositories erstellt. Ohne diese Zusatzregeln bricht bei uns suricata den Download von ausführbaren Binärdateien bei der Installation oder Autoupdate von ESET Programmkomponenten (nicht bei den Virenaktualisierungen) ab. Ich bleibe mal bei diesem Beispiel.

Was ich hier nicht behandle ist der Syntax der Regeln selbst. Dazu findet man aber im Suricata-User-Guide und mit der Suchmaschine seiner Wahl jede Menge Infos.

ssh Root Zugriff auf die OPNSense aktivieren

Auf der OPNsense muss als root per console bzw. ssh zugegriffen werden. Siehe auch https://docs.opnsense.org/manual/settingsmenu.html

Zunächst wir das Menü System: Einstellungen: Verwaltung aufgerufen werden. Unter "Secure Shell" finden sich die entsprechenden Parameter. Entsprechend dem allgemein üblichen Vorgehen sollte hier der Root-Zugang nicht direkt aktiviert werden. Besser ist es, den SSH Zugang auf eine Benutzergruppe zu beschränken und dann mittels sudo -i auf root zu wechseln. Quick & dirty geht aber auch. Korrekt würde quick&dirty so aussehen:
  • Haken bei Aktiviere Secure Shell setzen
  • Anmeldegruppe auf wheel, admin setzen
  • Haken bei Erlaube Anmeldung mit dem root-Benutzer
  • nochmal darüber nachdenken, ob man das wirklich so machen will, besser ist es eine separate SSH-Benutzergruppe anzulegen und den Wechsel auf root zu erlauben (weiter unter im Menü System: Einstellungen: Verwaltung: Authentifizierung: Sudo). Das ist aber nicht Thema dieser Anleitung.
  • Haken bei Anmeldung mit Passwort erlauben
  • auch nochmal nachdenken, ob das sein soll. Besser ist es, den authorisierenden Schlüssel für den SSH-Benutzer zu konfigurieren.
  • Port auf 22 lassen
  • Schnittstelle passen auswählen

Speicherort der Konfigurationsdateien

Die allgemeinen Konfigurationsdateien von Suricata befinden sich hier:
Allerdings muss man hier nichts anpassen. Interessant ist aber die Datei classification.config
Hier findet man die Bezeichner für die möglichen Klassifikationen (classtype), die der Regel später eine bestimmte Priorität zuweisen.

Wichtiger ist das folgende Verzeichnis:
Hier sind die Verweise auf Regelsätze in XML-Dateien gespeichert. Alle XML-Dateien werden von suricata geladen und die darin referenzierten Regelsätze werden geladen. Hier erzeugt man eine neue Datei mit der Endung .xml

Bearbeiten der Regelsatz-XML-Datei

Mittels
startet man dann auch den beliebten Editor vi. Dessen Bedienung hier zu besprechen, würde etwas den Rahmen sprengen. Man tut aber gut daran, sich mit dessen Basics zu befassen, denn im Notfall muss man sich mittels serieller Console auf seine OPNsense verbinden und die Konfiguration mit diesem tollen Editor bearbeiten können. Macht man alles richtig beim Konfigurieren ist das aber nicht nötig. Alternativ kann man aber auf der OPNsense auch ee verwenden.
Der Syntax der Regelset-Verweis-Dateien ist variabel. Entsprechend XML gibt es da verschiedene Möglichkeiten. Man kann sich die verschiedenen installierten Dateien gerne ansehen.

In meinem Fall kommt in die Datei custom.xml folgender Inhalt:
In die Sektion <files></files> können beliebig viele Dateien referenziert werden. Angegeben wird der Dateiname. Dieser ist relativ zu Location.

Das Verzeichnis sieht bei mir dann so aus:
Das wars schon. Folgende Nacharbeiten sollten erfolgen:
  • Regel über die WebUI Dienste: Einbruchserkennung: Verwaltung: Herunterladen aktualisiseren (Herunterladen und aktualisieren).
  • root-SSH Zugang wieder deaktivieren

Die Regelsätze müssten (noch deaktiviert) in der WebUI auftauchen. Bezeichnet werden sie dort als
Das entsprich dem Location-prefix und der file-description aus dem XML-File. So bleibt alles schön übersichtlich.

Dateien auf dem Webserver

Das ist relativ simpel. Auf dem Webserver legt man die entsprechenden Dateien an und befüllt sie mit suricata Regeln. Bei mir sieht die Datei eset.rules wie folgt aus:
Wichtig: siehe auch https://doc.emergingthreats.net/bin/view/Main/SidAllocation Die Regeln müssen eine für die suricata-Instanz eindeutige sid haben. Werden sid mehrfach vergeben, werden alle folgenden Regeln nicht geladen und auch nicht angewendet. Viele suricata-Beispiele verwenden recht simple sids. Die sollte man ändern. Bei nicht geladenen Regeln sollte man das Log überprüfen.

Den Zugriff auf die Regeldateien überprüft man am besten über den Browser.
Hinweis IIS
Hier waren noch weitere Konfigurationsschritte notwendig, da *.rules Dateien per Default nicht als Text ausgeliefert werden. Für das Verzeichnis auf dem Webserver musste man:
  • Anforderungsfilterung/Dateinamenerweiterung: .rules bestehenden Eintrag löschen
  • und einen Neuen mit .rules = True erstellen
  • MIME-Typ: .rules auf text/html stellen

Nicht getestet habe ich, ob man auch andere Dateiendungen verwenden kann. Ich vermute schon, aber ich wollte beim suricata-Syntax bleiben.

Sicherheitshinweis
Wenn ein Angreifer zugriff auf referenzierten *.rules Dateien bekommt, kann man suricata sehr einfach kompromitieren, da die Regeln ja automatisch geladen werden. Also muss der Webserver genau so abgesichert werden, wie der Zugang zur OPNsense.

Aktivieren der Regeln

In der WebUI der OPNsense können die Regeln jetzt aktiviert werden (anhaken und ausgewählte aktivieren). Überprüfen kann man das unter dem Reiter Regeln. Dort sollte die Regel über die Suche auffindbar sein. Bei jeder Regelaktualisierung werden die Regeln dann vom Webserver geladen.

Suricata-Logs auf der OPNsense

Fehler beim Laden der Regelsätze findet man in der WebUI im allgemeinen Log der OPNsense unter System: Protokolldateien: Allgemein
Fehler beim Verarbeiten der Regeln findet man in der WebUI unter Dienste: Einbruchserkennung: Protokolldatei

Hilfreiche Links

Neue Wissensbeiträge
Datenschutz
Datenschutzproblem?
Information von Penny.Cilin vor 1 TagDatenschutz5 Kommentare

Hallo, gerade im Heise Newsticker gefunden: Frage: Warum wurden die Akten nicht ordnungsgemäß gesichert bzw. aufbewahrt? Patientenakten sind 30 ...

Windows Netzwerk

SCOM ( System Center Operations Manager ) um eine E-Mailschnittstelle erweitern

Anleitung von Juanito vor 2 TagenWindows Netzwerk

Einleitung System Center Operations Manager (SCOM) ist Microsoft's Lösung zum Überwachen von Servern. Dazu zählt die generelle Erreichbarkeit, Festplattenspeicher, ...

Humor (lol)
BioShield gegen 5G
Information von magicteddy vor 3 TagenHumor (lol)3 Kommentare

Moin wer sich gegen die hochgefährlichen 5G schützen möchte wird hier fündig: 5GBioShield "gegen 5G-Strahlung" Ich glaube, ich sollte ...

Windows Server

ScheduledTasks mit einem Group-Managed-Service-Account (GMSA) ausführen

Anleitung von ToniHo vor 3 TagenWindows Server

Hallo zusammen, wer schonmal versucht hat ein Group-Managed-Service-Account (GMSA) auf einem bestehenden ScheduledTask einzutragen, ist an der GUI vermutlich ...

Heiß diskutierte Inhalte
Microsoft
Zugriffsprobleme Festplatte
Frage von MiMa89Microsoft40 Kommentare

Hallo Zusammen, ich hoffe Ihr könnt mir bei folgendem Problem helfen. Ich habe eine externe Festplatte die nicht mehr ...

Microsoft
100 Prozent CPU Last gleich Volllast, Pustekuchen, nicht bei Microsoft!!! VOL 2
Frage von MysticFoxDEMicrosoft28 Kommentare

Liebe Freunde der Präzision und der Norm, ich möchte in diesem Beitrag konstruktiv an den folgenden Vorgängerbeitrag anschliessen, der ...

SAN, NAS, DAS
Entscheidungshilfe Storage für Netzwerkupgrade
Frage von m-jelinskiSAN, NAS, DAS14 Kommentare

Hallo zusammen, unsere Server und Storage-Systeme sind nun 6 Jahre alt und überfällig ausgetauscht zu werden. Daher haben wir ...

Microsoft
USB-Ports sperren mit Software
Frage von trabajadorMicrosoft10 Kommentare

Hallo, gesucht wird eine Software, welche alle USB-Ports sperrt bis auf für Maus, Tastatur und einem Admin-USB-Stick. Verwendet wird ...