13.天网管理系统
查看源代码
<!-- $test=$_GET['username']; $test=md5($test); if($test=='0') -->
可以看到要求是username进行md5加密后的值==‘0’,想到php弱类型0e开头的字符串
240610708 QNKCDZO 用户名栏输入提交 得到/user.php?fame=hjkleffifer
访问http://ctf5.shiyanbar.com/10/web1/user.php?fame=hjkleffifer
得到一段代码:
$unserialize_str = $_POST['password'];
$data_unserialize = unserialize($unserialize_str);
if($data_unserialize['user'] == '???' && $data_unserialize['pass']=='???')
{ print_r($flag); }
伟大的科学家php方言道:成也布尔,败也布尔。回去吧骚年
此处出现反序列话函数unserialize() 要求user和password反序列化后==‘???’
题目给出提示bool
考虑构造两个数组使bool值为真(true跟任意字符串都弱类型相等)
a:2:{s:4:"user";b:1;s:4:"pass";b:1;}
<input type="password" name="PIN" value=""> <input type="hidden" name="showsource" value=0>可以看到有个hidden类型的showsource 值为0
使用burp抓包,将showsource值改为1
得到代码:
$a = $_POST["PIN"]; if ($a == -19827747736161128312837161661727773716166727272616149001823847) { echo "Congratulations! The flag is $flag"; } else { echo "User with provided PIN not found."; }将a的值输入PIN框得到flag。
只要在备注里面填上安女神,让卖家看到就行了... 然而听说黑帽子们掌握了GFW技术... (= =)
试了下安女神 - - 结果悲剧了。。
将 安女神 编码转换成
Unicode或者UTF-8
提交即可得到flag:
我们胜利了!flag = [[415 Unavailable For Legal Reasons]]
查看源码 <!--we hide it here! flag: CTF{xxx}-->
16.让我进去(待完善)
burp抓包,source很敏感,置为1查看到代码。
看了p神的wp 哈希长度扩展攻击
17.天下武功唯快不破(python脚本)
http://ctf5.shiyanbar.com/web/10/10.php
There is no martial art is indefectible, while the fastest speed is the only way for long success.>>>>>>----You must do it as fast as you can!----<<<<<<
提示说看看响应头,于是bp抓包 看看响应头 发现FLAG: UDBTVF9USElTX1QwX0NINE5HRV9GTDRHOlMyNUI3cUJiSw==
base64解码得到FLAG值 P0ST_THIS_T0_CH4NGE_FL4G:S25B7qBbK
尝试提交无果。后来发现FLAG值是个随机值,有效时间很短。看了wp,写python脚本。