一项新的研究表明,该技术可使黑客攻击者绕过防火墙保护,并远程访问受害计算机上的任何TCP / UDP服务。
确定数据包边界
网络地址转换(NAT)是一个过程,其中网络设备(例如防火墙)通过在数据包传输过程中修改IP包头中的网络地址信息,将IP地址空间重新映射到另一个IP地址空间。
主要优点是它限制了组织内部网络中使用的公共IP地址的数量,并通过允许在多个系统之间共享单个公共IP地址来提高安全性。
NAT通过利用TCP和IP数据包分段来远程调整数据包边界,并使用它来创建TCP / UDP数据包(从SIP方法(如REGISTER或INVITE)开始)而起作用。
SIP(会话启动协议的缩写)是一种通信协议,用于启动,维护和终止语音,视频和消息传递应用程序的实时多媒体会话。
换句话说,HTTP中的数据包分段和走私SIP请求的混合可用于欺骗NAT ALG打开任意端口以用于到客户端的入站连接。
为此,将发送一个带有ID和隐藏Web表单的大型HTTP POST请求,该请求指向运行运行数据包嗅探器的攻击服务器,该服务器用于捕获MTU大小,数据包大小,TCP和IP标头大小,其他,然后通过单独的POST消息将大小数据发送回受害客户端。
此外,它还滥用TURN(使用围绕NAT的中继的遍历)中的身份验证功能(该协议与NAT结合使用,将媒体从任何对等方中继到网络中的另一客户端),从而导致数据包溢出并导致IP数据包碎片化。
简而言之,该想法是通过填充(带有“ ^”字符)来溢出TCP或UDP数据包,并强制将其拆分为两个,以便SIP数据包位于第二个数据包边界的最开始。
通过数据包更改连接到TCP / UDP
在下一阶段,使用现代浏览器(例如Chrome或Firefox)上的WebRTC ICE提取受害人的内部IP地址,或者通过对常见网关(192.168。*。1、10.0.0.1和本地网络)执行定时攻击来提取受害人的内部IP地址。
“一旦客户端获得了数据包的大小和内部IP地址,它就会构建一个特制的Web表单,该表单填充POST数据,直到我们认为该数据包将变得碎片化为止,这时将附加包含内部IP地址的SIP REGISTER,”注意。“该表格是通过Javascript提交的,未经受害者同意。”
就像数据包到达攻击服务器并且确定未用公共IP地址重写SIP数据包一样,自动消息也会发送回客户端,要求其根据数据将其数据包大小调整为新的边界以前是从嗅探器收集的。
有了正确的数据包边界,NAT被欺骗了,以为“这是合法的SIP注册,并且来自受害者计算机上的SIP客户端”,最终导致NAT在受害者发送的原始数据包中打开端口。
路由器现在会将攻击者选择的任何端口转发回内部受害者,而所有这些端口都只需要浏览到一个网站即可。
来源:郭盛华博客,转载请注明出处
关于作者