最近,站长收了一个中兴随身WiFi。本着整活精神,上电后第一件事就是……

然而……

这能难得倒我吗?
改包,启动!
通过抓包软件,我们不难发现,修改WiFi名字的请求是POST到/goform/goform_set_cmd_process。

那么,我们试着通过修改数据包并重新发送来直接修改这个WiFi名字。
然而……事情并没有这么顺利。发出去的数据包并没有收到success的响应。

网页发出的数据包的响应内容

改包后发出的数据包的响应内容
作怪的AD?
在分析时,站长发现POST里存在一个AD参数,会不会是这个参数带有校验信息?

不过,在经过多次测试后,站长发现这个AD值并没有改变,说明AD并不是用作校验或者签名。
一个不变的包

经过多次观察,站长发现在执行这个POST请求之前,F50都会GET一个请求,并且这个请求不会像其他请求那样存在周期发送的情况。
于是,站长试着直接重放这两个请求,此时POST的响应内容里出现了那个久违的success。
成果展示
既然直接重放能够成功,那么改包也就可以实现。于是……

显示success,直接刷新网页,发现设置页面的SSID已经改变。同时,操作系统的WiFi连接页面也能搜到这个WiFi。
至此,这台中兴F50已经接受了“柚子厨”主人的结局(bushi。
至于那个password字段,柚子厨应该都知道是啥。
后记
理论上来说,直接在网页里找到SSID校验相关的部分,然后直接让它返回真,理论上也可以直接实现。只是,站长懒得去找(其实是没找到),所以就用了改包的方法实现强行在SSID里加入特殊字符。

Comments NOTHING