BadTunnel 这个缝隙出来现已近一个月了,笔者在刚刚迸发这个缝隙的时分对其进行了剖析,而且写出了POC,最近闲来无事,又从头翻起这个缝隙,改进了进犯脚本,使之成为一个实践浸透测验中可用的一个东西。
原理:
1. Badtunnel缝隙的原理是,当某台主机(受害主机)给一个指定IP的主机发送一个 *** B同享衔接恳求时,由于该指定主机的默许同享端口445、139不可达(超时或回绝衔接),则该主时机向这个指定IP的主机发送一个意图端口为137的NetBIOS NB STATE包。一旦发送这个数据,且 *** 中心部件(防火墙、NAT网关等)答应经过,那么就必定答应在必定的时间内经过该地道(即Badtunnel)回来数据。而这个NetBIOS包运用的协议是无衔接状况的UDP,其源端口和意图端口用且只用137端口。这就表明这样一段时间内,处于外部 *** 的机器能够结构一个源端口为137,意图为该IP的137端口,发往受害主机,且该 *** 必定是可达的。
2. Badtunnel中一共用到了2种NetBIOS数据包,之一种是受害主机向意图主机UDP的137端口发送的NetBIOS NB STATE包,第二种则是从意图主机137端口源源不断地回来的NetBIOSNAME RESPONSE包。发送第二个包的意图是什么呢?其实便是在当这个Badtunnel构建起来后,假定方针再未来的一段时间内,必定会向自己的局域网内播送一个NetBIOS NAME QUERY的恳求包,用来恳求某一个不知道的域名或许机器名的IP地址(留意这个播送报是不能经过Badtunnel发送给黑客的服务器的,即黑客是看不到这个播送包的)。这个恳求包内部其实是一个DNS协议的报文,可是和DNS协议不同的是,它的Trasaction ID不是随机,而是递加的!而且这个ID还和之前发送的NetBIOSNB STATE数据包的ID享受同一个计数器!也便是说,在受害主机给一个指定的主机发送一个NetBIOSNB STATE包时,这个ID就现已泄露了。只需受害主机接收到ID匹配的RESPONSE,那么它就会更新自己本机的NetBIOS缓存。
3. 当Badtunnel构建起来今后,能够不断地经过这个tunnel给受害主机发送一个NetBIOSNAME RESPONSE包,不断地告知受害主机:WPAD(或许其他域名)的IP地址是xxx,这个xxx一般是进犯者自己的WEB服务器,用来给受害者主机发送wpad.dat文件,然后更改受害主机的 *** 署理设置。而发送的这个NetBIOSNAME RESPONSE包,运用的ID号必定是大于之前收到的NB STATE的ID号,且一般不会大许多。经过不断地发包彻底能够“蒙”对。
4. 触发这个缝隙确实很简单,可是门槛也不是那种受害者彻底不知情就能绑架的。依据1,受害者需求拜访一个 *** B的UNI PATH,即相似”123.123.123.123”的地址,一个仅仅放在资源管理器的快捷 *** 、或许翻开一个网页、翻开一个文档都能够触发,可是这仍是有必定门槛的,尽管并不是很高。即使成功地触发,部分运营商好像在 *** 层就现已屏蔽了udp的137端口,这样这个Tunnel仍是构建不起来。
5. Badtunnel缝隙的中心在于这个Tunnel,而不是WPAD。WPAD(即 *** 署理自发现协议 – Web Proxy Auto-Discovery Protocol)仅仅依据这个Tunnel的一个现在发现的比较好的运用 *** 罢了(其实还有一个潜在的更好的运用 *** ,这儿笔者卖个关子,尚待研讨)。事实上,在部分内网中,许多Web衔接数据库是经过机器名来衔接的,也便是说,在Web服务器刚发动的初始化阶段,或许衔接超时今后从头建议衔接的阶段,它也会在内部 *** 发送一个NetBIOS NAME QUERY播送,只需能够知道这个主机名,相同能够经过Badtunnel来诈骗数据库客户端主机,运用Metasploit的MYSQL Capture或许MSSQL Capture模块就能捕捉到数据库的暗码。
运用
Metasploite中的运用代码,其实并不能算是一个真实的Badtunnel运用代码,由于它会遍历0-65535号的Trasaction ID。依据我之前所说,这个ID是能够被猜测而且准确进犯的。因而Metasploit中的运用代码功率低、成功率不高。
笔者运用Python编写了一个真实的BadTunnel运用东西,该东西能够精准的诈骗受害主机,重定向一个指定的域名(默许是WPAD)到一个指定的IP地址。还有NetBIOS探针形式、混合形式(构建Badtunnel,经过Badtunnel重定向WPAD而且探针局域网内NetBIOS NAME QUERY),主动诈骗形式(主动诈骗局域网内一切的NetBIOS NAMEQUERY,把恣意域名定向到一个指定IP)。其间探针形式、主动诈骗形式不支持跨网段。能够幻想以下进犯场景,留意构建BadTunnel需求首要封闭445和139端口,Linux中默许是 *** bd服务和nmbd服务,Windows能够设置防火墙制止经过:
1. 绑架 *** 老友、长途/局域 *** 的流量:
准备好环境。最便利的是直接运用burpsuit来敞开一个署理端口,留意需求监听在一切接口上(即监听0.0.0.0),然后运用metasploit的server/wpad模块来快速建立一个80端口下的HTTP服务器,来回来wpad配置文件。
1)运用 *** 、邮件发送一个带有 *** BURI PATH的文档、快捷 *** ,或许一个网页,留意网页中的标签应该是src=”123.123.123.123”这种;快捷 *** 能够用metasploit生成。假如处于同一个局域网,则不需求任何作业。
2)发送给朋友或许妹子,更好做点其他功课,你懂的。直接运用东西的默许形式即可。
[1] [2] 黑客接单网
Extender(扩展)——能够让你加载Burp Suite的扩展,运用你自己的或第三方代码来扩展BurpSuit的功用。 要求在最新版 Chrome 触发 一份可行的简略邮件转化协议服务器用来...
我使用的复现环境是:https://pivotal.io/security/cve-2019-3799192.168.123.62为什么曾经深爱的老婆跟我分手,是因为我赌博的伤, Unit 42安全研...
/// <param name="context"></param>在JSONP callback回来的内容之前强制加上/**/,这是JavaScript注释符,应该不会影响正...
在微软今年五月份的漏洞更新安全公告中,提到了一个跟远程桌面协议(RDP)有关的漏洞。 我们之所以要在这里专门针对这个漏洞进行分析,是因为这个漏洞更新涉及到Windows XP以及其他多个Windows...
@cfreal的文章中已经说了,我这里在多说句,相关代码可以看看1和2还有SAFE_ACCPET的宏定义: 5、 安天智甲终端防御系统与安天资产安全运维系统组合使用,可以充分减少暴露面,形成威胁防御响...
黑客接单平台:如何去社工一个人? 1.知道QQ,看QQ资料 2.若是同学/同事,可看其档案 3.百度其相关名字账号 4.社工库,查账号密码 5.社工站长,whois查询 6.破解密码,除了社工库,还可...