得到flag:flag{shrine_is_good_ssti}
攻防世界web进阶区之shrine 点开题目所给链接:首先查看它的源代码:我们首先尝试一**入,在/shrine/路径**入{{1+1}}:发现果然可以,我们还会发现他把config和self加入了黑名单 我们用搜索writeup大法给出的payload为{{get_flashed_messages.globals[‘current_app’].config[‘FLAG’]}} 即可得... [BUUCTF]第...
攻防世界web进阶区之shrine 点开题目所给链接:首先查看它的源代码:我们首先尝试一下注入,在/shrine/路径下注入{{1+1}}:发现果然可以,我们还会发现他把config和self加入了黑名单我们用搜索writeup大法给出的payload为{{get_flashed_messages.globals[‘current_app’].config[‘FLAG’]}} 即可 每天五道题 这样就...
测试:http://111.200.241.244:64870/shrine/{{7*7}} 确定存在SSTI 那么下面就是如何找调用链了。 经过测试url_for和get_flashed_messages函数可以调用,而且可以通过globals调用到current_app 这里没有什么技巧的,就是单纯的看对flask框架的熟练程度,找常用函数一个个试 以url_for举例 111.200.241.244:64870/shrine...
我们首先尝试一下注入,在/shrine/路径下注入{{1+1}} 看到用户的输入被当做代码执行了; 构造pyload: 1 /shrine/{{get_flashed_messages.__globals__['current_app'].config['FLAG']}} Flash模板注入格式:{{1+1}} //特定情况下可以当做代码执行 ...
【摘要】 【攻防世界WEB】难度三星9分:shrine、lottery 前言: 介绍: 博主:网络安全领域狂热爱好者。 殊荣:华为云博主、CSDN网络安全领域优质创作者(CSDN:黑色地带(崛起)),2022年双十一业务安全保卫战-某厂第一名,某厂特邀数字业务安全研究员,edusrc高白帽,vulfocus、攻防世界等平台排名100+、高校漏洞证书、cnvd...
shrine xctf 攻防世界 web高手进阶区 题目描述 进入题目场景,发现一段代码 经过整理后得 importflaskimportos app = flask.Flask(__name__) app.config['FLAG'] = os.environ.pop('FLAG')@app.route('/')defindex():returnopen(__file__).read()@app.route('/shrine/')defshrine(shrine):defsafe_...
访问/shrine/path,会将path作为信息传入safe_jinja()函数,其中path会被过滤掉()符号,其次对涉及到的config和self黑名单,如果path直接该关键字则会将path置为空。 0x02_2. 问题分析 既然是pyhton的框架,且涉及到路径访问,第一反应猜测是否会涉及到SSTI服务器端模板注入(Server-Side Template Injection)...
本文通过攻防世界 shrine 绕过过滤()和 黑名单中的config、self,探究 {% set %} 模板赋值、全局变量config、以及current_app.config的指向。
【攻防世界WEB】难度三星9分入门题(下):shrine、lottery 目录 五、shrine 解题方法: 过程: 六、lottery 解题方法: 过程: 五、shrine 解题方法: 1、php源码理解,SSTI(服务器端)模板注入...