Wi-Jacking:无需破解就可以连接邻居的WiFi
字数 1624 2025-08-22 12:22:24
Wi-Jacking攻击技术详解
1. 攻击概述
Wi-Jacking是一种利用浏览器行为与家用路由器漏洞结合的无线网络攻击技术,可以在无需破解WPA/WPA2握手信息的情况下获取WiFi凭证。该技术主要针对家用路由器管理界面的非加密HTTP连接和浏览器的凭证自动填充功能。
2. 攻击前提条件
Wi-Jacking攻击需要满足以下5个必要条件:
- 目标网络上有活动的客户端设备
- 客户端设备曾连接过开放网络并允许自动重连
- 客户端使用基于Chromium的浏览器(Chrome/Opera)
- 客户端浏览器保存了路由器管理接口的凭证
- 目标路由器管理接口使用非加密的HTTP协议
3. 相关技术背景
3.1 KARMA/Jasager攻击
KARMA是一种无线安全评估工具集,通过以下方式工作:
- 被动监听802.11探测请求帧发现客户端及其偏好网络
- 创建与探测网络SSID相同的恶意AP
- 诱导客户端自动连接
- 捕获凭证或利用客户端漏洞
Jasager是基于KARMA的Linux固件,特点包括:
- 可在多数接入点和Atheros无线卡上运行
- 提供无线蜜罐功能
- 能配置软AP、生成任意SSID
- 提供DHCP、DNS、HTTP服务
- 捕获明文登录信息(POP/FTP/HTTP)
4. 攻击步骤详解
步骤1:诱导设备连接至攻击者网络
- 使用
aireplay-ng发送解除认证(deauthentication)请求 - 使用
hostapd-wpe发起KARMA攻击 - 使用Alfa AWUS036NHA等无线网卡
- 迫使目标设备断开原网络并连接到攻击者控制的开放网络
步骤2:触发浏览器加载特定URL
- 使用
dnsmasq和Python脚本实现触发机制 - 当检测到HTTP请求时,创建重定向到攻击者URL的响应
- 根据目标路由器类型选择特定URL和服务主页
- 可通过BSSID/ESSID识别或猜测
- 处理Captive Portal检测机制
- Windows会自动启动浏览器访问指定URL
- macOS使用隔离浏览器处理,增加攻击难度
步骤3:窃取自动填充凭证
- 浏览器执行两项关键检查:
- URL源是否与保存的路由器管理界面匹配(协议、IP、hostname)
- 页面input域是否与保存的凭证表单匹配
- 检查通过后浏览器自动填充凭证
- 针对不同浏览器的特殊处理:
- Chrome:需要用户交互(如点击页面任意位置)
- Firefox/IE/Edge/Safari:input域无法完全隐藏,需要社会工程技巧
步骤4:将目标设备释放回原网络
- 停止KARMA攻击,让设备重新连接原网络
- 通过JS加载路由器管理界面
- 使用XMLHttpRequest提交窃取的凭证登录
- 从web界面提取明文WPA2 PSK
- 若密钥被隐藏,可尝试:
- 使用已知凭证启用WPS
- 在路由器界面创建新AP
5. 攻击工具
主要使用标准Kali工具:
- aireplay-ng:用于解除认证攻击
- hostapd-wpe:实现KARMA攻击
- dnsmasq:DNS服务
- Python脚本:处理重定向和攻击逻辑
PoC脚本地址:https://gitlab.com/eth01/Wi-Jacking-PoC
6. 防御措施
-
路由器配置:
- 管理界面使用HTTPS而非HTTP
- 修改默认管理凭证
- 禁用WPS功能
- 隐藏密钥或使用强密码
-
客户端防护:
- 不在浏览器中保存路由器管理凭证
- 禁用浏览器自动填充功能
- 使用非Chromium浏览器访问敏感页面
- 禁用无线网络的自动连接功能
-
网络监控:
- 监控异常解除认证请求
- 检测伪造AP的存在
7. 总结
Wi-Jacking攻击结合了无线网络欺骗和浏览器凭证管理漏洞,提供了一种无需破解加密协议即可获取WiFi访问权限的方法。虽然需要特定条件,但由于家用路由器普遍存在的配置问题和用户习惯,实际威胁较大。防御需要从路由器和客户端两方面入手,特别要注意管理界面的安全配置和浏览器的凭证管理设置。