MikroTik Fail2Ban (Brute Force aanvallen blokkeren)

Verschillende opties om te beschermen tegen Brute Force aanvallen op MikroTik-apparaten (MikroTik Fail2Ban), voor Winbox-, Web- of SSH-verbindingen met behulp van MikroTik Firewall. Eenvoudige blokkering van het IP-adres van de aanvaller na de eerste foutieve wachtwoordpoging of blokkering van het IP-adres na meerdere wachtwoordpogingen. Getest op RouterOS 7 versie.

Selecteer de optie Fail2Ban, afhankelijk van de gebruikte inlogmethode, het is niet nodig om alle beschikbare inlogmethoden op het MikroTik-apparaat te gebruiken (ik gebruik alleen Winbox ).

In dit artikel gebruik ik Jump ketens in MikroTik Firewall omdat ze minder CPU-intensief zijn en omdat de in het artikel gebruikte blokkeringsmethode eenvoudig kan worden aangepast en uitgebreid.

MikroTik Fail2Ban - Brute Force aanvallen blokkeren: SSH, Web, Winbox. (MHelp.pro)
Een voorbeeld MikroTik Firewall-regels om te beschermen tegen brute force-aanvallen op SSH-, Web- en Winbox-verbindingen.

✏️ Belangrijk: Aangezien de BruteForce-aanval op het apparaat afkomstig kan zijn van het interne netwerk (het is belangrijk om hiervan op de hoogte te zijn), worden in de gespecificeerde regels alle aanvallende IP-adressen opgenomen in de BlackList.

Andere talen:

Fail2Ban Winbox

MikroTik beschermen tegen een Brute Force aanval bij verbinding via Winbox (IP-adres) met behulp van MikroTik Firewall. Voor elke foutieve wachtwoordpoging via Winbox stuurt MikroTik de platte tekst “invalid user name or password” terug.

Informatie:

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

1 poging

Blokkeren na één verkeerde wachtwoord poging:

/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 pogingen

Het doel-IP-adres blokkeren na drie onjuiste wachtwoord pogingen.

Beschrijving:

  • Als het pakket aan de voorwaarden voldoet, wordt de pakketverwerking verzonden naar de Fail2Ban-Destination-IP-keten;
  • Als het bestemmings-IP-adres al in de LoginFailure02-lijst staat, wordt het bestemmings-IP-adres gedurende 10 minuten aan de BlackList toegevoegd;
  • Als het bestemmings-IP-adres al in de LoginFailure01-lijst staat, wordt het bestemmings-IP-adres gedurende 2 minuten toegevoegd aan de LoginFailure02-lijst;
  • Het bestemmings-IP-adres wordt gedurende 1 minuut toegevoegd aan de LoginFailure01-lijst.

Reglement:

/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

MikroTik beschermen tegen wachtwoord BruteForce bij verbinding via de webinterface met behulp van MikroTik Firewall. Bij een ongeldige toegangspoging stuurt MikroTik een antwoordbericht met de platte tekst “Error 403“.

80 is de standaardpoort van de MikroTik-webinterface, ik raad aan deze te wijzigen. In het voorbeeld is een niet-standaard poort gespecificeerd – 90. In het artikel “MikroTik Protection (basic device security setting)” – 80 wordt de TCP-poort gebruikt als valstrik om de poortscanner te blokkeren.

Informatie:

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

1 poging

Blokkeren na één verkeerde wachtwoord poging:

/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 pogingen

Het doel-IP-adres blokkeren na drie onjuiste wachtwoord pogingen.

Beschrijving:

  • Als het pakket aan de voorwaarden voldoet, wordt de pakketverwerking verzonden naar de Fail2Ban-Destination-IP-keten;
  • Als het bestemmings-IP-adres al in de LoginFailure02-lijst staat, wordt het bestemmings-IP-adres gedurende 10 minuten aan de BlackList toegevoegd;
  • Als het bestemmings-IP-adres al in de LoginFailure01-lijst staat, wordt het bestemmings-IP-adres gedurende 2 minuten toegevoegd aan de LoginFailure02-lijst;
  • het bestemmings-IP-adres wordt gedurende 1 minuut toegevoegd aan de LoginFailure01-lijst.

Reglement:

/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

MikroTik (Fail2Ban) beschermen tegen Brute-Force aanvallen op SSH-verbinding met behulp van MikroTik Firewall. Om via SSH een wachtwoord aan te vragen, stuurt het MikroTik-apparaat een nieuw pakket van 304 bytes naar het bestemmingsadres, we volgen het aantal pakketten dat naar een specifiek IP-adres wordt verzonden.

✏️ Het blokkeren van BruteForce-aanvallen met verbindingsstatus New is niet betrouwbaar (ik zie deze aanbeveling vaak op internet). De status New wordt toegewezen aan een verbinding wanneer deze is verbonden met een apparaat, maar het aantal mogelijke wachtwoordpogingen is afhankelijk van het programma. Door de gebruikersnaam van de gebruiker in te voeren, kan een aanvaller 3 tot 7 verschillende wachtwoordopties invoeren voordat de verbinding wordt verbroken.

PuTTY verbreekt de SSH-verbinding na 7 slechte wachtwoordpogingen
7 pogingen om het SSH-wachtwoord in PuTTY te raden voordat de verbinding wordt verbroken

Informatie:

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

1 poging

Blokkeren na één verkeerde wachtwoord poging:

/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 pogingen

Beschrijving:

  • Als het pakket aan de voorwaarden voldoet, wordt de pakketverwerking verzonden naar de Fail2Ban-Source-IP-keten;
  • Als het bron-IP-adres in de LoginFailure02-lijst staat, wordt het bron-IP-adres gedurende 10 minuten toegevoegd aan de BlackList;
  • Als het bron-IP-adres in de LoginFailure01-lijst staat, wordt het bron-IP-adres gedurende 2 minuten toegevoegd aan de LoginFailure02-lijst;
  • Het bron-IP-adres wordt gedurende 1 minuut toegevoegd aan de LoginFailure01-lijst.

Reglement:

/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

We blokkeren alle gegevens van IP-adressen van de BlackList-lijst. We plaatsen de regel in de Firewall Raw-keten.

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

? Hoe u bescherming tegen BruteForce-aanvallen (MikroTik Fail2Ban) configureert op een MikroTik-apparaat met behulp van MikroTik Firewall, is in dit artikel besproken. Ik hoop dat je Fail To Ban-beveiliging kunt instellen voor Winbox-, web- en SSH-verbindingen. Als u echter problemen ondervindt tijdens het instellen, kunt u dit in de opmerkingen schrijven. Ik zal proberen te helpen.

Plaats een reactie