从ofcms的模板注入漏洞(CVE-2019-9614)浅析SSTI漏洞

  1. 什么是SSTI漏洞
  2. CVE-2019-9614漏洞复现
  3. ofcms的freemarker模板源码简要分析

 

 

壹   什么是SSTI漏洞

SSTI:Server Side Template Injection   服务器端模板注入漏洞

既然是注入漏洞,那么它所运用的核心思想就和XSSSQL注入差不多,都是运用不安全的用户输入,将正常的数据接收处进行恶意输入,导致服务器将用户输入数据当成代码并执行,从而完成一些危险的行为

我们针对SSTI来看,他的主要载体是web站点MVC架构之上,也就是从用户可控的服务器模板代码处进行注入

经典MVC模式中,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。

MVC框架将用户输入通过V传给C,由控制器C进行甄别分发,看是传递给M或者是其他的C,最后将服务器返回的数据值传递给V,最后由服务器进行渲染最终返回给浏览器,呈现在用户面前;

我们这里通过控制恶意的数据传递给V,V传递到后面进行一系列的处理最终吧黑客想要的结果返回;

凡是使用模板的地方都可能会出现 SSTI 的问题,SSTI 不属于任何一种语言,沙盒绕过也不是,沙盒绕过只是由于模板引擎发现了很大的安全漏洞,然后模板引擎设计出来的一种防护机制,不允许使用没有定义或者声明的模块,这适用于所有的模板引擎。

这里贴一张图,展示了常见语言的常见模板框架ÿ

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值