某次目的为导向的内网渗透-取开发源码
字数 1679 2025-08-24 07:48:33

内网渗透实战:以获取开发源码为目标的内网渗透技术详解

任务概述

本次渗透测试任务的目标是某地区软件开发公司,主要目的是获取其产品源码或开发/测试环境的访问凭证。任务最终成功获取了目标公司的开发源码,并获得了甲方的认可。

第一阶段:信息收集与初始入侵

1. 资产定位与识别

  • 使用FOFA搜索引擎进行目标资产检索
  • 根据资产指纹特征,使用扫描工具进行详细探测
  • 关注新出现的漏洞利用(exp)可能性

2. 初始入侵

  • 通过编码方式将webshell内容上传至目标站点
  • 验证webshell是否成功解析并能够连接
  • 建立初步的远程控制通道

第二阶段:内网信息收集

1. 基础信息收集

  • 执行基本的系统信息收集命令
  • 发现内网IP段为10.x.x.x(典型内网地址段)

2. 内网探测

  • 上传精简版netspy工具探测其他网段
  • 使用fscan等工具进行内网扫描,重点关注:
    • 445端口(SMB服务)
    • NetBIOS主机名中包含dev、ops、code、git等关键词
    • Web标题中包含response、git、code等关键词

3. 目标分析

  • 通过前期调研,发现目标单位主要产品为:
    • CRM套件
    • 云办公产品
    • 与猎豹合作使用Oracle数据库
  • 判断可能存在基于Java中间件的二次开发产品

第三阶段:内网横向移动

1. 发现关键资产

  • 内网扫描发现两个WebLogic服务(端口7001)
  • 使用漏洞扫描工具确认存在历史漏洞
  • 验证漏洞可利用性(可执行命令)

2. 绕过安全防护

  • 执行tasklist查看杀毒软件(发现诺顿)
  • 采用迂回战术绕过杀毒软件防护
  • 通过命令执行查看硬盘内容
  • 检查WebLogic发布的代码包

3. 权限提升与凭证获取

  • 确认WebLogic漏洞获得的权限为Administrator
  • 上传procdump工具获取lsass进程内存
  • 将结果放在WebLogic默认界面的静态目录下
  • 下载并解密获取系统密码

第四阶段:敏感数据获取

1. 共享文件访问

  • 使用Impacket的smbclient.py连接目标
    • 命令示例:
      proxychains python3 smbclient.py administrator:passrrrr@10.210.22.3
      
    • 或使用哈希认证:
      proxychains python3 smbclient.py administrator@10.133.22.22 -hashs xxxxxx:xxxxx
      
  • 发现backup文件夹(推测为开发版本备份)
  • 获取开发历史文件和测试文件

2. 关键信息发现

  • 从文件中发现软件使用指南和登录方式
  • 发现核心软件系统开发项目管理账本
  • 通过翻译确认内容价值

3. 远程桌面访问

  • 利用WebLogic漏洞尝试访问桌面
  • 发现语言设置导致乱码问题
  • 在管理员不在线时冒险登录
  • 在备注处发现登录凭证

第五阶段:源码获取与任务交付

1. 源码定位与打包

  • 搜索桌面和各磁盘内容
  • 定位到源码所在位置
  • 就地打包源码文件
  • 将打包文件放入web静态目录

2. 文件下载

  • 直接从web静态目录下载源码包到本地
  • 验证源码完整性和可用性

3. 任务交付

  • 提交获取的源码
  • 获得甲方认可
  • 根据要求部署持续控制机制

关键技术与工具总结

  1. 信息收集工具

    • FOFA搜索引擎
    • 内网扫描工具(fscan等)
  2. 漏洞利用

    • WebLogic历史漏洞利用
    • 免杀技术绕过诺顿防护
  3. 凭证获取

    • procdump获取lsass内存
    • 哈希传递攻击
  4. 横向移动

    • Impacket工具包(smbclient.py)
    • 内网代理(proxychains)
  5. 数据获取

    • SMB共享文件访问
    • 远程桌面控制

经验总结与最佳实践

  1. 目标定位

    • 前期调研对后续渗透方向判断至关重要
    • 关注合作方技术栈可推测目标技术架构
  2. 免杀技术

    • 遇到杀毒软件时采用迂回战术
    • 避免使用常见远控工具降低被发现风险
  3. 敏感数据获取

    • 优先关注备份目录和共享文件夹
    • 开发文档和测试文件常包含关键信息
  4. 风险控制

    • 管理员不在线时进行操作降低风险
    • 采用单次命令执行而非长期驻留减少痕迹
  5. 效率优化

    • 自动化扫描与人工分析结合
    • 根据扫描结果快速定位关键系统

防御建议

针对此类攻击,企业可采取以下防御措施:

  1. 及时修补中间件已知漏洞
  2. 加强杀毒软件防护能力
  3. 限制内网共享文件夹权限
  4. 避免在系统中明文存储凭证
  5. 实施严格的网络分段策略
  6. 监控异常进程(如lsass内存dump)
  7. 定期审计系统配置和权限
内网渗透实战:以获取开发源码为目标的内网渗透技术详解 任务概述 本次渗透测试任务的目标是某地区软件开发公司,主要目的是获取其产品源码或开发/测试环境的访问凭证。任务最终成功获取了目标公司的开发源码,并获得了甲方的认可。 第一阶段:信息收集与初始入侵 1. 资产定位与识别 使用FOFA搜索引擎进行目标资产检索 根据资产指纹特征,使用扫描工具进行详细探测 关注新出现的漏洞利用(exp)可能性 2. 初始入侵 通过编码方式将webshell内容上传至目标站点 验证webshell是否成功解析并能够连接 建立初步的远程控制通道 第二阶段:内网信息收集 1. 基础信息收集 执行基本的系统信息收集命令 发现内网IP段为10.x.x.x(典型内网地址段) 2. 内网探测 上传精简版netspy工具探测其他网段 使用fscan等工具进行内网扫描,重点关注: 445端口(SMB服务) NetBIOS主机名中包含dev、ops、code、git等关键词 Web标题中包含response、git、code等关键词 3. 目标分析 通过前期调研,发现目标单位主要产品为: CRM套件 云办公产品 与猎豹合作使用Oracle数据库 判断可能存在基于Java中间件的二次开发产品 第三阶段:内网横向移动 1. 发现关键资产 内网扫描发现两个WebLogic服务(端口7001) 使用漏洞扫描工具确认存在历史漏洞 验证漏洞可利用性(可执行命令) 2. 绕过安全防护 执行tasklist查看杀毒软件(发现诺顿) 采用迂回战术绕过杀毒软件防护 通过命令执行查看硬盘内容 检查WebLogic发布的代码包 3. 权限提升与凭证获取 确认WebLogic漏洞获得的权限为Administrator 上传procdump工具获取lsass进程内存 将结果放在WebLogic默认界面的静态目录下 下载并解密获取系统密码 第四阶段:敏感数据获取 1. 共享文件访问 使用Impacket的smbclient.py连接目标 命令示例: 或使用哈希认证: 发现backup文件夹(推测为开发版本备份) 获取开发历史文件和测试文件 2. 关键信息发现 从文件中发现软件使用指南和登录方式 发现核心软件系统开发项目管理账本 通过翻译确认内容价值 3. 远程桌面访问 利用WebLogic漏洞尝试访问桌面 发现语言设置导致乱码问题 在管理员不在线时冒险登录 在备注处发现登录凭证 第五阶段:源码获取与任务交付 1. 源码定位与打包 搜索桌面和各磁盘内容 定位到源码所在位置 就地打包源码文件 将打包文件放入web静态目录 2. 文件下载 直接从web静态目录下载源码包到本地 验证源码完整性和可用性 3. 任务交付 提交获取的源码 获得甲方认可 根据要求部署持续控制机制 关键技术与工具总结 信息收集工具 : FOFA搜索引擎 内网扫描工具(fscan等) 漏洞利用 : WebLogic历史漏洞利用 免杀技术绕过诺顿防护 凭证获取 : procdump获取lsass内存 哈希传递攻击 横向移动 : Impacket工具包(smbclient.py) 内网代理(proxychains) 数据获取 : SMB共享文件访问 远程桌面控制 经验总结与最佳实践 目标定位 : 前期调研对后续渗透方向判断至关重要 关注合作方技术栈可推测目标技术架构 免杀技术 : 遇到杀毒软件时采用迂回战术 避免使用常见远控工具降低被发现风险 敏感数据获取 : 优先关注备份目录和共享文件夹 开发文档和测试文件常包含关键信息 风险控制 : 管理员不在线时进行操作降低风险 采用单次命令执行而非长期驻留减少痕迹 效率优化 : 自动化扫描与人工分析结合 根据扫描结果快速定位关键系统 防御建议 针对此类攻击,企业可采取以下防御措施: 及时修补中间件已知漏洞 加强杀毒软件防护能力 限制内网共享文件夹权限 避免在系统中明文存储凭证 实施严格的网络分段策略 监控异常进程(如lsass内存dump) 定期审计系统配置和权限