1.BUU WarmUp
查看源码发现
访问发现源码
提示有一个hint.php,访问看看
尝试访问ffffllllaaaagggg.php,无
访问根目录
?file=hint.php%253F/../../../../ffffllllaaaagggg
发现flag
2.南邮CTF 层层递进
打开题目
翻找半天也没发现啥,F12查看网络
找的找的发现了一个奇怪的地方
有一个404.html
访问看一下,果然
查看源码
发现flag...
3. 南邮CTF 文件包含
进入题目,构造?file=php://filter/read=convert.base64-encode/resource=index.php查看源码,注意这里要编码
?file=php://filter/read=convert.base64-encode/resource=index.php
得到base64后的源码,解码
直接解出flag...这些题还都挺简单的
4.南邮CTF COOKIE
打开题目发现提示要登陆
但题目提示和cookie有关,这里F12查看发现Login值为1
用hackbar赋值
得到flag
5. 南邮CTF Mysql
打开题目提示查看robots.txt
访问sql.php。但是没有出现内容
给id赋几个值,发现都没有,这里写个脚本判断
import requests
url = 'http://chinalover.sinaapp.com/web11/sql.php?id='
for i in range (1000,1100):
req = requests.get(url+str(i))
print url+str(i)
print req.content
发现在1024的时候有内容,这里尝试注入,各种输进去都不得行...
看了wp发现是mysql精度问题,长知识了
输入id=1024.00000001等float类型的数即可满足if条件,得到flag。
6. 南邮CTF GBK Injection
加单引号,“ ' ”,发现被\转义了
使用%df'
宽字节注入,报错了,输入id=1%df' and 1=2 %23
显示正常,
输入id=1%df' and 1=2 %23,报错
判断列,第三列时报错
发现显示位,
常规payload:?id=1%df' and 1=2 union select 1,flag from ctf4 %23 ,得到flag
7.南邮CTF /x00
打开题目看到源码
先看看这里面函数的意思
ereg()函数用指定的模式搜索一个字符串中指定的字符串,如果匹配成功返回true,否则,则返回false。搜索字母的字符是大小写敏感的strpos(string,find,start)
,strpos()函数查找字符串在另一字符串中第一次出现的位置(区分大小写)。即strpos ($_GET['nctf'], '#biubiubiu')
函数要求nctf变量中需要包含'#biubiubiu'字符串,才能返回flag。
根据题目提示,这里用%00截断试试
ereg()在%00处后会停止这里即赋值为?nctf=1%00%23biubiubiu,这里注意要把#转码
得到fla
8.南邮CTF bypass again
很明显的MD5碰撞,这里就用我常用的
a=240610708&b=QNKCDZO,
提交即可得到flag
9.南邮CTF 变量覆盖
发现sou'rce.php,打开发现关键代码
解释一下几个函数
extract()
函数的作用:从数组中将变量导入到当前的符号表,可以看到这里的代码为:extract($_POST)
,即将POST的参数导入当前的符号表,由于extract()函数存在变量覆盖漏洞,所以提交post参数:pass=123&thepassword_123=123
或者pass[]=&thepassword_123
,即将两个变量的值修改成相同的,即可得到flag.
10.南邮CTF SQL注入1
查看源码
发现
$sql="select user from ctf where (user='".$user."') and (pw='".$pass."')";
即这里需要闭合')
构造admin')#
得到flag
一圈做下来,除了有些进不去,这些题还是比较简单de ....