1 yingfengi 2018-02-11 08:54:26 +08:00 via Android 没记错的话,DNS 应该是 udp53 ? 劫持目的地址 udp53,指向自己搭的 |
![]() | 2 fangdingjun 2018-02-11 08:54:44 +08:00 路由劫持 |
3 crazytroll 2018-02-11 09:16:32 +08:00 via iPhone DNS 协议就是这样的 以最先回答的为准 |
![]() | 4 leavic 2018-02-11 09:18:48 +08:00 udp 无连接可以劫持,本质就是抢答。 |
![]() | 5 WuwuGin 2018-02-11 09:19:58 +08:00 via Android 而且没记错的话 DNS 也是随机应答的,正常情况下不会总是一台服务器应答。 |
6 p64381 OP @fangdingjun 这样的话 udp dst 53 的包就出不去了吧 |
7 mt7620 2018-02-11 09:34:34 +08:00 直接把所有发到 UDP 53 的包转发到自己的 DNS 服务器就好了,不用抢答这么麻烦。 |
![]() | 8 iPhone8 2018-02-11 09:43:19 +08:00 感觉楼上计算机网络都学的特别好 |
![]() | 9 zjcqoo 2018-02-11 09:44:44 +08:00 写个工具验证下就好了。注册个域名 ns 到自己服务器上,看看返回的结果后自己服务器上有没有日志。 |
10 mengdisheng 2018-02-11 09:54:39 +08:00 问个问题 是不是用 https2.0 的话运营商很难劫持? |
![]() | 11 q397064399 2018-02-11 09:55:41 +08:00 @iPhone8 #8 劫持的话 ,其实看原理吧, 公网只谈 IP 协议,NAT 的话 一般是 UDP 发出去,然后 只有对应的 IP 的 53 端口才能响应数据回来,简单的来讲是 本地 ip udp 3123 -> 远程 ip udp 53 ,远端 ip 只能 53 端口 往回发到本地的 3123, 远端换个 ip 或者换个端口 这个 NAT 就根本通不过 |
![]() | 12 q397064399 2018-02-11 09:57:01 +08:00 @iPhone8 #8 所以总结的话 ,应该就是直接劫持了 IP 报文,然后伪造了一个 IP 报文 |
![]() | 13 misaka19000 2018-02-11 10:29:38 +08:00 via Android @mengdisheng https 还有 2.0 ?涨姿势了 |
14 mengdisheng 2018-02-11 10:32:44 +08:00 @misaka19000 写错了。。http2 好像防劫持跟 http2 没什么关系 |
15 jmhjhjhj 2018-02-11 10:33:35 +08:00 via Android 用 dnssec 岂不美哉 |
![]() | 16 goofool 2018-02-11 10:42:20 +08:00 把 dns 请求重定向到自己的服务器上就行了 |
![]() | 17 q397064399 2018-02-11 12:34:33 +08:00 @goofool #16 IP 报文 过不了 NAT,不光重定向,IP 报文的源地址 也要修改 |
![]() | 18 q397064399 2018-02-11 12:36:43 +08:00 |
![]() | 19 goofool 2018-02-11 14:01:15 +08:00 ![]() @q397064399 一般家用路由器都是 full cone,哪有过不去的 |
![]() | 21 q397064399 2018-02-11 14:10:28 +08:00 @goofool #19 那不是路由器管理权限 也能监听 公网的 udp 端口了? |
![]() | 23 ytjfmv 2018-02-11 14:15:40 +08:00 @goofool 不管通过抢答还是伪造路由,做戏肯定做全套啊,除了 ttl 和响应时间间隔不屑于 /不能伪造,其它的和真的一样,才不管你什么类型 nat 呢 |
![]() | 24 q397064399 2018-02-11 14:16:00 +08:00 @goofool #19 好吧,确实是我孤陋寡闻了,对 NAT 的模式 没了解清楚 |
![]() | 25 shiina 2018-02-11 14:25:02 +08:00 @ytjfmv 青岛移动 dns 解析 nslookup www.youtube.com 8.8.8.8 永远是 127.0.0.1 @q397064399 赞同老哥的说法, 伪造了 IP 报文 我自己本地起了一个走 http 的 dns 解析服务, 凑活能上网了, 辣鸡移动 [doge] |
26 mt7620 2018-02-11 14:27:59 +08:00 我是这么劫持内网 DNS 请求的,下面 2 条规则应用到主路由上面,不然 chromecast 这种不走默认 DNS 的设备,会被污染。 iptables -t nat -I PREROUTING -i br0 -p udp -d 8.8.4.4 --dport 53 -j REDIRECT --to-ports 53 iptables -t nat -I PREROUTING -i br0 -p udp -d 8.8.8.8 --dport 53 -j REDIRECT --to-ports 53 |
27 p64381 OP |
![]() | 30 flyingheart 2018-02-11 18:55:11 +08:00 @q397064399 大多数情况下运营商和路由器的 nat 都是不判断源 IP 的,不然可能会对某些 p2p 游戏造成一些困扰 你说的这种叫 Symmetric NAPT,现实中用的很少 |
![]() | 31 q397064399 2018-02-11 23:16:00 +08:00 @flyingheart #30 好吧,很尴尬.. 确实孤陋寡闻了 |
32 dnsstudio 2018-11-10 21:59:12 +08:00 via Android 呵呵,那是缓存劫持。我以前就是 DNS 及 teamviewer 吧主 |