爆破
web21
输入用户名和密码 admin 123456
抓包可以看到会把[用户名:密码]加密成base64
payload type使用Custom iterator
第一段为admin
第二段为:
第三段为字典
加密成base64形式 并取消urlencode编码
web22
web23
对两位数进行md5加密
int不能转换字母 遇到字母会报错
1 | import hashlib |
web24
web25
题目源码
1 |
|
通过源码可以得知
先利用flag当种子
1 | mt_srand(hexdec(substr(md5($flag), 0,8))); |
然后用传参的r减去第一个随机数
1 | $rand = intval($r)-intval(mt_rand()); |
这时候我们传r=0得到第一个随机数
利用php_mt_seed工具爆破种子
前面抓包可以知道php版本为7.3
所以种子应该是这三个其中之一
1 | $rand = intval($r)-intval(mt_rand()); |
先传入rand等于第一个随机数 保证其减去本身$rand=0
if中!0为真 脚本继续运行
更改cookie为后两个随机数之和 然后抓包更改cookie
经过实验 第二个种子读出了flag
web26
下载录取名单
进入信息查询api
http://632e82ba-2bda-495b-8e7d-07bcb013b353.challenge.ctf.show:8080/info/checkdb.php
构造js里看到的用户名和密码
抓包
构造身份证中缺少的出生日期
爆破得到返回信息
然后登陆得到flag
web27
选择Cluster bomb攻击模式
删除2.txt 增加两个爆破变量
爆破得到flag
###