优秀seo网站,今天最新新闻报道,情感营销经典案例,培训网址文章目录 SSTI(模板注入)1. 简介2. 成因3. 常见框架存在注入4. 判断存在SSTI SSTI(模板注入)
1. 简介
(Server-Side Template Injection) 服务端模板注入
1、使用框架#xff08;MVC的模式#xff09;#xff0c;如python的flask#xff0c;php的tp#xff0c;java的sp… 文章目录 SSTI(模板注入)1. 简介2. 成因3. 常见框架存在注入4. 判断存在SSTI SSTI(模板注入)
1. 简介
(Server-Side Template Injection) 服务端模板注入
1、使用框架MVC的模式如python的flaskphp的tpjava的spring等
2、用户的输入先进入控制器导致服务器模板中拼接了恶意用户输入导致各种漏洞
3、根据请求类型和请求的指令发送给对应Model业务模型进行业务逻辑判断数据库存取
4、通过模板Web应用可以把输入转换成特定的HTML文件或者email格式并最后把结果返回给View视图层展示给用户
2. 成因
1、使用模板来提高开发效率同时带来了安全问题
2、配置代码不规范、未过滤用户输入的数据导致模板可控
3、服务端接收了用户的恶意输入以后未经任何处理就将其作为 Web 应用模板内容的一部分
4、模板引擎在进行目标编译渲染的过程中执行了用户插入的可以破坏模板的语句因而可能导致了敏感信息泄露、代码执行、GetShell 等问题
3. 常见框架存在注入 4. 判断存在SSTI
随便访问一个不存在的路径都会有一个报错页面而且基本上都是一样的。这就是说明存在模板。 如果报错页面的url或者post数据中有一个参数你是可以控制且会显示在报错页面中那么就有可能存在SSTI模板注入。 python中{{xxx}}xxx可能会被执行。 查看源代码是否使用框架包是否使用类似flask.render.template.string()函数;在可控参数中输入类似/{{2-2}}看界面是否解析2-2。 SSTI入门篇参考链接 SSTIFlaskPython