CTF-攻防世界Web题目3


一、easytornado

题目:



解题基础
服务端模板注入攻击 (SSTI) 之浅析
python SSTI tornado render模板注入
SSTI模板注入

解题方法:
1、从上图可以看出,那个hash值,只要按hint.txt要求方法构造出来,就可以访问到内容;
2、首先尝试一下将file改成/fllllllllllllag,得到如下界面

3、welcom.txt中提示存在模版注入,那么可能可以执行部分语句:

4、输入如下url,可得到

http://111.198.29.45:30487/error?msg={{handler.settings}}


这样就拿到了cookie_secret
5、在md5的加密网站先进行/fllllllllllllag

按照md5(cookie_secret+md5(filename))格式进行加密:

6、访问对应的url

7、得到flag

二、ics-06

题目:

解题方法:
1、看到URL中的”index.php?id=1”,就开始尝试注入,但是除了数字其他的都不能用,输入其他类型的字符,会被重定向回id=1;这时用burpsuite抓包爆破一下
2、id到2333的出现不一样的内容

三、lottery

题目:

一个比较好玩的题目,里面注册完可以买彩票,猜对之后有奖金,可以买flag,这样思路可能就是要挣钱买flag了

解题方法:
1、查看robots.txt,发现有git目录,有Git源码泄漏

2、用这个工具可以找到源码,GitHack(下载地址

3、先抓取一下点击buy按钮的网页包

4、 $numbers 来自用户json输入 {“action”:”buy”,”numbers”:”1234567”},没有检查数据类型。 $win_numbers 是随机生成的数字字符串。

5、使用 PHP 弱类型松散比较,以”1”为例,和TRUE,1,”1”相等。 由于 json 支持布尔型数据,因此可以抓包改包,构造数据

已经有这么多钱了hhh

再来几次就够了
6、买到flag了

四、mfw

题目:

解题方法:
1、根据上图可以看出有个flag的文件在目录下,但是无法读取,被执行了,然后可能有git源码泄漏
用上面那个题目的工具进行渗透

成功拿到源码,但是flag.php里面啥也没有

2、只有index.php可以利用,所以在index.php里找bug

由两个关键地方,file直接拼接,不做任何检查,可以根据第二个红框地方进行恶意payload构造;
assert() 检查一个断言是否为 FALSE
strpos() 函数查找字符串在另一字符串中第一次出现的位置。
file_exists() 函数检查文件或目录是否存在
利用上面的信息构造payload:

page=123') or system("cat templates/flag.php");//
因为strpos函数里只有template/123,所以会返回false,之后or执行system命令,//表示注释
file_exists函数执行同理

about.php', '123') === false and system('cat templates/flag.php') and strpos('templates/flag
and前面的一定会返回true,之后执行命令,file存在那儿会失败


上述两种办法来自博客:
博客1
博客2
还有很多payload构造方法,可以自己尝试一下
3、奉上flag
cyberpeace{56445c400d4b2305d1339a5266a152ba}

五、shrine

题目:

解题方法:
1、分析代码

2、判断是否存在模版注入,url输入/shrine/14

3、如果没有过滤可以直接即可查看所有app.config内容,但是这题设了黑名单[‘config’,‘self’]并且过滤了括号。
python还有一些内置函数,比如url_for和get_flashed_messages
4、输入/shrine/{{url_for.__globals__}}查看

看到current_app意思应该是当前app,那我们就当前app下的config:
5、输入/shrine/{{url_for.__globals__['current_app'].config}}查看flag

6、输入/shrine/{{get_flashed_messages.__globals__['current_app'].config}}查看


文章作者: P1n9
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 P1n9 !
评论
 上一篇
CTF-攻防世界Web题目4 CTF-攻防世界Web题目4
一、fakebook题目: 大佬解题方法:解网鼎杯一道web题(fakebook)BUUCTF |Fakebook(博客样式很漂亮)csrf以及ssrf 解题方法:1、自己上来也是查看了robots.txt,发现有文件,下载后 <?p
2020-04-14
下一篇 
CTF-攻防世界Web题目2 CTF-攻防世界Web题目2
一、PHP2题目 解题方法这道题就不知道怎么找到这个index.phps的,我看的题解,直接就说这个源代码泄漏了;1、访问index.phps查看源代码2、从代码中可以看出,id参数需要经过两次url编码3、因为%的url编码为%25,所以
2020-04-14
  目录