guest.miwifi.com小米路由器共享wifi认证

路由器 guest.miwifi.com小米路由器共享wifi认证已关闭评论25字数 2517阅读8分23秒

小米路由器的共享wifi认证域名是guest.miwifi.com,小米路由器后,小米共享wifi是默认开启的,很多人不会设置路由器导致没有将小米共享wifi关闭,所以就会存在一些的漏洞安全问题。

针对小米共享wifi的认证系统进行了抓包分析,并根据认证方式寻找到绕过方法,使得可以达到无限上网的目的。

因为小米共享wifi存在看广告3分钟体验上网的模式,但这个模式在一小时内只能使用5次,而实践发现如果在这三分钟内一直保持一个tcp连接,那么这个网络就不会断开。

guest.miwifi.com小米路由器共享wifi认证

那么又存在了一个问题,虽然网络不会断开,但是会让只有这个TCP连接有效,而其他的连接照样会断开。

故连接一个V-P.N便能解决这个问题。只需要连接了V-P.N后再保持一个TCP连接,那么V-P.N的连接也会保持。

由此得出如下脚本,这个脚本可以自动连接共享wifi并认证,也具有断线自动重连的功能。

@echo off
:restart
rasdial /disconnect               //断开现有V-P.N连接
netsh wlan disconnect                //断开现有WLAN连接
ping 127.0.0.1 -n 2 >nul                //延时1秒
netsh wlan connect name="WIFI"                //连接无限网络名为WIFI
ping 127.0.0.1 -n 10 >nul                //延时9秒让网络进行初始化
python link.py                //python脚本写的认证程序
ping 127.0.0.1 -n 2 >nul                //延时1秒
rasdial v-p.n名 用户名 密码                //连接V-P.N
python keep.py                // python脚本写的创建TCP长连接
goto restart                //自动断线重连
link.py
# coding=utf-8
import requests
import time
import datetime

print("正在启动认证程序")
response0 = requests.get("http://guest.miwifi.com:8999/cgi-bin/luci/api/misns/sns_init")
deviceid=response0.text[26:62]
clientinfo=response0.text[78:142]
times=(int(round(time.time() * 1000))-2000)
url1="http://api.miwifi.com/guest_wifi/portal_config?callback=jQuery210032440425060714295_"+str(times)+"&did="+deviceid+"&client_info="+clientinfo+"&_="+str(times+2)
url3="http://api.miwifi.com/wifirent/api/ad_apply_rent?callback=jsonpCallback&router_id="+deviceid+"&client_info="+clientinfo+"&_="+str(times+8)
response1 = requests.get(url1)
response3 = requests.get(url3)
code=response3.text.find("0")
if code >= 0:
    print("认证成功,等待连接V-P.N")
else:
    print("失败,请重启连接程序")
keep.py
import requests
import time

client=requests.session()
print("正在保持连接!请勿关闭")
headers = {'Content-Type': 'application/json', 'Connection': 'keep-alive'}
while 1:
    url="http://www.baidu.com"
    r=client.get(url,headers=headers)
    if r.status_code == 200: 
        print ("当前时间为:"+time.strftime("%H:%M:%S", time.localtime())) 
    time.sleep(1)

这样就写出了一个会一键自动连接小米共享wifi,并且会断线重连的脚本了

 

小米共享WIFI脚本

import requests
import time
import datetime
import re


def now_time():
    return datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d %H:%M:%S')


res1 = requests.get('http://guest.miwifi.com:8999/cgi-bin/luci/api/misns/sns_init')
device_id = re.findall('"deviceid":"(.*?)"', res1.text)[0]
client_info = re.findall('"clientinfo":"(.*?)"', res1.text)[0]

params = {
    'router_id': device_id,
    'client_info': client_info,
    '_': str(int(time.time() * 1000))
}

while True:
    res = requests.get('http://api.miwifi.com/wifirent/api/ad_apply_rent?callback=jsonpCallback', params=params)
    print(res.text)
    if '{"code":0,"msg":""}' in res.text:
        if '百度一下' in requests.get('http://www.baidu.com').text:
            print('[%s] 续租成功' % now_time())
            time.sleep(60 * 3)
        else:
            print('[%s] 无网络连接,重新尝试...' % now_time())
    else:
        print('[%s] 验证失败,重新尝试...' % now_time())

继续阅读
小米路由器(MIWiFi)

小米万兆路由器升级WiFi7测试

小米万兆路由器AX10000升级WiFi7后简单体验,测试手机是小米13 Pro,目前只有小米13 Pro跟小米万兆路由器AX10000才能体验。 小米万兆路由器没有升级之前,小米万兆路由器AX100...
小米路由器(MIWiFi)

小米AIoT路由器 AX3600开箱评测

小米路由器发展到今天,可以说已经初见成熟,不管是从入门级别的小户型路由器还是到大户型的硬盘级别路由器都有涉及,价格也是从几十块上探到一两千,也积累着不错的口碑,但小米路由器有个小毛病让很多老用户头痛,...
小米路由器(MIWiFi)

192.168.31.1进不去怎么办?

问:我的路由器用手机打开192.168.31.1进不去怎么办? 答:192.168.31.1是小米跟红米路由器使用的IP登录地址,请确保的路由器是小米品牌,其他品牌的路由器不是这个IP地址,所以是无法...
小米路由器(MIWiFi)

小米路由器管理密码是多少?(忘记登录密码怎么办?)

很多使用小米无线路由器的用户都会问到:小米路由器管理密码是多少?小米路由器默认密码是什么?忘记登录密码怎么办?等等类似的问题,那么今天小路简单来说说小米路由器的管理登录密码。 当我们用浏览器打开小米路...
小米路由器(MIWiFi)

192.168.31.1手机登录小米路由器界面设置

小米路由器的官网登录地址:192.168.31.1使用手机该怎么设置呢?如果家里没电脑,又想进入192.168.31.1小米路由器登录界面怎么办? 其实,我们可以通过使用手机登录192.168.31....