一、环境搭建
1、官网下载连接:https://www.vulnhub.com/entry/ch4inrulz-101,247/
2、下载之后,使用Oracle VM VirtualBox导入靶场环境
3、为了正常练习,将靶场的网卡模式设置为桥接模式,启动即可
二、靶场攻略
1、信息收集,nmap -sP --min-hostgroup 1024 --min-parallelism 1024 192.168.1.124,获取到靶场ip地址
2、使用nmap获取靶场服务端口,寻找突破点:nmap -A -p- 192.168.1.4,启动端口有21、22、80、8011
3、对80端口进行目录爆破,发现一个敏感信息泄漏文件,index.html.bak
对8011端口进行目录爆破,发现api目录中存在一些敏感文件
4、利用8011端口下api的files_api.php得到提示,要加上file参数
get方式无法读取
使用POST方式,成功读取到敏感信息
5、80端口中,爆破出一个/development登录界面
利用之前在index.html.bak中得到的账号密码frank:$apr1$1oIGDEDK$/aVFPluYt56UvslZMBDoC0,使用john爆破得到明文密码,登录成功
提示要上传
根据提示,访问uploader目录,成功找到上传点
只能上传图片格式的文件
使用kali里自带的shell,/usr/share/webshells/php/php-reverse-shell.php,修改头为GIF98
设置要反弹shell的攻击机ip端口
复制反弹shell的脚本为shell.gif
成功上传
6、因为不知道上传的文件目录,文件名,所以下一步要知道上传到了哪里,使用命令:
curl -d "file=php://filter/convert.base64-encode/resource=/var/www/development/uploader/upload.php" "http://192.168.1.4:8011/api/files_api.php",利用php伪协议的方法,读取BASE 64加密的,上传源码文件
解码之后,得到上传文件的保存目录为/FRANKuploads目录
进行访问,看到上传的图片被列了出来
7、使用nc监听端口,之后利用文件读取的接口读取上传的图片马,成功收到shell
8、下一步就是进行提权,查看系统内核版本
这个版本可以利用脏牛进行提权,脏牛的提权脚本在kali中是有的,文件路径为:/usr/share/exploitdb/exploits/linux/local/15285.c,将提权脚本拷贝出来
为了避免不能正常使用,在攻击机上进行编译
9、将提权脚本,放到kali的apache目录中,启动kali的apache服务,然后在靶场的tmp可写目录中,下载提权脚本
给提权脚本执行权限
执行之后,成功提权
获得falg
完