Hack The Box - Help Writeup

本文记录了一次CTF挑战中针对HelpDeskZ应用的漏洞利用过程。通过nmap和nikto扫描,发现了开放的22、80和3000端口以及一个可上传任意文件的漏洞。利用exploit DB上的40300漏洞,成功获取shell。随后,通过基本枚举和在/tmp目录下的exploit,实现了权限提升。最后,提到了3000端口的Node.js程序可能存在SQL注入,作为获取user的潜在途径。
摘要由CSDN通过智能技术生成

解题过程:

  • nmap + nikto 扫描目标机,开放22,80,3000端口。并且找到80下的support/路径。
  • 打开http://[ip]/support,发现一个叫HelpDeskZ的应用,源码:https://github.com/evolutionscript/HelpDeskZ-1.0/。该应用的submit ticket功能可以上传任意文件。虽然有file extension的检查,但是文件依然会被上传,且能被直接访问。不过文件名会用md5加密后存储。
  • 找到了一个exploit:https://www.exploit-db.com/exploits/40300。开始时研究了好久的timezone offset,结果发现是浪费时间,这个exploit不用做任何修改,可以直接拿来用,只要找到正确的文件存储路径就行。
  • 耐心读一下源码,找到关键信息:
    • $uploaddir = UPLOAD_DIR.'tickets/'; 
    • define('UPLOAD_DIR', ROOTPATH . 'uploads/');
    • define('ROOTPATH', dirname(dirname(__FILE__)).'/')
    • 文件在http://[ip]/support/uploads/tickets/ 下。
  • 上传reverse_shell.php,运行nc监听,运行exploit
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值