由于在做靶机的时候,涉及到的渗透思路是非常的广泛,所以在写文章的时候都是挑重点来写,尽量的不饶弯路。具体有不不懂都的可以直接在文章下评论或者私信博主
如果不会导入Vulnhub靶机和配置网络环境的话,请点我直达发车文章!
本文靶机下载连接-戳我直接下载!
使用nmap工具对靶机做基本的信息收集nmap -sS -sV -A -T4 -p- 靶机IP
如下所示
可以看到,开放的端口有三个21/ftp 22/ssh 80/http
22/ssh
ssh可以直接pass掉了,这个版本基本上没有什么可利用的漏洞了,一般获取到了用户信息才使用这个
21/ftp
根据nmap扫描出的信息可以该服务上面存在一个CALL.html
文件,我们用匿名账户anonymous
(密码任意) 登录该靶机的ftp尝试下载一下CALL.html
文件
看一下CALL.html
里面的内容
意思是做好接到电话的准备
,有点懵,还不知道这个是什么意思,我们继续找找其他的线索
80/http
基本上大部分的漏洞都是存在于web服务上,我们看看该靶机的web服务
发现是一个apache
的默认页面,我们f12
打开网站源码,发下了一个信息,提到了gobuster
和dirb
两个工具
那我们就使用gobuster
工具对该网站的目录爆一下
gobuster dir -u 192.168.241.3/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x jpg,php,txt,html
我们尝试访问/files
目录,发现是一个目录浏览页面,并且也有一个CALL.html
文件
我们继续点开CALL.html
文件看看,跟我们刚刚ftp下载的那个文件内容一样
大腿一拍!恍然大悟,既然/files
目录里面的文件和ftp
服务里面的文件是一样的,那有没有可能ftp的目录和/files的目录是同一个目录呢?
我们尝试使用给该靶机的ftp服务上传文件测试一下,如下图
我们再次访问/files
目录,发现我们上传的文件已经长传上去了
那这样就好办了,我们可以上传一个php木马
来获取shell
我们通过如下操作,将kali给我们准备好的php马复制一份下来
cp /usr/share/webshells/php/php-reverse-shell.php getShell.php
我们再把这个木马文件的内容改一下,将ip
改为自己kali的ip,port
处可以更具自己的需求更改,但是要保证和nc
监听的端口一致
我们再次登录该靶机的ftp
服务,并且将我们的木马getshell.php
文件上传
我们可以看到我们的getshell.php
木马文件成功上传,我们点击一下,页面成为一直在加载的状态就成功了
可以发现我们的nc
此时已经监听到靶机的shell,我们使用python3 -c 'import pty;pty.spawn("/bin/bash")'
命令对shell进行升级
我们切换到/home
目录看看
发现了一个important.txt
文件,查看里面的内容,告诉我们尝试运行一下根目录的.runme.sh
看看数据
我们切换到根目录,看看这个.runme.sh
文件里面的内容
给了一个认证密钥trolled
和一个md5值cf4c2232354952690368f1b3dfdfb24d
由于密钥登陆不上去,我们尝试去cmd5(戳我直达)解密一下这个md5值
解密出的结果为onion
sduo -l
看一下我们的sudo权限,发现了python3.5
可以不用使用密码直接以root的权限执行
我们构造提权语句,如下,就可以获取到root
权限
sudo /usr/bin/python3.5 -c 'import pty;pty.spawn("/bin/bash")'