WPAD劫持怎么玩

极客

WPAD劫持怎么玩:从原理到实战,一篇讲透

嘿,朋友们!今天咱们聊点“刺激”的——WPAD劫持怎么玩,别紧张,不是教你干坏事啊,咱是搞技术的,得知道门道才能防得住,我最近在折腾内网安全的时候,又把WPAD这个老古董翻出来研究了一遍,发现这玩意儿虽然年头不短了,但真玩起来,嘿,还挺有意思的!

WPAD劫持怎么玩

WPAD到底是个啥玩意儿?

先唠唠嗑,WPAD全称是Web Proxy Auto-Discovery,翻译过来就是“Web代理自动发现”,说白了,就是浏览器想上网,但不知道自己该走哪个代理,于是它就扯着嗓子在局域网里喊一嗓子:“哎!谁是代理啊?给我个配置呗!”

正常情况下,这活儿是靠DHCP或者DNS来找一个叫 wpad.dat 的文件,浏览器会依次尝试:先查DHCP的252选项,没有就查DNS里的 wpad.本地区域名,再不行就去解析主机名 wpad,找到之后下载那个JS脚本,里面写着“什么网址走什么代理”。

听起来挺智能对吧?问题就出在这儿——浏览器太信任这个机制了,谁答应得快,它就跟谁走。

WPAD劫持怎么玩?核心思路就一句话

你比真正的代理服务器响应得更快、更积极,浏览器就认你当老大。

具体怎么操作呢?我给你捋几个常见的玩法(纯技术讨论啊,别拿去干坏事):

DNS投毒/抢答 在内网里,你架一个DNS服务器,或者干脆用ettercap之类的工具做ARP欺骗,把 wpad 这个主机名的解析抢过来,指向你自己的机器,然后你在自己机器上跑个Web服务,放一个精心构造的 wpad.dat,浏览器一请求,嘿,拿到的是你给的脚本,里面写啥它执行啥——比如让所有HTTP流量都走你的代理,你就能中间人看个痛快。

DHCP 252选项伪造 更直接!你起一个假的DHCP服务器,或者在DHCP响应里塞个252选项,值填 http://你的IP/wpad.dat,客户端一拿,直接就来你这儿下载配置了,这招在公共WiFi场景下特别“好用”——也好防,后面说。

LLMNR/NBNS 投毒配合 Windows那套名字解析机制你懂的,LLMNR和NBT-NS广播满天飞,用Responder这类工具一抓,有人找 wpad 你就应一声,顺手把配置推过去,这套组合拳下来,内网里一大片机器就乖乖走你的代理了。

玩归玩,这些坑你得知道

我跟你说,WPAD劫持怎么玩这事儿,实操起来没那么丝滑,现代浏览器和系统都精了——Chrome、Edge默认不一定开自动检测,Windows也得看组策略,HTTPS流量你劫持了也看不了内容,顶多知道人家访问了啥域名,内网里要是有WPAD的正经配置,你抢答容易造成网络瘫痪,那动静可就大了。

所以啊,真搞安全测试的时候,这招更多是用来验证内网是否存在WPAD滥用风险,而不是真去劫持谁,我上次给一个客户做评估,就靠伪造WPAD响应,成功让几台测试机走了我的代理,报告里一写,客户脸都绿了——原来内网这么容易被人“牵着鼻子走”。

怎么防?顺手说一嘴

既然聊到WPAD劫持怎么玩,那必须得说防御,不然不成教唆了嘛,最简单的:组策略里直接把“自动检测设置”关掉,或者注册表里把 WpadOverride 设上,再狠一点,内网DNS里把 wpad 解析到黑洞地址,企业环境最好明确指定代理配置,别让客户端自己瞎找,还有,把LLMNR和NBT-NS关了,能省不少心。

最后唠两句

说实话,WPAD这协议设计之初就没怎么考虑安全,属于“信任局域网”时代的产物,现在玩WPAD劫持怎么玩,更多是安全人员用来做内部风险评估的手段,你要是运维,赶紧去查查你们内网有没有人乱应答WPAD请求;你要是安全爱好者,拿自己搭的实验环境练练手就行,别往真网上招呼——那可是违法的,咱得做个守法的技术人,对吧?

行了,今天就唠到这儿,觉得有用的话,回头我再写写怎么用Responder配合WPAD做内网诱捕,那又是另一番乐趣了,咱们下篇见!

文章版权声明:除非注明,否则均为极客网安-咸鱼原创文章,转载或复制请以超链接形式并注明出处。

目录[+]