博文头图
记一次北方某省联通HTTP劫持分析与投诉经历

记一次北方某省联通HTTP劫持分析与投诉经历

背景

博主早在去年(23年)夏天在同省的隔壁市学习进修时就发现某些网站在联通4G下会被劫持,跳转到一些令人不堪入目的网站,这些网站非常逆天,不限于sex, gamble, aphrodisiac。碍于当时时间紧任务重,就并没有深入分析,还以为是被访问的网站被挂了马,就没有在意。

农历新年年前我在访问自己搭建的smokeping时,也出现了同样的情况,这让我觉得很是蹊跷,随即开始进行排查。彻底的排查服务器是否被入侵,有无被挂马,结果并未发现异常;那就只能是中间的链路出现HTTP劫持问题了。排查到后期,甚至博客主站blog.xmgspace.me都开始跳转。本文就记录本次被劫持的排查分析与投诉经历。

前排提醒:如果你有网站的话,有条件一定要配置SSL并开启HSTS,最大程度上减少被劫持事件的发生。

现象

被劫持的现象如下:

  1. 被劫持的网站的服务器都在境外,位于境内的服务器目前没有观测到被劫持的情况。估计也是运营商在接到投诉时为了好甩锅给"境外小网站"。目前我发现被劫持的网站:hostloc.com, www.macbl.com, www.th-sjy.com, www.studyofnet.com, gubo.org, *.xmgspace.me(本站已开启HSTS,复现难度更大,若想复现建议使用前者)
  2. 仅仅在手机浏览器进行劫持,电脑则不会劫持。估计是做了UA判定,切换浏览器换UA更好复现。
  3. 同一个公网IP每天只会劫持一次,开关飞行模式/宽带重新拨号获取新的IP后能更好复现。
  4. 同一IP劫持刷新时间似乎在每天0点,因此早上比较容易复现。
  5. 劫持方式为HTTP劫持,修改DNS或启用DOT/DOH无效。手动输入HTTPS开头的网址即可避免被劫持,这就是为什么要启用HSTS的原因。

其他人遇到的相同情况,最早可以追溯到2020年:

被劫持的数据包如下,和前人遇到的情况不能说非常相似,简直是一模一样!

下图为被劫持到的不良网站落地页之一。访问频率太高?错 是劫持频率太高!电信宽带可以直接打开,联通4G要输入验证码,足以说明问题之严重性。

排查过程

Step1. 软件安装

电脑安装WireShark备用。我的手机获取了Root权限,抓包相较于未Root的设备要简单很多。手机安装Termux,并下载TCPdump二进制文件待用。(怎么跟教做菜一样)

#Termux Root环境下下执行
su
curl -O https://www.androidtcpdump.com/download/4.99.4.1.10.4/tcpdump
chmod +x tcpdump #授予可执行权限
tcpdump -i any -p -s 0 -w cu.pcap #监听所有网卡,并导出

没有Root权限的话,建议手机开热点,电脑连接热点开模拟器,利用WireShark监听模拟器网卡抓包,这样系统环境更像手机。

Step2. 抓包实战

手机/模拟器上换用不同的浏览器打开上文中提到的被劫持的网站,注意不要使用https访问;开关飞行模式获取不同IP提高复现概率,实在不行就第二天一早再试。

Step3. 分析

电脑上使用WireShark打开导出的pcap文件进行分析:先找到目标网站的源IP,根据IP先进行一次筛选;再看TTL值,中间异常劫持节点的TTL值会不正常,例如正常情况下TTL为49,但是可以看到有一处返回的TTL值达到了194,说明这个包有问题。下图为抓到的问题包。

在有问题的包上右键点击,菜单中选择追踪流->HTTP Stream,追踪有问题的数据包。一目了然。

结合对几个网站的路由汇总,也可以得出结论:省内联通骨干网处对流量进行了劫持。目前以我的能力只能抓到有问题的数据包,异常包的TTL进行了伪装,否则就可以倒推出具体那个路由节点有问题,那就是板上钉钉的实锤了。大致的方向是使用Scapy等工具对发出数据包的TTL进行修改,根据TTL不同找到具体的路由节点,欢迎有能力的朋友们进行尝试。

Step4. 投诉

如果你也遇到了被HTTP劫持的情况,并且找到了返回异常TTL的数据包,就可以进行投诉了。根据前人的经验,投诉后联通当然是不承认他们有问题,但过一段时间之后自己的4G上网/宽带上网就再也没有被劫持。毕竟运动员和裁判是一个人,蛋糕又太大了,有权限做这个的人当然不愿意放手;机房的人哪怕不承认,也还是会悄悄把你的手机号加入白名单中,或许是为了降低再次投诉的概率。作为一个普通的用户,只能做到这里了;作为站长,启用HSTS吧。

我已经进行了投诉,未来几天再看看有没有劫持现象再次发生。

后续

2024.2.27 update:联通工作人员进行了回访,我把抓包文件和相关录屏提交给他们,他们转交技术部门。能否得到解决呢?只能拭目以待了。不过截至目前,仍会进行劫持。


2024.4.10 update:截至目前,本站仍然在被劫持中,联通方面没有任何回应。此外,我还发现了更多被劫持的网站,例如www.studyofnet.com,已经更新到文中。被劫持的网站有两个最重要的相同的特性——第一,服务器位于境外;第二,网站上或多或少有些敏感内容。例如:

  • hostloc.com:全球主机交流论坛,有部分敏感帖子
  • www.macbl.com:Mac软件分享,有破解软件
  • www.th-sjy.com:Windows软件分享,有破解软件
  • gubo.org:境外服务器测评

联通内鬼很聪明,他们知道这些网站的站长好欺负,不能拿联通公司怎样,因此回访时,他们建议我“报警”,贼喊捉贼;巨大的利益面前,铤而走险的想法很自然。缅北果敢四大家族面对北方大国妄想抵抗,下场是什么都清楚;同理,如果不出重拳,联通内鬼这样的灰黑产势必会长期存在。

忠!诚!


2024.4.19 update:逆天,最近发现朝鲜外文出版社都被劫持了,不能再犹豫了,一定要出重拳,将军,请下命令吧! 录屏视频在此

参考资料

某电商网站流量劫持案例分析与思考 - 博客 - 腾讯安全应急响应中心

第32篇:某运营商链路劫持溯源异常路由节点(上篇) 微信公众平台

本文永久链接:https://blog.xmgspace.me/archives/anti-china-unicom-http-hijack.html
本文文章标题:记一次北方某省联通HTTP劫持分析与投诉经历
如无特殊说明,只要您标明转载自Xiaomage's Blog,就可自由转载本文。禁止CSDN/采集站采集转载。
授权协议:署名-非商业性使用-相同方式共享 4.0(CC BY-NC-SA 4.0)

评论

  1. 自镇流高压汞灯
    Windows Firefox
    已编辑
    2 月前
    2024-2-27 22:35:05

    因此开启浏览器的HTTPS only功能很重要,火狐很早就推出这个功能了。青木这个万年HTTP的站终于也在去年启用HTTPS了。宽带也能复现的话,就没必要用热点。没必要用模拟器,也没必要切换浏览器,用切换UA的插件就行了:https://addons.mozilla.org/zh-CN/firefox/addon/user-agent-string-switcher/ 同时使用无痕模式,以确保没有残留的缓存和曲奇。你之前怎么关闭HSTS了?

    • 博主
      自镇流高压汞灯
      Windows Chrome
      2 月前
      2024-2-28 21:32:37

      之前可能是为了调试方便还是什么原因给关闭掉了,现在就又重新启用了。
      用模拟器是因为可能还有其他方面判断是否来自移动设备,而且根据模拟器抓包网卡简单一些,直接抓物理网卡的话无关的数据包太多。

      • 自镇流高压汞灯
        Xiaomage
        Windows Firefox
        2 月前
        2024-2-29 15:45:52

        你的回复通知邮件没有正常显示。

        • 博主
          自镇流高压汞灯
          Windows Chrome
          2 月前
          2024-3-01 13:02:34

          已经修复,感谢提醒!问题最早可以追溯到半个月前,是升级插件导致的,现在已经回退了插件版本,已经恢复正常了。升级WordPress到6.4版本没少花力气,以后还是能用就少升级(

发送评论 编辑评论


				
上一篇
下一篇