NAT滑移技术v2.0允许攻击者远程访问任何TCP/UDP服务
NAT滑移技术允许攻击者远程访问绑定在受害者NAT后面的任何系统上的任何TCP/UDP服务,通过受害者访问网站绕过受害者的NAT/防火墙(远程任意防火墙孔控件)。 v1由:@samykamkar开发 // https://sa.my v2由:samy kamkar和(Ben Seri和Armis的Gregory Vishnipolsky)开发。动画由我分叉的draw.io生成,允许在动画中导出可用的边缘上下文流和控制。NAT滑移技术利用用户的浏览器与内置在NAT、路由器和防火墙中的应用层网关(ALG)连接跟踪机制,利用定时攻击或WebRTC链式内部IP提取、自动化远程MTU和IP分片发现、TCP数据包大小调整、TURN身份验证误用、精确的数据包边界控制以及通过浏览器滥用实现的协议混淆。由于是NAT或防火墙打开了目标端口,这绕过了任何基于浏览器的端口限制。此攻击利用对某些TCP和UDP数据包数据部分的任意控制,而不包括HTTP或其他头部;该攻击在所有主要现代(以及较旧)浏览器中执行这种新的数据包注入技术,并且是我2010年在DEFCON 18 + Black Hat 2010上提出的原始NAT定位技术的现代化版本。此外,还包括本地IP地址发现的新技术。此攻击需要NAT/防火墙支持ALG(应用层网关),这是可以使用多个端口(控制通道+数据通道)的协议(如SIP和H323(VoIP协议))、FTP、IRC DCC等的强制要求。受害者访问恶意网站(或带有恶意广告的网站),内部受害者IP首先必须通过浏览器提取并发送到服务器,内部IP尝试通过HTTPS上的WebRTC数据通道提取,一些浏览器(Chrome)仅通过HTTPS上的WebRTC披露本地IP,但我们的某些攻击需要HTTP,因此我们首先重定向到攻击软件的HTTPS版本以提取本地IP,然后重定向到包含本地IP的HTTP版本,如果我们能够获得它以绕过其他跨域保护机制(呈现的.local mDNS/Bonjour地址对攻击没有用处),如果没有通过WebRTC(Safari)披露内部IP或没有WebRTC(<= IE11),则执行基于Web的TCP定时攻击,在后台加载所有常见网关(例如192.168.0.1)的隐藏图像标签,在图像标签上附加onerror/onsuccess事件,如果网关返回任何TCP RST(onerror)或SYN + HTTP响应(onsuccess),在几秒钟内(在TCP超时触发onerror之前),我们已经检测到有效的子网,重新对检测到的子网(/24)上的所有IP执行定时攻击,测量onerror/onsuccess触发的时间,最快的响应可能是内部IP,尽管所有响应都被视为受害者内部IP候选,并且攻击通过隐藏表单发送大型TCP信标并自动HTTP POST到绑定到非标准端口的攻击者“HTTP服务器”,以强制TCP分段和发现受害者IP堆栈的最大MTU大小。攻击者的TCP服务器发送最大节段大小TCP选项,以调整受害者出站数据包的大小(RFC 793 x3.1),控制浏览器TCP数据包的大小,将大的UDP信标通过WebRTC TURN身份验证机制从浏览器发送到非标准端口到攻击者的服务器,强制IP分片,同时将TURN用户名字段填充,以执行类似于TCP分段的攻击,但在UDP上,因为IP分片会发生并提供与TCP分段不同的值,受害者的MTU大小、IP头大小、IP数据包大小、TCP头大小、TCP节段大小由服务器检测并发送回受害者的浏览器,后来用于数据包填充(v1)“SIP数据包”在新生成的隐藏表单中生成,包含内部IP以触发应用层网关连接跟踪,“HTTP POST”到在TCP端口5060(SIP端口)上的服务器初始化,避免限制的浏览器端口,POST数据根据确切的TCP节段大小/数据包边界进行“填充”,然后将“SIP数据包”附加并通过网络表单发布,受害者IP堆栈将POST拆分为多个TCP数据包,留下“ SIP数据包”(作为POST数据的一部分)在其自己的TCP数据包中,未附带任何HTTP头,如果浏览器更改多部分/表单边界的大小(Firefox)或由于其他原因更改数据包大小,则将大小更改反馈给客户端,客户端在打开UDP端口时自动重新发送新大小,在特别构造的用户名字段内通过TURN协议发送SIP数据包,强制IP分片和精确边界控制(v2)“H.323数据包”使用基于TCP的STUN(绕过v1的补丁和浏览器端口限制)生成的连接,包含内部IP以触发应用层网关连接跟踪,但强制在网络上的任何其他主机上重定向的“呼叫转发”数据包“ H.323呼叫转发”到TCP上的服务器。
本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。
☕请我喝杯咖啡