发现者:360 Vulcan 团队的 Steven Seeley
版本:<= 4.12.x(最新)
日期:2021-01-08 12:49
CVE:CVE-2021-26121
店铺管理员(不要与超级管理员混淆)在编辑模板时,可以通过服务端 Smarty 模板注入获得远程代码执行。这是因为 CS-Cart 未按照文档 https://www.smarty.net/docs/en/advanced.features.tpl#advanced.features.security 中描述的方式实现 Smarty 沙箱。
这通常不是什么大问题,但在 CS-Cart 上,这意味着店铺管理员可以访问其他店铺管理员的数据(以及底层操作系统)。我想你们确实将此视为安全边界,因此你们修补了 CVE-2017-15673。
以店铺管理员身份登录后,可以编辑任意模板。在此情况下,我编辑了 my_account.tpl 模板文件,添加了 {phpinfo()}

然后,在查看首页并点击“我的账户”下拉菜单后,即可触发模板执行:

如果店铺管理员仅通过组分配拥有 Files 访问权限,而没有其他权限,也可以触发此漏洞。

以下是该漏洞影响 https://[redacted]/ 演示站点的截图:
