主页被改过一次的人大多知道查扩展。但还有一类不是浏览器的问题:家里电脑、手机、平板一起开始往陌生站点跳,或者某些页面间歇性报错。范围一旦超出单台设备,目标就应该换到路由器上。
先按影响范围定位
| 受影响范围 | 被改的一定是 | 去哪里修 |
|---|---|---|
| 只有这一个浏览器 | 扩展、快捷方式目标里的参数 | 浏览器侧 |
| 这台电脑的所有浏览器 | 系统 DNS、HOSTS 文件、代理设置 | 电脑侧 |
| 家里所有设备,包括手机 | 路由器或光猫下发的 DNS | 网络设备侧 |
| 只有一个应用异常而浏览器正常 | 应用自己的更新服务器或证书校验 | 与劫持无关 |
这一步先做,因为它决定后面要不要折腾电脑。最快的办法:用手机连同一个 WiFi 打开同一个站点。手机也跳,就是网络设备;手机正常,回到电脑。
电脑侧:三条命令看完三个地方
# 一:网卡上配的 DNS 服务器
Get-DnsClientServerAddress -AddressFamily IPv4 | Select-Object InterfaceAlias, ServerAddress
# 二:看本机 HOSTS 文件里被人加了哪些行
Get-Content 'C:\Windows\System32\drivers\etc\hosts'
# 三:系统代理有没有被动过(AutoConfigURL 有值最要紧)
Get-ItemProperty 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings' | Select-Object ProxyEnable, ProxyServer, AutoConfigURL
三条分别对应:谁在做解析、本机有没有写死映射、流量有没有被代理拐走。结果这样读:
| 看到什么 | 含义 | 下一步 |
|---|---|---|
| DNS 是 192.168 开头(就是路由器) | 本身正常 | 但路由器里面的 DNS 可能被改过,接着查设备侧 |
| DNS 是陌生的公网地址,你没设过 | 可能被改,也可能是装机时留下的 | 改回自动获取再测 |
| HOSTS 里一堆电商和银行指向同一个 IP | 劫持或旧软件的残留 | 备份后清空该文件 |
| AutoConfigURL 不为空 | 严重。所有流量按一个脚本走 | 先记下这个地址再清掉,它是溯源线索 |
HOSTS 文件在系统盘里,普通记事本改完保存不了,要用管理员身份的终端打开。备份一份再清,万一某个本地开发用的映射还要用。
路由器与光猫:三步检查
第一步,进路由器管理页看两处:WAN 侧的 DNS 是不是设成了“自动”,LAN 侧的 DHCP 下发里有没有写死一个陌生地址。第二步,如果路由器里一切正常但设备仍被改,看光猫。光猫在路由模式下自己会下发 DNS,而且它的管理页口令往往是默认的。第三步,改完重启路由器,并在手机上重新连接确认恢复。
改之前先把当前值记下来,拍照就行。公司设备、带 VPN 的环境里,那些看起来“多余”的地址可能正是必需的。
修完以后还要补的四件事
| 修完还要做 | 建议 | 原因 |
|---|---|---|
| 改路由器管理口令 | 必做 | 能改 DNS 的人通常进得了管理页,不改口令下次还会回来 |
| 升级路由器与光猫固件 | 必做 | 公网侧利用路由器旧漏洞是主要入口之一 |
| 关掉 UPnP、WPS 和公网管理 | 建议 | 三项都是把入口递出去的默认选项 |
| 检查本机受信任根证书里有没有陌生项 | 必做 | 劫持者为了过证书校验会装自己的根证书 |
最后一句
DNS 被改这件事最容易被误处理,因为大家默认它是电脑问题。先看范围再看机器,能省掉一整个下午。最后那一项根证书检查不能省:一个能改你 DNS 的人,下一步做的就是让自己的假页面看起来是加密的。