Ich möchte der Community eine einfache und funktionierende Methode vorstellen, wie man mit Mikrotik sein Netzwerk und die âherausblickendenâ Dienste davor vor externen Angriffen schĂŒtzen kann. Mit nur drei Regeln kann man auf dem Mikrotik einen Honeypot einrichten.
Angenommen, wir haben ein kleines BĂŒro, hinter dem eine RDP-Server steht, der fĂŒr die Remote-Arbeit der Mitarbeiter genutzt wird. Die erste Regel ist natĂŒrlich, den Port 3389 auf der externen Schnittstelle auf einen anderen zu Ă€ndern. Doch das hĂ€lt nicht lange an â nach ein paar Tagen wird das Audit-Protokoll des Terminalservers zeigen, dass es mehrere fehlgeschlagene Authentifizierungsversuche pro Sekunde von unbekannten Kunden gibt.
Eine andere Situation ist, wenn hinter Ihrem Mikrotik ein Asterisk versteckt ist, natĂŒrlich nicht am UDP-Port 5060, und nach ein paar Tagen beginnt auch hier das Durchprobieren von Passwörtern⊠ja, ich weiĂ, fail2ban ist unsere Rettung, aber da muss man noch ein bisschen daran arbeiten⊠Ich habe kĂŒrzlich einen auf Ubuntu 18.04 installiert und war ĂŒberrascht zu entdecken, dass fail2ban standardmĂ€Ăig keine aktuellen Einstellungen fĂŒr Asterisk aus derselben Ubuntu-Version enthĂ€lt⊠und schnelles Googeln nach âRezeptenâ fĂŒr die Konfiguration funktioniert nicht mehr, die Versionsnummern steigen mit den Jahren, und die Artikel mit âRezeptenâ fĂŒr alte Versionen funktionieren nicht mehr, wĂ€hrend neue rar gesĂ€t sind⊠Aber ich schweife ab...
Was ist also ein Honeypot in zwei Worten? Es ist eine Falle, in unserem Fall irgendein beliebter Port auf der externen IP-Adresse. Jede Anfrage an diesen Port von einem externen Client fĂŒhrt dazu, dass die Quelladresse auf die schwarze Liste gesetzt wird. Das war's.
/ip firewall filter
add action=add-src-to-address-list address-list="Honeypot Hacker"
address-list-timeout=30d0h0m chain=input comment="block honeypot ssh rdp winbox"
connection-state=new dst-port=22,3389,8291 in-interface=
ether4-wan protocol=tcp
add action=add-src-to-address-list address-list="Honeypot Hacker"
address-list-timeout=30d0h0m chain=input comment=
"block honeypot asterisk" connection-state=new dst-port=5060
in-interface=ether4-wan protocol=udp
/ip firewall raw
add action=drop chain=prerouting in-interface=ether4-wan src-address-list=
"Honeypot Hacker"
Die erste Regel fĂŒr die beliebten TCP-Ports 22, 3389 und 8291 der externen Schnittstelle ether4-wan setzt die IP-Adresse des âGĂ€stenâ auf die Liste âHoneypot Hackerâ (Ports fĂŒr SSH, RDP und Winbox sind im Voraus deaktiviert oder auf andere geĂ€ndert). Die zweite Regel macht das Gleiche fĂŒr den beliebten UDP-Port 5060.
Die dritte Regel verwirft in der Vorrouting-Phase die Pakete von âGĂ€stenâ, deren Quelladresse auf die Liste âHoneypot Hackerâ gesetzt wurde.
Nach zweiwöchiger Nutzung meines Heim-Mikrotiks umfasst die Liste âHoneypot Hackerâ etwa 1500 IP-Adressen von Personen, die meine Netzwerkressourcen âauskundschaftenâ möchten (zu Hause nutze ich meine eigene Telefonie, E-Mail, Nextcloud, RDP). Die Brute-Force-Angriffe haben aufgehört, es herrscht jetzt Wohlstand.
Bei der Arbeit ist es jedoch nicht so einfach, dort wird der RDP-Server weiterhin durch Passwortversuche angegriffen.
Offensichtlich wurde die Portnummer von einem Scanner lange vor dem Einschalten des Honeypots bestimmt, und wĂ€hrend der QuarantĂ€ne ist es nicht einfach, ĂŒber 100 Benutzer umzuprogrammieren, von denen 20 % ĂŒber 65 Jahre alt sind. Wenn der Port nicht geĂ€ndert werden kann, gibt es ein kleines funktionierendes Rezept. Ăhnliches habe ich im Internet gesehen, aber hier gibt es zusĂ€tzliche Anpassungen und Feinabstimmungen:
Regeln zur Konfiguration von Port Knocking
/ip firewall filter
add action=add-src-to-address-list address-list=rdp_blacklist
address-list-timeout=15m chain=forward comment=rdp_to_blacklist
connection-state=new dst-port=3389 protocol=tcp src-address-list=
rdp_stage12
add action=add-src-to-address-list address-list=rdp_stage12
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage11
add action=add-src-to-address-list address-list=rdp_stage11
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage10
add action=add-src-to-address-list address-list=rdp_stage10
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage9
add action=add-src-to-address-list address-list=rdp_stage9
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage8
add action=add-src-to-address-list address-list=rdp_stage8
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage4
add action=add-src-to-address-list address-list=rdp_stage7
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage6
add action=add-src-to-address-list address-list=rdp_stage6
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage5
add action=add-src-to-address-list address-list=rdp_stage5
address-list-timeout=4m chain=forward connection-state=new dst-port=
3389 protocol=tcp src-address-list=rdp_stage4
add action=add-src-to-address-list address-list=rdp_stage4
address-list-timeout=4m chain=forward connection-state=new dst-port=
3389 protocol=tcp src-address-list=rdp_stage3
add action=add-src-to-address-list address-list=rdp_stage3
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage2
add action=add-src-to-address-list address-list=rdp_stage2
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage1
add action=add-src-to-address-list address-list=rdp_stage1
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp
/ip firewall raw
add action=drop chain=prerouting in-interface=ether4-wan src-address-list=
rdp_blacklist
In 4 Minuten darf der entfernte Client nur 12 neue âAnfragenâ an RDP stellen. zu einem Server. Ein Anmeldeversuch entspricht 1 bis 4 âAnfragenâ. Bei der 12. âAnfrageâ erfolgt eine Sperre fĂŒr 15 Minuten. In meinem Fall haben die Angreifer mit dem Hacken des Servers nicht aufgehört, sondern sich an die Timer angepasst und tun dies jetzt sehr langsam; diese Geschwindigkeit reduziert die EffektivitĂ€t des Angriffs auf null. Die Mitarbeiter des Unternehmens haben durch die getroffenen MaĂnahmen kaum Unannehmlichkeiten in der Arbeit.
Noch ein kleiner Trick
Diese Regel wird planmĂ€Ăig um 1 Uhr nachts aktiviert und um 5 Uhr ausgeschaltet, wenn die Menschen sicher schlafen und die automatisierten Scanner weiterhin wach sind.
/ip firewall filter
add action=add-src-to-address-list address-list=rdp_blacklist
address-list-timeout=1w0d0h0m chain=forward comment=
"night_rdp_blacklist" connection-state=new disabled=
yes dst-port=3389 protocol=tcp src-address-list=rdp_stage8Bereits bei der 8. Verbindung wird die IP-Adresse des Angreifers fĂŒr eine Woche auf die schwarze Liste gesetzt. Schön!
AuĂerdem fĂŒge ich einen Link zu einem Wiki-Artikel hinzu, der eine funktionierende Konfiguration zum Schutz von MikroTik gegen Netzcanner beschreibt.
Auf meinen GerÀten funktioniert diese Einstellung zusammen mit den oben beschriebenen Honeypot-Regeln und ergÀnzt sie gut.
UPD: Wie in den Kommentaren vorgeschlagen wurde, wurde die Paketdroph-Regel in RAW verschoben, um die Belastung des Routers zu reduzieren.
Quelle: habr.com
