Agent Skills
返回列表
🔒

服务端模板注入

IT 运维与安全 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/ssti-lr-syxh。

技能介绍

要解决的问题

当 Web 应用把用户输入送进模板引擎渲染时,攻击者可通过 {{ ... }} 之类的表达式触发服务端执行,形成 SSTI。这类问题很难靠功能测试穷尽,因为引擎方言不同、回显位置不同、过滤条件不同,载荷往往不能直接复用。排查时真正的难点不是“会不会写 payload”,而是如何确认输入是否进入模板上下文、目标引擎是什么、是否处于盲注场景,以及绕过措施是否只是表面过滤。

技能如何工作

该技能将 SSTI 测试整理成一份可执行清单,核心能力包括:模板引擎识别,覆盖 Jinja2、Twig、Freemarker、Pebble、Velocity;使用 Polyglot 探测载荷判断输入是否进入模板上下文;针对具体引擎给出 RCE 载荷思路;处理无回显或间接反馈的 blind SSTI;以及在存在过滤时评估绕过方式。使用时应按清单顺序推进:先确认上下文与注入点,再做引擎识别和 Polyglot 判定,随后根据引擎选择验证载荷,最后在盲注场景中设计带外或间接确认方式。每完成一项应记录状态,并根据结果给出下一步建议。

适用边界与注意点

它面向授权安全测试和漏洞研究中的 Web 应用 SSTI 评估,不是通用 Web 扫描器,也不替代对业务逻辑、认证和授权边界的判断。执行前应明确测试范围与授权;载荷可能触发命令执行、文件读写或服务中断,需在隔离环境验证。若目标存在输入过滤、沙箱、日志监控或速率限制,应把绕过测试视为风险操作,并优先使用无害探针确认行为。

使用场景

  • 在Web应用渗透测试中,需识别目标使用Jinja2还是Twig模板引擎
  • 代码审计后用户输入可能进入模板上下文,验证是否存在SSTI
  • 服务端无回显的模板渲染场景,设计Polyglot探针检测注入点
  • 模板引擎启用过滤机制时,测试特定绕过载荷能否执行

适合人员

  • Web安全测试工程师,需系统排查应用的SSTI漏洞
  • 渗透测试人员,确认目标模板注入点及利用可行性
  • 后端开发工程师,理解模板渲染流程避免安全风险
  • 安全研究人员,跟踪不同模板引擎漏洞利用技术