Snort IDS konfigurieren und Regeln erstellen

Snort ist ein Open Source Intrusion Detection System, das Sie auf Ihren Linux-Systemen verwenden können. Dieses Tutorial behandelt die grundlegende Konfiguration von Snort IDS und zeigt Ihnen, wie Sie Regeln erstellen, um verschiedene Arten von Aktivitäten auf dem System zu erkennen.

Für dieses Tutorial wird das folgende Netzwerk verwendet: 10.0.0.0/24. Bearbeiten Sie Ihre /etc/snort/snort.conf und ersetzen Sie das „any“ neben $HOME_NET durch Ihre Netzwerkinformationen, wie im folgenden Beispielbildschirm gezeigt:

Alternativ können Sie auch bestimmte IP-Adressen zur Überwachung definieren, die durch ein Komma getrennt werden, wie in diesem Bildschirmfoto gezeigt:

Lassen Sie uns nun loslegen und diesen Befehl auf der Kommandozeile ausführen:

# snort -d -l /var/log/snort/ -h 10.0.0.0/24 -A console -c /etc/snort/snort.conf

Wobei:
d= sagt snort, dass es Daten anzeigen soll
l= bestimmt das Logs-Verzeichnis
h= gibt das zu überwachende Netzwerk an
A= weist snort an, Warnungen in der Konsole auszugeben
c= gibt Snort die Konfigurationsdatei an

Lässt einen schnellen Scan von einem anderen Gerät mit nmap starten:

Und schauen wir, was in der snort-Konsole passiert:

Snort hat den Scan erkannt, jetzt, ebenfalls von einem anderen Gerät aus, greifen wir mit DoS an, indem wir hping3

# hping3 -c 10000 -d 120 -S -w 64 -p 21 –flood –rand-source 10.0.0.3

Das Gerät, das Snort anzeigt, erkennt schlechten Datenverkehr, wie hier gezeigt:

Da wir Snort angewiesen haben, Logs zu speichern, können wir sie lesen, indem wir ausführen:

# snort -r

Einführung in die Snort-Regeln

Der NIDS-Modus von Snort arbeitet auf der Grundlage von Regeln, die in der Datei /etc/snort/snort.conf-Datei festgelegt sind.

In der Datei snort.conf-Datei können wir kommentierte und unkommentierte Regeln finden, wie Sie unten sehen können:

Der Regelpfad ist normalerweise /etc/snort/rules, dort können wir die Regeldateien finden:

Lassen Sie uns die Regeln gegen Backdoors sehen:

Es gibt mehrere Regeln, um Backdoor-Angriffe zu verhindern, überraschenderweise gibt es eine Regel gegen NetBus, ein trojanisches Pferd, das vor ein paar Jahrzehnten populär wurde, schauen wir sie uns an und ich werde ihre Bestandteile und ihre Funktionsweise erklären:

alert tcp $HOME_NET 20034 -> $EXTERNAL_NET any (msg: „BACKDOOR NetBus Pro 2.0 connection
established“; flow:from_server,established;
flowbits:isset,backdoor.netbus_2.connect; content: „BN|10 00 02 00|“; depth:6; content:“|
05 00|“; depth:2; offset:8; classtype:misc-activity; sid:115; rev:9;)

Diese Regel weist snort an, bei TCP-Verbindungen auf Port 20034, die an eine beliebige Quelle in einem externen Netzwerk senden, einen Alarm auszulösen.

-> = gibt die Richtung des Datenverkehrs an, in diesem Fall von unserem geschützten Netzwerk zu einem externen

msg = weist den Alarm an, eine bestimmte Nachricht bei der Anzeige einzuschließen

content = sucht nach bestimmten Inhalten im Paket. Er kann Text enthalten, wenn er zwischen “ “ steht, oder binäre Daten, wenn er zwischen | | steht
depth = Analyseintensität, in der obigen Regel sehen wir zwei verschiedene Parameter für zwei verschiedene Inhalte
offset = teilt Snort das Startbyte jedes Pakets mit, um mit der Suche nach dem Inhalt zu beginnen
classtype = teilt mit, über welche Art von Angriff Snort alarmiert

sid:115 = rule identifier

Erstellen einer eigenen Regel

Nun erstellen wir eine neue Regel, um über eingehende SSH-Verbindungen zu informieren. Öffnen Sie /etc/snort/rules/yourrule.rules, und fügen Sie den folgenden Text ein:

alert tcp $EXTERNAL_NET any -> $HOME_NET 22 (msg: „SSH incoming“;
flow:stateless; flags:S+; sid:100006927; rev:1;)

Wir teilen Snort mit, dass es bei jeder tcp-Verbindung von einer externen Quelle zu unserem ssh-Port (in diesem Fall der Standardport) Alarm schlagen soll, einschließlich der Textnachricht „SSH INCOMING“, wobei stateless Snort anweist, den Status der Verbindung zu ignorieren.

Nun müssen wir die von uns erstellte Regel zu unserer Datei /etc/snort/snort.conf hinzufügen. Öffnen Sie die Konfigurationsdatei in einem Editor und suchen Sie nach #7, dem Abschnitt mit den Regeln. Fügen Sie eine unkommentierte Regel wie in der Abbildung oben hinzu, indem Sie Folgendes hinzufügen:

include $RULE_PATH/ihrerule.rules

Anstatt „ihrerule.rules“, setzen Sie Ihren Dateinamen, in meinem Fall war es test3.rules.

Nachdem es fertig ist, starten Sie Snort erneut und sehen Sie, was passiert.

#snort -d -l /var/log/snort/ -h 10.0.0.0/24 -A console -c /etc/snort/snort.conf

Sh von einem anderen Gerät auf Ihr Gerät und sehen Sie, was passiert:

Sie können sehen, dass SSH-Eingänge erkannt wurden.

Mit dieser Lektion hoffe ich, dass Sie wissen, wie man grundlegende Regeln aufstellt und diese zur Erkennung von Aktivitäten auf einem System verwendet. Siehe auch das Tutorial „Wie man Snort einrichtet und einsetzt“ und das gleiche Tutorial auf Spanisch bei Linux.lat.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.