当前位置: 首页 > news >正文

web攻防之SSTI 注入漏洞

知识简介 : 模版引擎和框架的区别

ssti的中文翻译 : 服务端的模版的注入 

模版引擎 :前端的用于装饰优化html的模版 最简单的就是在腾讯会议中的聊天功能

框架 : 这个是一套独立存在的逻辑 如TP他是一个区别于php语法的后端逻辑(框架的作用就是 优化后端的功能和安全性)

两者的共性就是为了省时

怎么发现对方的web套用了模版引擎

主要是看页面的规律性和是不是非常的板正,大部分的web都是套用的模版 手写的工程量是非常大的

漏洞的原理

这个就类似于 框架的rce 模版引擎会有独特的语法,如果对方的模版引擎中有写入的这个功能,那就会导致恶意的模版引擎的语法的写入,再者没有对其进行过滤从而导致了,ssti注入

漏洞利用的逻辑思路

1、找寻是什么模版引擎

这个是模版对应的语法,所以我们的思路就是先找对方是什么语言写的 web 然后在语言中进行全扫即可,如对方使用的是php 那就是把php类的所以语法进行写到注入点进行测试

ssti的漏洞的场景就是需要在有输入的地方,并且这个输入之后会有输出的回显,这样就能进行操作

案例一:

实验:基本服务器端模板注入 |网络安全学院

靶场要求是让我们使用模版的rce删除morale.txt

我们随便点击一个商品 

发现回显的地方  这个英文的意思是商品缺货 然后这个注入点让我们想到的漏洞 1、xss 2、sql注入

然后就是我们的模版rce

工具介绍 : SSTImap

安装一下依赖

使用 :

python sstimap.py -u "https://0a6800de041a131880a644a800e2001d.web-security-academy.net/?message=*"

这个工具的用法和sqlmap差不多  这个就表示成功 然后判断ssti是ERB类型的

这个工具有个不好的地方就是不会保留缓存

我们可以指定类型之后使用他的后渗透模式,也可以自己构造,看着上面的模版图

erb语法  

<%= exec 'ls -al' %>

然后就发现我们的语句被嵌套到了这个模版中去 , 然后进行了前端的回显

或者使用工具的自动模式 :

第二个靶场

实验:基本服务器端模板注入(代码上下文) |网络安全学院

这个就比较隐晦了  不是那种明显的,这个其实是模版的语法用于post包中

登录提示给的账号密码之后,随便进入到一个文章中去 

发现有个评论的功能 : 联想到ssti的前端模版就是一些输入框,评论区或者是聊天的地方

我们先对评论进行ssti试一下 先抓个包 :

我们首先猜测的是在 comment 然后这个内容会自动的加载到前端的模版中去

最后测试发现失败了,那就联系到名字也是会在前端进行回显

测试修改名字​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

然后返回我们的评论区 :

发现 7*7被执行了 所以这个就是注入点

最终的payload 
blog-post-author-display=user.name}}{%25+import+os+%25}{{os.system('ls%20-al')

这个不能直接使用工具测试出来,手工是最好的

实验三

Login - PortSwigger

这个靶场模拟的是 后台ssti提取的一个场景

后台有个模拟修改前端的代码一个功能

可以进行编辑然后 就能在前端回显

payload :

模版 :Freemarker:
<#assign test="freemarker.template.utility.Execute"?new()> ${test("ls")}

之后这里就会出现

相关文章:

  • web第九次课后作业--SpringBoot基于mybatis实现对数据库的操作
  • JavaScript 数据处理 - 数值转不同进制的字符串(数值转十进制字符串、数值转二进制字符串、数值转八进制字符串、数值转十六进制字符串)
  • 学习资料搜集-ARMv8 cache 操作
  • Go Modules 详解 -《Go语言实战指南》
  • CentOS 7镜像源替换
  • Ntfs!NtfsLookupAllocation函数分析之读取runs的一个例子
  • CentOS 7.9 安装 宝塔面板
  • 阿里云百炼全解析:一站式大模型开发平台的架构与行业实践
  • 【LUT技术专题】图像自适应3DLUT代码讲解
  • 第六章 缓存一致性协议 A Primer on Memory Consistency and Cache Coherence - 2nd Edition
  • c++ algorithm
  • mac下通过anaconda安装Python
  • 机器学习——主成分分析PCA
  • Oracle 用户/权限/角色管理
  • 51c大模型~合集134
  • 二分查找的边界艺术:LeetCode 34 题深度解析
  • Dify-5:Web 前端架构
  • 登录的写法,routerHook具体配置,流程
  • 算法/机理模型演示平台搭建(二)——算法接口部署(FastApi)
  • 帝可得 - 策略管理
  • 政府采购网云平台/汕头搜索引擎优化服务
  • 永久域名免费注册网站/深圳网络营销渠道
  • 网站制作 流程/头条搜索
  • 域名服务网站建设科技公司/什么叫营销
  • 网站设计如何自学/四川百度推广排名查询
  • 上海通信管理局网站/做任务赚佣金的平台