浙江移动劫持 aliDNS 的解决方法之一

2017-01-21 22:50:17 +08:00
 KCheshireCat

发现有劫持之后就开始抓包,发现抢答的回应非常像正常的回应,很难找到什么特点来过滤.
但是反过来发现 aliDNS 自己的回应很有特点:没有填写校验和,UDP 的校验和是可选的.
那么接下来的工作就简单了,我就做了点微小的工作

把 aliDNS 地址回应的包有校验和的包全部丢弃.

iptables -A INPUT -s 223.5.5.5 -p udp --sport 53 -m u32 ! --u32 "0x0>>0x16&0x3c@4&0xFFFF=0" -j DROP
iptables -A INPUT -s 223.6.6.6 -p udp --sport 53 -m u32 ! --u32 "0x0>>0x16&0x3c@4&0xFFFF=0" -j DROP
iptables -A FORWARD -s 223.5.5.5 -p udp --sport 53 -m u32 ! --u32 "0x0>>0x16&0x3c@4&0xFFFF=0" -j DROP
iptables -A FORWARD -s 223.6.6.6 -p udp --sport 53 -m u32 ! --u32 "0x0>>0x16&0x3c@4&0xFFFF=0" -j DROP
11236 次点击
所在节点    DNS
38 条回复
roist
2017-01-21 23:27:03 +08:00
然后铁通系统升级了
JackyBao
2017-01-21 23:45:51 +08:00
好奇问下, dns 劫持表现出来是什么样子的?完全没概念呢,谢谢!
KCheshireCat
2017-01-22 00:15:17 +08:00
@JackyBao

最明显的就是访问不存在的域名会被导向"错误页"

网页轮回跳转什么的
lslqtz
2017-01-22 00:19:02 +08:00
建议将地址走 VPS 隧道而不是直接丢弃。
KCheshireCat
2017-01-22 00:22:00 +08:00
@lslqtz

把伪造的包就没什么问题了啊,正常的包也会到达

如果走隧道查询,CDN 是个问题啊
KCheshireCat
2017-01-22 00:22:42 +08:00
@lslqtz

"把伪造的包丢弃就没什么问题了啊" 漏字了
etc0
2017-01-22 00:33:12 +08:00
今天晚上杭州移动的的缓存服务器貌似炸了吧,淘宝 天猫 百度啥的全都打不开,然后路由器设置了下让所有 dns 查询走 vpn 就正常了= = 然后再分享一个炸掉了的移动缓存服务器 ip 111.0.93.187 。
KCheshireCat
2017-01-22 00:38:34 +08:00
@etc0 移动的缓存服务器一直都很烂,我是前几天发现直播一直看不了,
然后发现移动用 DNS 把 crossdomain.xml 文件的域名解析劫持了,缓存又坏的.
redsonic
2017-01-22 01:05:16 +08:00
没填校验和说明不是国家队干的,投诉也解决不了
lslqtz
2017-01-22 01:27:01 +08:00
@KCheshireCat 直接丢弃感觉提示不太对 如果正常包被劫持到他们的缓存话...
KCheshireCat
2017-01-22 01:39:25 +08:00
@redsonic

没有校验和是好事啊,aliDNS 的正确的包没有校验和,UDP 没有校验和也是可以的

有校验和的反而是劫持的包...
KCheshireCat
2017-01-22 01:45:27 +08:00
@lslqtz

你理解错了,没有人会用这样的缓存服务,只有运营商会这样搞.

aliDNS 正常的响应都是没有校验和的,有校验和的都是伪造的包,而且应答的劫持地址还连不上.
redsonic
2017-01-22 01:51:28 +08:00
@KCheshireCat 我看错了。 另外如果是劫持的,然后还没有校验和的,一般都不是运营商的官方行为,有也是内鬼。
lslqtz
2017-01-22 02:45:59 +08:00
@KCheshireCat 你也说了 只有运营商会这么搞
要是运营商劫持你设定的 dns 并返回他们的缓存
那么你丢掉后 dns 整个就坏掉了...
KCheshireCat
2017-01-22 03:16:02 +08:00
@lslqtz

做劫持的通常是一个旁路设备,参考某国家级防火墙.这些设备通常不会直接拦截或者修改包,应为开销很大.

也就有后门的路由器或者公司内网的上网行为审计这样的设备才会做得很彻底.

我是做了抓包发现劫持包之后会有正确的包到达才会这么做的.有的时候正确的包还比劫持包快...
Fulminit
2017-01-22 07:54:21 +08:00
浙江移动 换了 AliDNS 之后某些网站打开巨慢...(或者根本就打不开)
anubu
2017-01-22 08:30:21 +08:00
windows 上能解决这个问题不能,路由器没刷机。被浙江移动劫持的不行不行的,稍微冷一点的域名第一次都打不开。
bigw
2017-01-22 10:12:41 +08:00
这些运营商恶心得一逼啊 我的 app 有个自动更新的功能 结果用户下载下来都是些乱七八糟的 app
sorcerer
2017-01-22 10:14:27 +08:00
好方法,我是用 unbound 采取 tcp 形式发送 dns 请求
sorcerer
2017-01-22 10:27:34 +08:00
@etc0 原来是缓存服务器炸了,它炸了才让我发现了移动的 dns 劫持

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/336129

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX