渗透测试学习路线的核心技能阶段,核心围绕 "可落地实操、能独立完成漏洞挖掘与利用" 展开,衔接基础筑基阶段,覆盖 Web 渗透核心、内网渗透核心两大核心模块(最关键、最常用),是从 "入门" 到 "能上手" 的核心过渡,具体学习知识如下,兼顾原理、工具和实操:
一、核心模块 1:Web 渗透核心技能(重中之重,企业渗透最常用)
1. 信息收集(渗透第一步,决定后续成败)
- 被动收集:目标域名 / IP、备案信息、子域名、旁站 / C 段、员工信息、技术栈(用 fofa / 鹰图 / Whois / 站长工具);
- 主动收集:端口扫描(nmap/masscan)、目录扫描(Dirsearch / 御剑)、服务版本探测、指纹识别(WhatWeb)、站点爬虫;
- 关键:能通过收集确定目标技术栈、潜在漏洞点,比如识别出 "老版本 Tomcat+PHP+MySQL" 组合的高危漏洞隐患。
2. Web 常见高危漏洞(吃透原理 + 利用 + 防护,按优先级)
- SQL 注入(SQLi):核心是用户输入未过滤,掌握手工 Union 注入、报错注入,熟练使用 SQLMap 自动化脱库;
- XSS 跨站脚本:区分反射型 / 存储型 / DOM 型,会用 Burp 构造恶意脚本,理解其 "窃取 Cookie、钓鱼" 的危害;
- 文件上传 / 下载:掌握前端 / 后端校验绕过方法(修改后缀、添加文件头),能上传一句话木马并连接;
- 命令 / 代码执行:会构造 payload,利用蚁剑 / 冰蝎执行系统命令、管理服务器文件;
- 弱口令 / 密码爆破:用 Burp、Hydra(九头蛇)爆破后台、SSH/3389 端口密码;
- 反序列化 / 越权访问:理解 Java/PHP 反序列化原理,会用 ysoserial 构造 payload,能手工发现并利用越权漏洞。
3. Web 渗透核心工具(必须熟练,拒绝 "只会点鼠标")
- BurpSuite:抓包 / 改包、爆破、Repeater 重放、Scanner 扫描,配置代理打通 Kali/Windows;
- SQLMap:自动化 SQL 注入,掌握核心参数(-u/-dbs/--dump 等);
- 辅助工具:Dirsearch(目录扫描)、蚁剑 / 冰蝎(木马上传连接)、GitHack(源码泄露)、WhatWeb(指纹识别)。
4. 漏洞利用后操作
- 木马上传与连接:掌握 PHP/ASP/JSP 一句话木马,熟练使用蚁剑管理服务器;
- 基础提权:Windows/Linux 提权思路(提权漏洞、计划任务、SUID 提权);
- 后门植入:Linux SSH 公钥、Windows 注册表后门,实现持久化访问。
二、核心模块 2:内网渗透核心技能(从 "单台" 到 "整个内网")
1. 内网基础概念(先懂架构,再谈渗透)
- 内网环境:工作组 / 域环境(重点域控 DC、域用户、域管权限);
- 内网协议:SMB/IPC$、WMI、LDAP、DNS,记住对应常用端口;
- 关键:吃透域环境逻辑,理解域控与域用户的关系,掌握权限传递思路。
2. 内网渗透核心流程与技能
- 内网信息收集:本机信息(系统版本、权限、进程)、内网网段、存活主机、域环境信息(用 PowerView、BloodHound);
- 端口转发 / 代理:用 ew/frp 做正向 / 反向转发,配置 MSF/CS 的 socks 代理,打通外网 Kali 访问内网的通道;
- 横向移动:用 Mimikatz 抓取密码哈希 / 明文,通过 SMB/PsExec/WMI 远程登录,利用永恒之蓝(MS17-010)等漏洞渗透内网主机(工具:CrackMapExec);
- 域控渗透:用黄金票据 / 白银票据、DCSync 等方法提权域管,最终拿下域控,控制整个内网;
- 痕迹清理:删除日志、清理进程,隐藏渗透痕迹。
3. 内网渗透核心工具
- Metasploit(MSF):漏洞利用、会话管理、端口转发、socks 代理;
- Cobalt Strike(CS):内网渗透神器,监听器、后门生成、横向移动、权限维持;
- 辅助工具:Mimikatz(凭证窃取)、BloodHound(域环境可视化)、ew/frp(转发)、Proxifier(全局代理)。
三、核心阶段实操要求(必做,避免 "纸上谈兵")
- 独立完成 SQLi-Labs、Upload-labs、DVWA(高难度)靶机渗透;
- 搭建内网环境,从跳板机出发,完成内网信息收集→横向移动→拿下域控;
- 熟练使用 Burp、MSF、CS 核心功能,能独立解决简单的工具报错、漏洞利用失败问题。
补充:核心阶段学习重点
核心技能阶段不追求 "贪多求快",重点是 "吃透一个漏洞,能独立复现并利用",优先掌握 Web 渗透(企业最常用),再学内网渗透;工具和手工结合,比如 SQL 注入先会手工,再用 SQLMap 提升效率,避免 "只会用工具,不懂原理"。