记录某项目中一次较为顺利的溯源反制过程
字数 1625 2025-08-19 12:42:00

溯源反制实战教学文档:从攻击告警到反制分析

一、事件概述

1.1 事件背景

  • 时间:202X年7月19日
  • 事件类型:扫描器攻击后的溯源反制
  • 攻击特征:时间连续、受害IP数量多,初步判断为扫描器攻击
  • 反制结果:成功获取攻击者傀儡机system权限,分析扫描工具并还原攻击路径

二、溯源反制流程

2.1 初始发现

  1. 告警发现:通过安全监控系统发现漏检的攻击告警
  2. 初步分析
    • 攻击时间连续性表明可能是扫描器行为
    • 受害IP数量多暗示可能是针对性攻击或大规模扫描

2.2 威胁情报查询

  • 使用威胁情报平台查询攻击IP
  • 发现该IP未被标记为恶意IP(说明可能是新使用的攻击资源)

2.3 主动反制

  1. 信息收集

    • 使用dirsearch对攻击IP进行目录扫描
    • 发现phpmyadmin管理界面
  2. 漏洞利用

    • 尝试弱口令root/root成功登录phpmyadmin
    • 确认该机器为傀儡机(发现我方资产信息)
    • 通过phpmyadmin日志写入webshell
  3. 权限提升

    • 上线Cobalt Strike(CS)
    • 获取系统账号密码
    • 发现开放23389端口(远程桌面)

2.4 内网信息收集

  • 通过远程桌面连接傀儡机
  • 发现持续运行的扫描程序(判断为Python编写)
  • 下载扫描工具到本地进行分析

三、扫描工具分析

3.1 工具解包

  1. 工具准备

    • 使用pyinstxtractor.py进行Python打包exe解包
    • 命令:python pyinstxtractor.py xx.exe
  2. 文件结构

    • 解包后得到main.exe_extracted目录
    • 关键文件:
      • 1.exe.mainifest
      • 1.pyc(可能需要手动添加.pyc后缀)
      • struct.pyc

3.2 反编译过程

  1. 工具安装

    • pip install uncompylepip3 install uncompyle
  2. 反编译命令

    • uncompyle6 struct.pyc > output.py
  3. 常见问题解决

    • 主程序反编译报错时,比较两个pyc文件前16字节
    • 将可反编译文件的前16字节复制到不能反编译的文件中

3.3 工具功能分析

  1. 工作流程

    • 读取输入的txt文档(test.txt)中的URL作为初始目标
    • 访问这些URL并进行扫描
    • 从网页中爬取新的URL存入check中
    • 形成循环扫描机制
  2. 扫描特征

    • 扫描常见备份文件
    • 使用域名作为文件名进行扫描(创新点)
    • 包含敏感信息扫描功能
    • 包含struts2漏洞扫描功能(但实际攻击中未使用)
  3. 传播机制

    • 通过网页友情链接获取新目标
    • 形成"无限扫描"效果

四、攻击路径还原

  1. 攻击者路径

    • 通过phpmyadmin弱口令(root/root)入侵傀儡机
    • 在傀儡机上部署扫描工具
    • 工具自动通过友情链接扩展扫描目标
  2. 攻击性质

    • 非针对性攻击
    • 自动化大规模扫描
    • 主要目标为网站备份文件

五、防御建议

  1. phpmyadmin防护

    • 禁用默认root账号或使用强密码
    • 限制访问IP
    • 定期检查日志文件
  2. 扫描器防御

    • 监控异常访问模式
    • 设置合理的访问频率限制
    • 定期检查网站友情链接
  3. 应急响应

    • 建立完善的告警机制
    • 对攻击IP及时进行反制分析
    • 保留完整日志记录

六、技术要点总结

  1. 反制关键点

    • 快速识别攻击特征
    • 主动信息收集(dirsearch)
    • 利用攻击者自身漏洞(phpmyadmin弱口令)
  2. 工具分析技巧

    • Python打包exe解包方法
    • pyc文件反编译技巧
    • 文件结构分析
  3. 溯源价值

    • 确认攻击性质(非针对性)
    • 了解攻击工具工作原理
    • 发现攻击传播机制(友情链接)

附录:使用工具清单

  1. 信息收集:

    • dirsearch
  2. 反编译工具:

    • pyinstxtractor.py
    • uncompyle6
  3. 渗透工具:

    • Cobalt Strike(CS)
    • phpmyadmin日志写shell技术
  4. 分析工具:

    • 文本比较工具
    • 十六进制编辑器
溯源反制实战教学文档:从攻击告警到反制分析 一、事件概述 1.1 事件背景 时间 :202X年7月19日 事件类型 :扫描器攻击后的溯源反制 攻击特征 :时间连续、受害IP数量多,初步判断为扫描器攻击 反制结果 :成功获取攻击者傀儡机system权限,分析扫描工具并还原攻击路径 二、溯源反制流程 2.1 初始发现 告警发现 :通过安全监控系统发现漏检的攻击告警 初步分析 : 攻击时间连续性表明可能是扫描器行为 受害IP数量多暗示可能是针对性攻击或大规模扫描 2.2 威胁情报查询 使用威胁情报平台查询攻击IP 发现该IP未被标记为恶意IP(说明可能是新使用的攻击资源) 2.3 主动反制 信息收集 : 使用dirsearch对攻击IP进行目录扫描 发现phpmyadmin管理界面 漏洞利用 : 尝试弱口令root/root成功登录phpmyadmin 确认该机器为傀儡机(发现我方资产信息) 通过phpmyadmin日志写入webshell 权限提升 : 上线Cobalt Strike(CS) 获取系统账号密码 发现开放23389端口(远程桌面) 2.4 内网信息收集 通过远程桌面连接傀儡机 发现持续运行的扫描程序(判断为Python编写) 下载扫描工具到本地进行分析 三、扫描工具分析 3.1 工具解包 工具准备 : 使用pyinstxtractor.py进行Python打包exe解包 命令: python pyinstxtractor.py xx.exe 文件结构 : 解包后得到 main.exe_extracted 目录 关键文件: 1.exe.mainifest 1.pyc(可能需要手动添加.pyc后缀) struct.pyc 3.2 反编译过程 工具安装 : pip install uncompyle 或 pip3 install uncompyle 反编译命令 : uncompyle6 struct.pyc > output.py 常见问题解决 : 主程序反编译报错时,比较两个pyc文件前16字节 将可反编译文件的前16字节复制到不能反编译的文件中 3.3 工具功能分析 工作流程 : 读取输入的txt文档(test.txt)中的URL作为初始目标 访问这些URL并进行扫描 从网页中爬取新的URL存入check中 形成循环扫描机制 扫描特征 : 扫描常见备份文件 使用域名作为文件名进行扫描(创新点) 包含敏感信息扫描功能 包含struts2漏洞扫描功能(但实际攻击中未使用) 传播机制 : 通过网页友情链接获取新目标 形成"无限扫描"效果 四、攻击路径还原 攻击者路径 : 通过phpmyadmin弱口令(root/root)入侵傀儡机 在傀儡机上部署扫描工具 工具自动通过友情链接扩展扫描目标 攻击性质 : 非针对性攻击 自动化大规模扫描 主要目标为网站备份文件 五、防御建议 phpmyadmin防护 : 禁用默认root账号或使用强密码 限制访问IP 定期检查日志文件 扫描器防御 : 监控异常访问模式 设置合理的访问频率限制 定期检查网站友情链接 应急响应 : 建立完善的告警机制 对攻击IP及时进行反制分析 保留完整日志记录 六、技术要点总结 反制关键点 : 快速识别攻击特征 主动信息收集(dirsearch) 利用攻击者自身漏洞(phpmyadmin弱口令) 工具分析技巧 : Python打包exe解包方法 pyc文件反编译技巧 文件结构分析 溯源价值 : 确认攻击性质(非针对性) 了解攻击工具工作原理 发现攻击传播机制(友情链接) 附录:使用工具清单 信息收集: dirsearch 反编译工具: pyinstxtractor.py uncompyle6 渗透工具: Cobalt Strike(CS) phpmyadmin日志写shell技术 分析工具: 文本比较工具 十六进制编辑器