使用 frp 将 Windows 远程桌面暴露到公网上,貌似被爆破了,怎么破

2021-03-19 18:57:23 +08:00
 vzextreme

起因是发现 frp dashboard 远程桌面端口流量非常大,然后查看远程桌面主机的事件查看器,非常密集的账户登录失败事件,大概每秒 3-5 次。下面是事件信息。 ps:暴露端口不是 3389,密码也是强密码

帐户登录失败。

使用者:
	安全 ID:		NULL SID
	帐户名:		-
	帐户域:		-
	登录 ID:		0x0

登录类型:			3

登录失败的帐户:
	安全 ID:		NULL SID
	帐户名:		xxxxxxx
	帐户域:		DESKTOP

失败信息:
	失败原因:		未知用户名或密码错误。
	状态:			0xC000006D
	子状态:		0xC000006A

进程信息:
	调用方进程 ID:	0x0
	调用方进程名:	-

网络信息:
	工作站名:	-
	源网络地址:	127.0.0.1
	源端口:		0

详细身份验证信息:
	登录进程:		NtLmSsp 
	身份验证数据包:	NTLM
	传递服务:	-
	数据包名(仅限 NTLM):	-
	密钥长度:		0

登录请求失败时在尝试访问的计算机上生成此事件。

“使用者”字段指明本地系统上请求登录的帐户。这通常是一个服务(例如 Server 服务)或本地进程(例如 Winlogon.exe 或 Services.exe)。

“登录类型”字段指明发生的登录的种类。最常见的类型是 2 (交互式)和 3 (网络)。

“进程信息”字段表明系统上的哪个帐户和进程请求了登录。

“网络信息”字段指明远程登录请求来自哪里。“工作站名”并非总是可用,而且在某些情况下可能会留为空白。

“身份验证信息”字段提供关于此特定登录请求的详细信息。
	-“传递服务”指明哪些直接服务参与了此登录请求。
	-“数据包名”指明在 NTLM 协议之间使用了哪些子协议。
9816 次点击
所在节点    程序员
57 条回复
yyyb
2021-03-19 21:34:46 +08:00
iptables 自己的 ip 白名单,动态 ip 也不怕,ddns 个免费域名,10 分钟更新一下
ThirdFlame
2021-03-19 21:44:32 +08:00
nps 的私密代理 可以了解一下。
Maskeney
2021-03-19 23:09:06 +08:00
这是正常现象啊,有什么值得单独拿出来说的吗?公网就是个黑暗森林啊
mingl0280
2021-03-20 01:08:21 +08:00
frp 是 linux 上安装的吗?
如果是的话你可以开个 Fail2Ban 规则,配合 iptables 就可以干掉大部分请求了。
seakingii
2021-03-20 01:15:48 +08:00
我是要用远程的时候上服务器打开端口,不用的时候关闭。
LeeReamond
2021-03-20 03:16:45 +08:00
说句题外话,请问 windows 上有类似 fai2ban 的工具吗?
mingl0280
2021-03-20 07:33:10 +08:00
@LeeReamond 我以前自己写过一个挺生草的东西,就是读登录请求然后多于五次失败的拉黑名单,不过比较不稳定……
其实你可以在 Windows 上开个 WSL 装 f2b 过滤。
LeeReamond
2021-03-20 08:27:57 +08:00
@mingl0280 f2b 这东西得接入日志吧,咋接 windows 日志不会啊。至于自己写,怕是写完以后因为运行占用太多 CPU 资源导致以为被攻击┓( ´∀` )┏
ciaoly
2021-03-20 08:33:01 +08:00
可以把 FRP 换成 mesh VPN,Windows 上只允许 VPN 流量进入。而且 mesh VPN 成功打洞后直连还挺快的
zjsxwc
2021-03-20 08:53:59 +08:00
买个域名吧,frp 可以限制域名连接端口,你买个又长又乱码的域名指向你的 frp server,然后 frp 绑定端口到这个域名就行,直接用 ip 风险确实大。
lqw3030
2021-03-20 08:56:16 +08:00
要不要尝试下我的方案,带 ip 名单,时间限制的:

[-]( https://www.v2ex.com/t/729271#reply10)
mingl0280
2021-03-20 09:01:27 +08:00
@LeeReamond C#直接接入 eventlog 就行了,有事件发生会通知线程的。主要是你要知道你要监听的事件的 ID 什么的,挺简单。
yanzhiling2001
2021-03-20 09:14:33 +08:00
@zjsxwc 大佬,frp 怎么绑定域名访问端口
yanzhiling2001
2021-03-20 09:15:58 +08:00
用 frp 的 stcp 模式可以避免直接暴漏端口在公网上的风险

https://www.linuxprobe.com/frp-security.html
zjsxwc
2021-03-20 09:26:41 +08:00
@yanzhiling2001 我看错了,只有 http 服务才能 custom domain

你直接 tcp,只能用 stcp 了
https://github.com/fatedier/frp#expose-your-service-privately
rund11
2021-03-20 09:32:53 +08:00
1 换个端口,2 启用密钥没得问题
Blessing1
2021-03-20 10:36:28 +08:00
换个端口 然后设置好 只有你指定的 IP 或者 IP 域可以访问
v2tudnew
2021-03-20 11:45:34 +08:00
最不担心的就是爆破了,穷举出来了我马上去买彩票。
129tyc
2021-03-20 11:53:36 +08:00
可以使用 v2ray 做反代,比直接用 frp 更加安全
taylor007
2021-03-20 13:08:34 +08:00
一键关机解决 (开玩笑的,不过如果用密钥的话要好吧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/763283

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX