CTF练习平台——web(2)

1、SQL注入1


CTF练习平台——web(2)_第1张图片

题目给出了部分代码,发现存在sql注入和xss注入

其中strip_tags()函数的用法:

strip_tags() 函数剥去字符串中的 HTML、XML 以及 PHP 的标签。

注释:该函数始终会剥离 HTML 注释。这点无法通过allow参数改变。

注释:该函数是二进制安全的。

利用该函数可以在关键词中加如HTML语句,绕过SQL关键字,利用strip_tags()函数去掉HTML实现SQL注入


CTF练习平台——web(2)_第2张图片
and被检测为敏感关键字

在and中间加入HTML标签<>,即可以绕过关键字防御


CTF练习平台——web(2)_第3张图片
页面返回正常

构造payload获得当前使用的数据库:

CTF练习平台——web(2)_第4张图片
当前数据库:sql3

获取数据:

CTF练习平台——web(2)_第5张图片
KEY{c3d3c17b4ca7f791f85e#$1cc72af274af4adef}

2、你必须让他停下

CTF练习平台——web(2)_第6张图片

这题通过burpsuit抓包,多forward几次,一个个发到repeater里面发送访问包


CTF练习平台——web(2)_第7张图片
flag{dummy_game_1s_s0_popular}

3、文件包含

CTF练习平台——web(2)_第8张图片

eval()函数:

eval() 函数把字符串按照 PHP 代码来计算。

该字符串必须是合法的 PHP 代码,且必须以分号结尾。

如果没有在代码字符串中调用 return 语句,则返回 NULL。如果代码中存在解析错误,则 eval() 函数返回 false。

$_REQUEST():

$_REPUEST 是接收了 $_GET $_POST $_COOKIE 三个的集合

可以直接print_r($_REQUEST) 看看效果

构造payload:

http://120.24.86.145:8003/?hello=);print_r(file(%22./flag.php%22));//


CTF练习平台——web(2)_第9张图片
flag{bug-ctf-gg-99}

4、变量1

CTF练习平台——web(2)_第10张图片

根据提示flag在变量中,题目给出了源代码,这里想到可以用超全局变量GLOBALS($GLOBALS 是PHP的一个超级全局变量组,在一个PHP脚本的全部作用域中都可以访问。)

构造payload:

http://120.24.86.145:8004/index1.php?args=GLOBALS

CTF练习平台——web(2)_第11张图片
flag{92853051ab894a64f7865cf3c2128b34}

5、秋名山老司机

CTF练习平台——web(2)_第12张图片

2秒内不可能算出答案,但是可以用python脚本跑

编写python脚本

CTF练习平台——web(2)_第13张图片

执行python脚本,得到flag:

Bugku{YOU_DID_IT_BY_SECOND}

你可能感兴趣的:(CTF练习平台——web(2))