[BJDCTF2020]The mystery of ip1

提示

  1. ssti模板注入
  2. head头x-forwarded-for

每一次做题的最开始流程都大致因该是

  1. 信息收集
  2. 找可以操控的地方

查看hint页面的源代码又发现它提示说

####你知道为什么会知道你的ip吗

查看flag页面

从刚才给我的提示以及他这里显示的我的ip,大概找到了我可操作的可控点

既然它会读取我访问它的ip并显示,那么我可以通过修改我的ip以达到执行命令的效果

这里抓包使用x-forwarded-for验证

从它返回的页面来看是可以利用的

现在就是判断这里应该怎样去利用

从经验上来判断这里很像是ssti模板注入

尝试验证一下

这里传入了${7*7}页面返回了执行过后的结果说明这里存在ssti注入

!!!!如果报错或者不执行也不一定是错的,最后会讲解

现在判断是那种模板

这里传入a{*comment*}b后回显ab,说明这里是smarty模板

应为smarty是php的模板所以直接尝试rce

{system('ls')}

这里回显出flag.php文件,直接cat

这里并没有回显

猜测这里只是一个障眼法

看一下跟目录

出现flag,这里应该就没问题了

获得flag

SSTI模板注入

SSTI就是服务器端模板注入

当前使用的一些框架,比如python的flask,php的tp,java的spring等一般都采用成熟的的MVC的模式,用户的输入先进入Controller控制器,然后根据请求类型和请求的指令发送给对应Model业务模型进行业务逻辑判断,数据库存取,最后把结果返回给View视图层,经过模板渲染展示给用户。

漏洞触发的原因未经任何处理就将其作为 Web 应用模板内容的一部分,模板引擎在进行目标编译渲染的过程中,执行了用户插入的可以破坏模板的语句,因而可能导致了敏感信息泄露、代码执行、GetShell 等问题。其影响范围主要取决于模版引擎的复杂性。

大致意思呢就是:

没有将数据区于语句分开,导致他们被当成一个整体了

$output = $twig->render("Dear {first_name},", array("first_name" => $user.first_name) );
以上并不会早场ssti漏洞注入,应为执行区域和数据区域不在同一个地方
$output = $twig->render("Dear " . $_GET['name']);
这里呢就会造成ssti漏洞,这里接受数据后就直接执行了,可能会方便用户使用,但是也同时会被别有用心的人构造payload来注入

可通过一下方式来判断是什么模板从而进行下一步的渗透

输入{{7*'7'}}返回49的是jinja2模板。返回7个7的是twig模板

!!!!!!!!!!最后,ssti主要的还是知道他是那种模板,知道了以后去网上搜怎么注入,怎么查版本信息,就能获得更过注入点。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/211687.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

OpenCV实现图像噪声、去噪基本方法

一、噪声分类 1、高斯噪声 指服从高斯分布(正态分布)的一类噪声,其产生的主要原因是由于相机在拍摄时视场较暗且亮度不均匀造成的,同时相机长时间工作使得温度过高也会引起高斯噪声,另外电路元器件白身噪声和互相影响…

【学习篇】Linux中grep、sed、awk

Linux 文本处理三剑客 – awk, sed, grep grep过滤文本 https://zhuanlan.zhihu.com/p/561445240 grep 是 Linux/Unix 系统中的一个命令行工具,用于从文件中搜索文本或字符串。grep 代表全局正则表达式打印。当我们使用指定字符串运行 grep 命令时,如…

聚类笔记/sklearn笔记:Affinity Propagation亲和力传播

1 算法原理 1.1 基本思想 将全部数据点都当作潜在的聚类中心(称之为 exemplar )然后数据点两两之间连线构成一个网络( 相似度矩阵 )再通过网络中各条边的消息( responsibility 和 availability )传递计算出各样本的聚类中心。 1.2 主要概念 Examplar聚类中心similarity S(i…

Java入门级基础教学(史上最详细的整合)

目录 一:基础语法 1.“Hello word” 2.Java的运行机制 3. Java基本语法 1.注释、标识符、关键字 2.数据类型(四类八种) 4.类型转换 1.自动转换 2.强制转换 5.常量和变量 1.常量 2.变量 3.变量的作用域 6.运算符 1.算数运算符 …

Android11编译第七弹:串口文件读写

问题:需要对SIM卡进行管理,支持APP切换SIM卡。此功能需要访问串口文件,并且对串口文件进行读写。APP操作串口文件/dev/ttyUSB1时,串口文件打开失败。 2023-11-23 10:59:44.092 14264-14264 MULTI_CARD_SerialHandle com.wellnkio…

一款专为POS机设计的芯片解决方案

一、基本概述 HCM8003设计用于磁条读卡器系统。它会从F/2F恢复时钟和数据信号磁产生的数据流头HCM8003将用于数据速率从200到15000比特每秒。 二、典型电路 内部数据的采集和跟踪这个范围是自动的。可以应用于POS机终端设备、磁卡门禁系统、身份识别等场合。 三、引脚定义 四…

《洛谷深入浅出基础篇》P4017最大食物链————拓扑排序

上链接:P4017 最大食物链计数 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)https://www.luogu.com.cn/problem/P4017 上题干: 题目背景 你知道食物链吗?Delia 生物考试的时候,数食物链条数的题目全都错了,因为她总是…

科技与艺术如何交织出“理想之家”?三星电视给出家电行业最优解答

作者 | 曾响铃 文 | 响铃说 理想的家,是什么样子? 关于这个问题,社交媒体上有形形色色的答案。很多人的梦中情屋是原木风、奶油色,点缀着绿意盎然的植物;还有一些人的Dream house是用全屋智能将科技感拉满,再配上打…

深兰科技“汉境”入选2023年湖北省人工智能十大优秀应用案例

11月18日,央视“专精特新制造强国”城市大会在湖北武汉召开。会上,正式发布了“湖北省工业互联网标识十大优秀应用案例”,由深兰科技(武汉)股份有限公司基于AIGC多模态融合大模型技术开发打造的江汉路步行街元宇宙场景应用——汉境&#xff0…

如何使用springboot服务端接口公网远程调试——实现HTTP服务监听

🌈个人主页:聆风吟 🔥系列专栏:网络奇遇记、数据结构、算法模板 🔖少年有梦不应止于心动,更要付诸行动。 文章目录 📋前言一. 本地环境搭建1.1 环境参数1.2 搭建springboot服务项目 二. 内网穿透…

ubuntu安装cuda驱动报错及解决,屡试不爽

机器重启输入nvidia-smi提示如下错误,字面意思就是驱动和库不匹配 Failed to initialize NVML: Driver/library version mismatch 查看一下nvidia相关库 sudo dpkg --list | grep nvidia-* 将所有已安装库卸载 sudo apt purge nvidia-* 重新安装驱动 sudo ./NVIDIA-Linux-…

护法革命:CIMIVO+SOTUY洗前发膜让发丝重获“芯”生

爱美之心人皆有之,经常烫染或者是在太阳下暴晒,都会对发丝造成一定的伤害,一旦发丝受损,就会导致发芯内部角蛋白流失、化学键连接断裂,进而出现各种发质问题。为此,日本知名化妆品集团NABOCUL旗下发芯修护引领品牌ENNEO创新研发两大核心成分:CIMIVO、SOTUY,能够从根源修护发芯内…