
位置混乱看不太清直接查看源代码

引入两个模块,一个flask,一个os。
然后用app.route装饰器传了两个路径,测试访问一下这个路径

发现显示到了上面,尝试模板注入

如果没有黑名单的时候,我们可以传入 config,或者传入{{self.dict}}获取,但当这些被过滤的时候,current_app,这是全局变量代理,查看他的config即可,源代码会发现这里过滤了()和把’config’,’self’加入了黑名单
那么原来格式的模板注入就不能用了,
这里可以利用两个python自带的函数来进行注入
url_for这个可以用来构造url,接受函数名作为第一个参数
get_flashed_message()是通过flash()传入闪现信息列表的,能够把字符串对象表示的信息加入到一个消息列表,然后通过调用get_flashed_message()来取出。
/shrine/{{url_for.globals}}

在里面打开current_app
{{url_for.__globals__[‘current_app’].config}}
另外一个方法 get_flashed_messages利用信息闪现的方法构造一样(只能显示一次)
/shrine/{{get_flashed_messages.globals[‘current_app’].config}}