实验吧writeup
- 看起来有点难分值
 
1  | 考察点:sleep()时间盲注  | 
selete被过滤了,利用slepp()进行时间盲注.关键payload:
1  | http://ctf5.shiyanbar.com/basic/inject/index.php?admin=admin' and case when(substr(password,1,1)='i') then sleep(18) else sleep(0) end and ''='&pass=9&action=login  | 
脚本如下:
1  | # http://ctf5.shiyanbar.com/basic/inject/index.php?admin=admin' and case when(substr(password,1,1)='i') then sleep(8) else sleep(0) end and ''='&pass=&action=login  | 
- 猫抓老鼠
 
1  | 在返回报看到:Content-Row: MTU0NTIyNzcyNg==  | 
- 头有点大分值
 
1  | 考点:HTTP头  | 
- 貌似有点难分值
 
1  | 考点:HTTP头,XXF  | 
- 这个看起来有点简单!
 
1  | 考点:SQL注入,  | 
1  | 利用 union 进行注入,没有过滤任何字符  | 
- PHP大法分值
 
1  | 考点:php代码审计  | 
- what a fuck!这是什么鬼东西?
 
1  | 考点:JSfack  | 
1  | 考点: php审计 + sql注入  | 
- NSCTF web200
 
1  | 考点:写脚本能力  | 
- 上传绕过
 
1  | 考点:文件上传,%00截断  | 
- FALSE
 
1  | 考点: hsah1 碰撞  | 
Guess Next Session
1
2考点:http cookie
直接将cookie清除即可Once More
1  | 
  | 
1  | 考点:考察php及即弱类型  | 
- 忘记密码了
 
1  | 考点: 源码泄露  | 
天网管理系统
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17考点: php弱类型 php反序列化
查看源码, 发现<!-- $test=$_GET['username']; $test=md5($test); if($test=='0') -->
php中的 == 为弱等于号 当比较类型不一样时会进行转换比如 '1' == '1dfsgdfsg' 结果为Ture
因此只要找到一个字符串加密结果开头为0的即可
数组也应该拿可以绕过,还没试过
回显得到/user.php?fame=hjkleffifer
访问得到:
$unserialize_str = $_POST['password'];
$data_unserialize = unserialize($unserialize_str);
if($data_unserialize['user'] == '???' && $data_unserialize['pass']=='???')
{
print_r($flag);
} 伟大的科学家php方言道:成也布尔,败也布尔。 回去吧骚年
看源码应该是php反序列
对password进行序列化
a:2:{s:4:"user";b:1;s:4:"pass";b:1;}Forms
1  | 查看源码,发现:  | 
- Guess Next Session
 
1  | 清除cookie就行了  | 
- 拐弯抹角
 
1  | 考点: 伪静态  | 
- 让我进去
 
1  | 考点: Hash拓展长度攻击原理  | 
- 天下武功唯快不破
 
1  | 查看源码发现:  | 
- 简单的sql注入
 
1  | 输入1' or '1'='1  | 
- 简单的sql注入之2
 
1  | 测试select  | 
- 简单的sql注入之3
 
1  | EXP报错  | 
- 因缺思汀的绕过
 
1  | 
-