MikroTik Fail2Ban (Blockieren von Brute Force Angriffen)

Mehrere Optionen zum Schutz vor BruteForce-Angriffen auf MikroTik-Geräte (MikroTik Fail2Ban), für Winbox-, Web- oder SSH-Verbindungen mit MikroTik Firewall. Einfache Sperrung der IP-Adresse des Angreifers nach dem ersten falschen Passwortversuch oder Sperrung der IP-Adresse nach mehreren Passwortversuchen. Getestet auf RouterOS 7-Version.

Wählen Sie die Option Fail2Ban abhängig von der verwendeten Anmeldemethode, es ist nicht notwendig, alle verfügbaren Anmeldemethoden auf dem MikroTik-Gerät zu verwenden (ich verwende nur Winbox).

In diesem Artikel verwende ich Jump-Ketten in der MikroTik-Firewall, weil sie weniger CPU-intensiv sind und die im Artikel verwendete Blockierungsmethode einfach anzupassen und zu erweitern ist.

MikroTik Fail2Ban - Blockieren von Brute-Force-Angriffen: SSH, Web, Winbox. (MHelp.pro)
Ein Beispiel für MikroTik-Firewallregeln zum Schutz vor Brute-Force-Angriffen auf SSH-, Web- und Winbox-Verbindungen.

✏️ Achtung: Da ein Brute Force Angriff auf ein Gerät von einem vertrauenswürdigen internen Netzwerk ausgehen kann (dies ist sehr wichtig, dies rechtzeitig zu wissen), werden gemäß den festgelegten Regeln alle angreifenden IP-Adressen in BlackList gesetzt.

Andere Sprachen:

Fail2Ban Winbox

Schutz von MikroTik vor einem Brute-Force-Angriff bei Verbindung über Winbox (IP-Adresse) mit MikroTik Firewall. Bei jedem falschen Passwortversuch via Winbox sendet MikroTik den Klartext „invalid user name or password“ zurück.

Information:

  • Chain: output
  • Protocol: 6 (tcp)
  • Src. Port: 8291
  • Content: invalid user name or password

1 Versuch

Sperrung nach einem falschen Passwort versuch:

/ip firewall filter add action=add-dst-to-address-list address-list=BlackList address-list-timeout=10m chain=output comment="F2B Winbox: Login Failure -> BlackList" content="invalid user name or password" protocol=tcp src-port=8291

3 Versuche

Sperren der Ziel-IP-Adresse nach drei falschen Passwort Versuchen.

Beschreibung:

  • Wenn das Paket die Bedingungen erfüllt, wird die Paketverarbeitung an die Fail2Ban-Destination-IP-Kette gesendet;
  • Wenn sich die Ziel-IP-Adresse bereits in der LoginFailure02-Liste befindet, wird die Ziel-IP-Adresse für 10 Minuten zur BlackList hinzugefügt;
  • Wenn sich die Ziel-IP-Adresse bereits in der Liste LoginFailure01 befindet, wird die Ziel-IP-Adresse für 2 Minuten zur Liste LoginFailure02 hinzugefügt;
  • Die Ziel-IP-Adresse wird für 1 Minute zur Liste LoginFailure01 hinzugefügt.

Regeln:

/ip firewall filter add action=jump chain=output comment="F2B Winbox: Jump to Fail2Ban-Destination-IP chain" content="invalid user name or password" jump-target=Fail2Ban-Destination-IP protocol=tcp src-port=8291
/ip firewall filter add action=add-dst-to-address-list address-list=BlackList address-list-timeout=10m chain=Fail2Ban-Destination-IP comment="3 Attempt --> BlackList" dst-address-list=LoginFailure02
/ip firewall filter add action=add-dst-to-address-list address-list=LoginFailure02 address-list-timeout=2m chain=Fail2Ban-Destination-IP comment="2 Attempt --> LoginFailure02" dst-address-list=LoginFailure01
/ip firewall filter add action=add-dst-to-address-list address-list=LoginFailure01 address-list-timeout=1m chain=Fail2Ban-Destination-IP comment="1 Attempt --> LoginFailure01"

Fail2Ban Web

Schutz von MikroTik vor Passwort BruteForce bei Verbindung über die Webschnittstelle mit MikroTik Firewall. Bei einem ungültigen Zugriffsversuch sendet MikroTik eine Antwortnachricht mit dem Klartext „Error 403“.

80 ist der Standardport der MikroTik-Weboberfläche, ich empfehle, ihn zu ändern. Im Beispiel ist ein nicht standardmäßiger Port angegeben – 90. Im Artikel „MikroTik-Schutz (grundlegende Geräte Sicherheitseinstellung)“ – wird der TCP-Port 80 als Trap verwendet, um den Port-Scanner zu blockieren.

Information:

  • Chain: output
  • Protocol: 6 (tcp)
  • Scr. Port: Web port (Beispiel: 90)
  • Content: Error 403

1 Versuch

Sperrung nach einem falschen Passwort versuch:

/ip firewall filter add action=add-dst-to-address-list address-list=BlackList address-list-timeout=10m chain=output comment="F2B Web: Login Failure -> BlackList" connection-state=established content="Error 403" protocol=tcp src-port=90

3 Versuche

Sperren der Ziel-IP-Adresse nach drei falschen Passwort Versuchen.

Beschreibung:

  • Wenn das Paket die Bedingungen erfüllt, wird die Paketverarbeitung an die Fail2Ban-Destination-IP-Kette gesendet;
  • Wenn sich die Ziel-IP-Adresse bereits in der LoginFailure02-Liste befindet, wird die Ziel-IP-Adresse für 10 Minuten zur BlackList hinzugefügt;
  • Wenn sich die Ziel-IP-Adresse bereits in der Liste LoginFailure01 befindet, wird die Ziel-IP-Adresse für 2 Minuten zur Liste LoginFailure02 hinzugefügt;
  • Die Ziel-IP-Adresse wird für 1 Minute zur Liste LoginFailure01 hinzugefügt.

Regeln:

/ip firewall filter add action=jump chain=output comment="F2B Web: Jump to Fail2Ban-Destination-IP chain" connection-state=established content="Error 403" jump-target=Fail2Ban-Destination-IP protocol=tcp src-port=90
/ip firewall filter add action=add-dst-to-address-list address-list=BlackList address-list-timeout=10m chain=Fail2Ban-Destination-IP comment="3 Attempt --> BlackList" dst-address-list=LoginFailure02
/ip firewall filter add action=add-dst-to-address-list address-list=LoginFailure02 address-list-timeout=2m chain=Fail2Ban-Destination-IP comment="2 Attempt --> LoginFailure02" dst-address-list=LoginFailure01
/ip firewall filter add action=add-dst-to-address-list address-list=LoginFailure01 address-list-timeout=1m chain=Fail2Ban-Destination-IP comment="1 Attempt --> LoginFailure01"

Fail2Ban SSH

Schutz von MikroTik (Fail2Ban) vor Brute Force Angriffen auf die SSH-Verbindung mit MikroTik Firewall. Um ein Passwort über SSH anzufordern, sendet das MikroTik-Gerät ein Paket von 304 Bytes an die Zieladresse, wir verfolgen die Anzahl der Pakete, die an eine bestimmte IP-Adresse gesendet werden.

✏️ Das Blockieren von Brute Force Angriffen über einen neuen Verbindungsstatus ist unzuverlässig (ich sehe diese Empfehlung oft online). Der Status Neu wird einer Verbindung zugewiesen, wenn sie mit einem Gerät verbunden wird, aber die Anzahl der möglichen Versuche, ein Passwort einzugeben, ist programmabhängig. Durch Eingabe des Logins des Benutzers kann ein Angreifer 3 bis 7 verschiedene Passwortoptionen eingeben, bevor die Verbindung beendet wird.

PuTTY bricht die SSH-Verbindung nach 7 falschen Passwort Versuchen ab
7 Versuche, das SSH-Passwort in PuTTY zu erraten, bevor die Verbindung getrennt wird

Information:

  • Chain: input
  • Protocol: 6 (tcp)
  • Dst. Port: 22
  • Connection State: estabished
  • Packet Size: 304
  • TCP Flags: psh, ack

1 Versuch

Sperrung nach einem falschen Passwort versuch:

/ip firewall filter add action=add-src-to-address-list address-list=BlackList address-list-timeout=10m chain=input comment="F2B SSH: Login Failure -> BlackList" connection-state=established dst-port=22 packet-size=304 protocol=tcp

3 Versuche

Sperren der Quell-IP-Adresse nach drei falschen Passwort Versuchen.

Beschreibung:

  • Wenn das Paket die Bedingungen erfüllt, wird die Paketverarbeitung an die Fail2Ban-Destination-IP-Kette gesendet;
  • Wenn sich die Quell-IP-Adresse in der LoginFailure02-Liste befindet, wird die Quell-IP-Adresse für 10 Minuten zur BlackList hinzugefügt;
  • Wenn sich die Quell-IP-Adresse in der LoginFailure01-Liste befindet, wird die Quell-IP-Adresse für 2 Minuten zur LoginFailure02-Liste hinzugefügt;
  • Die Quell-IP-Adresse wird für 1 Minute zur Liste LoginFailure01 hinzugefügt.

Regeln:

/ip firewall filter add action=jump chain=input comment="F2B SSH: Jump to Fail2Ban-Source-IP chain" connection-state=established dst-port=22 jump-target=Fail2Ban-Source-IP packet-size=304 protocol=tcp
/ip firewall filter add action=add-src-to-address-list address-list=BlackList address-list-timeout=10m chain=Fail2Ban-Source-IP comment="3 Attempt --> BlackList" src-address-list=LoginFailure02
/ip firewall filter add action=add-src-to-address-list address-list=LoginFailure02 address-list-timeout=2m chain=Fail2Ban-Source-IP comment="2 Attempt --> LoginFailure02" src-address-list=LoginFailure01
/ip firewall filter add action=add-src-to-address-list address-list=LoginFailure01 address-list-timeout=1m chain=Fail2Ban-Source-IP comment="1 Attempt --> LoginFailure01"

BlackList

Wir blockieren alle Daten von IP-Adressen aus der BlackList-Liste. Wir platzieren die Regel in der Firewall Raw-Kette.

/ip firewall raw
add action=drop chain=prerouting comment="Drop all" src-address-list=BlackList

? In diesem Artikel wurde beschrieben, wie der Schutz vor Brute Force Angriffen (MikroTIk Fail2Ban) auf einem MikroTik-Gerät mithilfe der MikroTik-Firewall konfiguriert wird. Ich hoffe, Sie können den Fail To Ban-Schutz für Winbox-, Web- und SSH-Verbindungen einrichten. Wenn Sie jedoch beim Einrichten auf Probleme stoßen, können Sie dies gerne in den Kommentaren schreiben. Ich werde versuchen zu helfen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert