保护Mikrotik免受攻击的简便方法

我想与社区分享一种简单而有效的方法,该方法如何使用Mikrotik保护我的网络以及由于外部攻击而导致的“警惕”服务。也就是说,只需遵循三个规则,就可以在Mikrotik上组织一个蜜罐。

因此,让我们想象一下,我们有一个小型办公室,其外部IP是RDP服务器,供员工远程工作。当然,第一个规则是将外部接口上的端口3389更改为另一个。但这并不长久,几天后,终端服务器审核日志将开始每秒显示来自未知客户端的多个失败的授权。

另一种情况是,您在Mikrotik后面隐藏了星号,当然不是在5060 udp端口上,并且在几天后密码猜测也开始了……是的,我知道,fail2ban是我们的全部,但我仍然必须对其进行吹气……例如,我最近将其抬起了ubuntu 4月18日,我很惊讶地发现开箱即用的fail2ban不包含来自相同ubuntu发行版的同一框中的星号的实际设置...但是Google无法搜索现成的“配方”的快速设置,多年来发布的数量不断增长,并且带有“ “旧版本的食谱已不再有效,但几乎没有新版本……但是我离题了……

因此,简而言之,蜜罐是一个诱饵,在我们的例子中,是外部IP上某个受欢迎的端口,外部客户端对此端口的任何请求都会将src地址发送到黑名单。所有。

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

外部ether4-wan接口的流行TCP端口22、3389、8291上的第一条规则将来宾IP发送到Honeypot Hacker列表(ssh,rdp和winbox的端口已预先禁用或更改为其他端口)。第二条在流行的UDP 5060上执行相同的操作。

在预路由阶段的第三条规则将其srs地址进入“ Honeypot Hacker”的“来宾”数据包丢弃。

在完成我的家庭Mikrotik的工作两周后,Honeypot Hacker列表中包含了我网络资源(家庭电话,邮件,nextcloud,rdp)的友好友爱者的约1500个IP地址。

在工作中,并非所有事情都如此简单,他们继续使用暴力密码破坏rdp服务器。

显然,端口号是在打开蜜罐之前很久才由扫描仪确定的,在隔离过程中,要重新配置100个以上的用户并不容易,其中20%的用户已超过65岁。在无法更改端口的情况下,可以使用一些小方法。我在互联网上遇到了类似的问题,但是有一个完善的方法:

配置端口敲门的规则
 /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=2m 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=2m 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=2m 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=2m 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=2m 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

在4分钟内,远程客户端仅可以向RDP服务器发出12个新的“请求”。一次登录尝试是从1到4个“请求”。在第12个“请求”中-锁定15分钟。以我为例,攻击者并没有停止对服务器的黑客攻击,而是适应了计时器,现在他们的运行速度非常缓慢,这种选择速度将攻击效率降低到了零。企业的员工在工作上几乎不会感到任何不便。

另一个小把戏
5, , .

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

8 IP . !

好吧,除了上述内容外,我还将添加指向Wiki文章的链接,并具有保护Mikrotik免受网络扫描程序攻击的有效设置。wiki.mikrotik.com/wiki/Drop_port_scanners

在我的设备上,此设置可与上述蜜罐规则一起使用,对它们进行了很好的补充。

UPD:如注释中所建议,数据包丢弃规则已移至RAW,以减少路由器的负载。

All Articles