总结:端口转发服务(Port Forwarding Service,PFS,如ngrok,花生壳等),虽然便于使用(免配置内网穿透),但是作者通过识别发现了大量在上面使用的服务,以及一些安全风险。
1. 研究方法
搭建环境:逆向协议,验证攻击流程
协议如下:
PFW收集器 + 分类器:被动式DNS发现随机生成的PFW → 无头浏览器访问,捕获特征 → 多模态 LayoutXLM 分类识别服务类型。
是不是转发TCP/UDP出来就不查看了?
技术细节:
- 顶点域名识别:(通过某个顶点域名的ip → 绑定到这个ip的其他域名 → 绑定到这个域名的其他ip … )
- 被动DNS:每天获取dns server请求的数据库,合成一个超级大的数据库,就能知道有没有dns query过这个域名,以及响应结果。
- 扫描:发送HTTP(S)请求,有结构化返回值的就是responding http server。
- 捕获特征:headless browser请求 → 截图 + DOM + 网络加载
- 多模态模型:微调了LayoutXLM(用于识别富文本文档的多模态多语言模型)。用来分类页面特征。(GroundTruth:手动标注模型)
2. 研究发现
- 关键设施暴露:有各种各样的能够进入内网的跳板,如OA,NAS,网络设备管理界面,工控系统,IoT控制器等。且普遍缺乏访问控制。30%左右安全敏感网站:访问关键数据/关键设备
- oray协议漏洞
- 控制平面劫持与内部攻击
- oray agent从https获取初始的转发规则,但是对证书的验证不对,且后续配置更新未加密
- 规则篡改:如果中间人攻击者拦截https连接并篡改初始转发规则,可以做到:
- 转发内网
- 转发到fake 服务器
- 转发到任意公共服务,用于DDoS
- 数据平面中间人攻击
- 自定义的应用层协议,检查方式脆弱,同样也可以做到中间人攻击。
- 控制平面劫持与内部攻击
- 平台被abuse。
- 匿名性,被用来转发C2命令,恶意软件分发,网络钓鱼等
- 免费的ngrok域名会暴露源ip地址。
3.总结
存在漏洞但是利用复杂,(中间人劫持,感觉这都快接近近源攻击了)。但是易被黑灰产利用,且用户安全意识不高,不设保护的PFW可能被作为内网渗透的入口。
建议:Zero Trust安全模型,授权机制等。