HackMyVM靶场之opacity

admin 2025-12-22 04:44:45 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文介绍了HackMyVM靶场中opacity靶机的渗透测试过程,通过文件上传漏洞利用空格绕过技术获取初始访问权限,然后找到并破解kdbx密码文件获取sysadmin用户凭证,最后通过修改具有root权限的PHP文件实现提权。文章详细展示了从信息收集、漏洞利用到权限提升的完整过程,提供了多种尝试方法和解决方案,对渗透测试学习者具有实用价值。 综合评分: 88 文章分类: 渗透测试,实战经验,WEB安全,漏洞分析,文件上传


,而且这几天我之所以没有发wp是因为我又做了5,6个靶机,

)里面还有老外,还有排行榜的分为月,年,总榜我们可以看到月榜第一名是我们国家的,这些都是大佬

目前只有51人拿到了root权限,50人拿到了user权限(可能是靶场太旧了,没有人做吧)

)

这个文件上传,我们只能通过链接上传图片的,之前我们做的靶机都是可以直接上传图片或者是文件的,而这个靶机我们只能上传图片。

文件上传

我们可以看到是一个文件上传,我们先随便上传一个图片进行查看,这里我上传的图片是本机的图片,我们通过python开启服务即可(在你上传图片或者是文件的路径下开启)

python -m http.server 8000

,然后我只能重新进行反弹shell了

所以我们只能想办法切换sysadmin用户了(我感觉这个靶场可不稳定了)既然我们要切换到sysadmin用户下,那么我们可以看看哪些文件是可以使用sysadmin用户打开的,这些文件里面看到隐藏了sysadmin的信息

查找文件

find / -user sysadmin 2>/dev/null

 ssh [email protected]

我们可以看到登录成功,那么我们直接去/home目录下查看我们之前没有权限查看的文件

我们成功查看到user的flag,那么接下来我们就是提权了

我们去看看刚刚的backup.inc.php

 我们可以看到权限是root权限,但是这次我们可以进行编辑的,因为它在sysadmin目录下

也就是说sysadmin用户,可以对lib目录下的所有文件具有读写执行的权限

那么我们可以修改php文件里面的内容,获取root权限

我们直接去修改 backup.inc.php文件太麻烦了,我们重命名这个文件为1.php,然后重新创建这个文件(是vi不是vm打错了)。

我们在文件里面写入以下命令

然后我们可以看到权限是sysadmin用户

接下来我们去执行这个php脚本

ls -al /bin/bash

当它变成红色的时候说明执行成功了

我们启动shell,使用命令bash -p,可以看到启动成功

我们查看root的flag即可

至此,这个靶场渗透成功

这个靶场整体不是很难,关键点就是我们需要在文件上传的时候进行绕过,然后需要去切换到sysadmin用户下,我们可以找到一个kdbx文件,如果之前在vulnhub靶场里面做过那么就很熟悉了,要是没有做过那就是第一次见kdbx文件,我们去网上搜就可以,然后我们去解密解密的话也不是很难,一条命令就能解决的。之后就是登录sysadmin用户,提权的话还是很简单的,我们在文件里面写入命令即可。

复盘

我们可以看看我们上传的文件和图片,但是发现却没有

之前在script目录下,我发现script.php文件是单独存在的(我本来想到是先去看看back文件,如果执行失败了,我再回来查看script.php文件,结果是执行成功了),我进行查看发现还是让我们去backup.inc.php文件下。

然后我去使用pspy64脚本去查看进程,我们可以看到script.php是以root用户执行的(uid=0),那么我们也可以去修改这个php文件的,我没有再去尝试,因为步骤和back文件是一样的,没有什么区别。

我查看了这个文件的作用

1. 功能:  - 备份 sysadmin 脚本目录  - 删除云存储目录中的所有文件
2. 代码结构:  - 备份操作:调用 backup.inc.php 中的 zipData 函数  - 文件删除:递归删除 /var/www/html/cloud/images 目录下的所有文件
3. 关键函数:  - zipData('/home/sysadmin/scripts', '/var/backups/backup.zip'):备份 sysadmin 脚本目录到 backup.zip  - RecursiveDirectoryIterator 和 RecursiveIteratorIterator:递归遍历目录  - unlink($file):删除文件  - rmdir($file):删除空目录
4. 安全风险:  - 未验证目录路径,存在路径遍历风险  - 未检查文件权限,可能删除重要文件  - 未记录操作日志,无法审计
5. 执行流程:  - 备份 sysadmin 脚本目录  - 删除云存储目录中的所有文件(包括子目录)  - 输出 "Successful" 确认操作完成
6. 注意事项:  - 备份文件保存在 /var/backups/backup.zip  - 删除操作不可逆,需谨慎执行  - 代码未处理异常情况(如目录不存在)

怪不得我去查看我上传的jpg和php文件都没有,结果是它给我删除了。


查看原文:《HackMyVM靶场之opacity》

评论:0   参与:  2