编程导航教程

首页

渗透测试学习路线 | 26 年最新零基础到精通一条龙(万人收藏⭐️)

2025-11-18 20:15
阅读 1.8k
下载文档
评论
问答
笔记
0个评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
大纲
    0

    编程导航学习网站:学编程、做项目、拿 Offer!

    企业高频面试题库:开始刷题,面试遇原题!

    精选简历模板大全:1 分钟搞定简历!

    AI 资源导航网站:获取最新 AI 黑科技!

    1 对 1 模拟面试:随时随地提升面试能力

    渗透测试求职高频面试题:开始刷题

    开篇介绍

    渗透测试(Penetration Testing,简称 PT)是网络安全领域最具挑战性和实战性的技术方向之一。渗透测试工程师通过模拟黑客的攻击手法,在授权的情况下对目标系统进行全方位的安全评估,发现潜在的安全漏洞,并提供修复建议。这是一个需要攻防兼备、技术全面的职业方向。

    渗透测试是指在获得授权的前提下,使用和攻击者相同的思维方式和技术手段,对目标系统进行全面的安全测试。它不仅包括 Web 应用测试,还涵盖网络渗透、系统渗透、内网渗透、无线渗透等多个方面。渗透测试的目的是在真实攻击发生之前,主动发现并修复安全漏洞。

    为什么要学渗透测试?

    首先,渗透测试是网络安全防御体系的重要组成部分。只有站在攻击者的角度思考,才能真正理解系统的安全风险。其次,渗透测试人才需求旺盛且薪资待遇优厚。根据 2025 年的市场调研,经验丰富的渗透测试工程师年薪可达 30-80 万。

    渗透测试的核心价值在于提前发现安全风险。通过系统化的安全评估,企业可以在黑客攻击之前修复漏洞,避免数据泄露、业务中断等严重后果。渗透测试广泛应用于各种场景,包括企业信息系统安全评估、金融系统安全审计、政府机构网络安全检测、云服务平台安全测试、物联网设备安全评估等。

    就业方向

    学习渗透测试可以从事多个方向的工作:

    1. 渗透测试工程师:负责对企业信息系统进行全方位的安全测试,发现并报告安全漏洞,是渗透测试领域的核心岗位。
    2. 红队工程师:在攻防演练中担任攻击方,模拟真实的 APT 攻击,考验企业的安全防御能力。
    3. 安全服务工程师:为企业提供专业的安全咨询和渗透测试服务,参加护网行动等安全项目。
    4. 漏洞研究员:深入研究系统和应用的安全漏洞,发现 0day 漏洞,为安全产品提供技术支撑。
    5. 安全顾问:为企业提供安全架构设计、安全策略制定等高级咨询服务。

    学习路线图

    渗透测试学习路线思维导图

    阶段 1:网络安全基础(15-25 天,仅供参考)

    关于网络安全的详细学习,可以查看 网络安全学习路线

    学习目标

    掌握网络安全的基本概念和技术基础,为后续的渗透测试学习打下坚实基础。

    知识点

    网络安全基础【必学】:

    • 信息安全基础概念
    • CIA 三要素(机密性、完整性、可用性)
    • 常见攻击类型和防御思路
    • 网络安全法律法规

    计算机网络【必学】:

    关于计算机网络的详细学习,可以查看 计算机网络学习路线

    • TCP/IP 协议栈
    • HTTP/HTTPS 协议详解
    • DNS 解析原理
    • 常见端口和服务

    操作系统基础【必学】:

    • Windows 系统基础
      • 用户和权限管理
      • 注册表和服务
      • 常用命令
    • Linux 系统基础
      • 文件系统和权限
      • Shell 基础
      • 常用命令和工具

    编程基础【必学】:

    • Python 编程基础。关于 Python 的详细学习,可以查看 Python 学习路线
    • Shell 脚本编程。关于 Shell 脚本的详细学习,可以查看 Shell 脚本学习路线
    • 正则表达式。关于正则表达式的详细学习,可以查看 正则表达式学习路线

    学习建议

    1)网络安全基础是渗透测试的根基,不要跳过这个阶段。要深入理解 TCP/IP 协议,特别是三次握手、四次挥手、端口扫描原理等。这些知识在后续的渗透测试中会经常用到。

    2)Linux 是渗透测试的主要工作环境,必须熟练掌握。关于 Linux 的详细学习,可以查看 Linux 服务器学习路线。建议安装 Kali Linux 虚拟机作为学习环境,Kali 预装了大量安全工具,非常适合学习和实战。熟悉常用命令如 ls、cd、chmod、grep、awk、sed 等。

    3)Python 是渗透测试中最常用的编程语言,用于编写自动化脚本和工具。建议学习 Python 的基础语法、文件操作、网络编程、正则表达式等。不需要学得很深,能够看懂和编写简单脚本即可。

    4)在这个阶段要建立正确的安全意识和法律意识。渗透测试必须在获得授权的情况下进行,未经授权的攻击行为是违法的。要时刻提醒自己,我们是白帽子,要守住道德和法律的底线。

    学习资源

    • ⭐ 计算机网络学习路线:完整的网络基础学习路线
    • ⭐ Python 学习路线:Python 编程基础
    • 黑马程序员 Linux 教程:Linux 基础入门

    阶段 2:渗透测试基础(10-30 天,仅供参考)

    学习目标

    掌握渗透测试的基本流程和常用工具,能够进行基础的渗透测试工作。

    知识点

    渗透测试流程【必学】:

    • 前期信息收集
      • 主动信息收集
      • 被动信息收集
      • 社会工程学
    • 漏洞扫描和发现
    • 漏洞验证和利用
    • 权限维持
    • 痕迹清理
    • 报告编写

    信息收集技术【必学】:

    • 域名和 IP 信息收集
    • 子域名枚举
    • 端口扫描
    • 服务识别和指纹识别
    • 目录扫描
    • Google Hacking
    • 社会工程学信息收集

    常用渗透工具【必学】:

    • Nmap(端口扫描)
    • Masscan(快速端口扫描)
    • Dirsearch(目录扫描)
    • Subfinder(子域名枚举)
    • Whatweb(指纹识别)
    • Burp Suite(Web 渗透)
    • SQLMap(SQL 注入)

    Web 渗透基础【必学】:

    • OWASP Top 10 漏洞
    • SQL 注入
    • XSS 攻击
    • 文件上传漏洞
    • 命令执行漏洞

    学习建议

    1)信息收集是渗透测试的第一步,也是最重要的一步。信息收集的广度和深度直接决定了后续渗透的成功率。要学会使用各种工具和技巧,尽可能多地收集目标信息。

    2)Nmap 是渗透测试中最重要的工具之一,必须熟练掌握。要理解各种扫描技术的原理,如 TCP SYN 扫描、TCP Connect 扫描、UDP 扫描等。掌握常用参数,如 -sS、-sV、-O、-A 等。

    3)Burp Suite 是 Web 渗透测试的核心工具,要深入学习它的各个模块。建议申请 Burp Suite Professional 版本,功能更强大。在学习过程中要结合 Web 安全知识,理解工具背后的原理。

    4)渗透测试不是简单的工具使用,更重要的是思路和方法。要培养攻击者的思维方式,学会从安全的角度审视系统。看到一个系统,要能够快速判断可能存在的安全风险。

    学习资源

    • ⭐ 网络安全学习路线:完整的网络安全路线
    • Kali 渗透入门教程
    • Nmap 官方文档:最权威的 Nmap 使用指南
    • Kali Linux 工具指南:2025 资源开发篇

    阶段 3:系统渗透和提权(15-35 天,仅供参考)

    系统渗透和提权是针对操作系统的攻击技术,包括漏洞利用、权限提升等,是渗透测试的核心技能。

    学习目标

    掌握 Windows 和 Linux 系统的渗透技术,能够进行权限提升和权限维持。

    知识点

    Windows 渗透【必学】:

    • Windows 系统漏洞利用
    • Windows 权限提升
      • 本地提权漏洞
      • 配置错误提权
      • 第三方软件提权
    • Windows 权限维持
      • 后门技术
      • 启动项维持
      • 服务维持
    • Windows 痕迹清理

    Linux 渗透【必学】:

    • Linux 系统漏洞利用
    • Linux 权限提升
      • SUID 提权
      • 内核漏洞提权
      • 配置错误提权
    • Linux 权限维持
    • Linux 痕迹清理

    Metasploit 框架【必学】:

    • Metasploit 基础
    • MSFconsole 使用
    • Exploit 模块
    • Payload 生成
    • Meterpreter 使用
    • 后渗透模块

    密码攻击【必学】:

    • 密码破解技术
    • 哈希破解
    • Hashcat 使用
    • John the Ripper 使用
    • 字典生成

    学习建议

    1)权限提升是渗透测试的关键环节。拿到初始权限后,往往需要提升到管理员权限才能进行后续操作。要熟练掌握各种提权方法,包括漏洞提权、配置错误提权、第三方软件提权等。

    2)Metasploit 是渗透测试中最强大的框架,被称为 “渗透测试的瑞士军刀”。要深入学习 Metasploit 的各个模块,特别是 Exploit 和 Payload 的使用。Meterpreter 是 Metasploit 的核心 Payload,功能强大,要熟练掌握。

    3)搭建靶场环境进行练习非常重要。可以使用 VulnHub、HackTheBox 等平台的靶机,也可以自己搭建漏洞环境。在实践中学习,在失败中成长,不要害怕尝试。

    4)权限维持和痕迹清理是渗透测试的高级技巧,在红队演练中经常用到。但在实际工作中,渗透测试一般不需要做权限维持,发现漏洞并报告即可。痕迹清理也要谨慎,避免破坏系统。

    学习资源

    • Metasploit 教程
    • Metasploit Unleashed:官方免费教程
    • VulnHub:靶机下载平台

    阶段 4:内网渗透(15-45 天,仅供参考)

    内网渗透是在获得初步权限后,进一步渗透内网环境,横向移动获取更多资源的过程。

    学习目标

    掌握内网渗透技术,能够在内网环境中进行横向移动和域渗透。

    知识点

    内网基础【必学】:

    • 内网架构
    • 域环境基础
      • Active Directory
      • 域控制器
      • 域用户和组
    • 内网协议
      • SMB 协议
      • LDAP 协议
      • Kerberos 认证

    内网信息收集【必学】:

    • 主机发现
    • 端口扫描
    • 服务识别
    • 域信息收集
    • 凭证获取

    横向移动【必学】:

    • Pass The Hash(哈希传递)
    • Pass The Ticket(票据传递)
    • IPC$ 连接
    • WMI 利用
    • DCOM 利用
    • PsExec 利用
    • WinRM 利用

    域渗透【必学】:

    • 域内信息收集
    • Kerberos 攻击
      • AS-REP Roasting
      • Kerberoasting
      • Golden Ticket
      • Silver Ticket
    • 域控提权
    • 域委派攻击

    内网渗透工具【必学】:

    • Cobalt Strike
    • Impacket
    • BloodHound
    • Mimikatz
    • PowerShell Empire

    学习建议

    1)内网渗透是渗透测试的高级阶段,难度较大。要先理解域环境的基础知识,包括 Active Directory 的架构、Kerberos 认证流程等。这些理论知识看起来枯燥,但对理解后续的攻击技术非常重要。

    2)横向移动是内网渗透的核心技术。拿到一台内网主机的权限后,要能够以此为跳板,在内网中横向移动,最终控制更多的主机。要熟练掌握各种横向移动技术,如 Pass The Hash、IPC$ 连接、WMI 利用等。

    3)Cobalt Strike 是红队使用最广泛的工具,功能非常强大。但 Cobalt Strike 是商业软件,正版价格昂贵。学习时可以使用试用版或者搭建测试环境。要注意,使用 Cobalt Strike 必须获得授权,否则是违法的。

    4)BloodHound 是域渗透的神器,能够可视化域内的信任关系和攻击路径。通过 BloodHound,可以快速发现域内的安全风险和提权路径。建议在学习域渗透时配合 BloodHound 使用。

    5)内网渗透需要大量的实战练习。可以自己搭建域环境进行练习,也可以参加红蓝对抗演练。在实战中积累经验,不断总结和反思,才能真正掌握内网渗透技术。

    经典面试题

    1. 什么是横向移动?常见的横向移动方法有哪些?
    2. Pass The Hash 攻击的原理是什么?如何防御?
    3. 什么是 Kerberoasting 攻击?如何利用?
    4. Golden Ticket 和 Silver Ticket 有什么区别?
    5. 如何进行域内信息收集?

    学习资源

    • ⭐ 内网渗透之横向移动:实战指南
    • AD Pentest Notes:内网渗透学习笔记
    • Impacket 官方文档:内网渗透工具集

    阶段 5:综合实战(30-45 天,仅供参考)

    学习目标

    通过实际项目和靶场练习,综合运用所学知识,提升实战能力。

    学习建议

    1)搭建完整的渗透测试环境,包括 Web 应用、操作系统、内网环境等。模拟真实的渗透测试场景,从信息收集到权限提升,从横向移动到域控制,完整地走一遍流程。

    2)参加 CTF 比赛和靶场练习。推荐 HackTheBox、TryHackMe、VulnHub 等平台。这些平台提供了大量的靶机和挑战,难度从入门到高级都有。通过做题和通关,可以快速提升实战能力。

    3)参加护网行动或红蓝对抗演练。护网行动是国内最大规模的攻防演练活动,每年都会进行。参加护网行动,可以在真实环境中锻炼渗透测试能力,积累宝贵的实战经验。

    4)编写自己的渗透测试工具和脚本。可以用 Python 写一些自动化脚本,如信息收集脚本、漏洞扫描脚本、批量检测脚本等。这不仅能提升编程能力,还能加深对渗透测试技术的理解。

    5)学习编写渗透测试报告。渗透测试报告是交付给客户的最终成果,要求专业、详细、易懂。报告应包括测试范围、测试方法、发现的漏洞、风险评估、修复建议等内容。

    项目推荐

    • HackTheBox 靶机(至少完成 50 台)
    • TryHackMe 学习路径
    • VulnHub 综合靶机
    • 搭建企业级内网环境
    • 参加 SRC 漏洞挖掘
    • 参加护网行动

    学习资源

    • HackTheBox:全球最大的渗透测试平台
    • TryHackMe:新手友好的学习平台
    • VulnHub:靶机下载平台
    • LabEx 在线 Kali 环境:在线练习环境

    阶段 6:求职备战(面试前 1 个月突击)

    学习目标

    熟练掌握渗透测试常见面试题,准备好简历和项目经历,顺利通过面试。

    学习建议

    1)打磨简历和项目:简历上一定要有渗透测试相关的项目经历,如靶机通关记录、SRC 提交记录、CTF 比赛成绩、护网参加经历等。

    建议使用 老鱼简历 制作简历,关于如何写好简历,推荐学习鱼皮的 保姆级写简历指南。

    老鱼简历网站简历模板大全

    2)准备实战演示:有些公司会要求现场演示渗透测试能力。建议提前准备好一个靶场环境,能够快速演示信息收集、漏洞发现、权限提升等过程。演示时要讲解清楚思路和方法,不要只是机械地操作。

    3)准备项目经历:面试时一定会问项目经历,要能够清楚地介绍你做过的渗透测试项目、发现的漏洞、使用的技术、遇到的问题和解决方案等。建议提前准备好项目介绍,反复练习。

    4)了解目标公司:不同公司对渗透测试的要求不同。有的公司侧重 Web 渗透,有的公司侧重内网渗透。面试前要了解目标公司的业务和安全团队情况,有针对性地准备。

    更多求职干货:编程导航求职干货分享

    经典面试题

    基础概念:

    1. 什么是渗透测试?和漏洞扫描有什么区别?
    2. 渗透测试的流程是什么?
    3. 什么是信息收集?有哪些方法?
    4. 什么是社会工程学?
    5. 如何编写渗透测试报告?

    工具使用:

    1. Nmap 有哪些常用参数?各有什么作用?
    2. Burp Suite 有哪些模块?如何使用 Intruder 进行爆破?
    3. Metasploit 的架构是怎样的?Exploit 和 Payload 有什么区别?
    4. SQLMap 有哪些常用参数?如何绕过 WAF?
    5. Cobalt Strike 有哪些功能?如何使用 Beacon?

    漏洞利用:

    1. SQL 注入有哪些类型?如何利用?
    2. 如何进行 Windows 系统提权?
    3. 如何进行 Linux 系统提权?
    4. 什么是 Pass The Hash 攻击?如何利用?
    5. 什么是 Kerberoasting 攻击?如何防御?

    内网渗透:

    1. 内网渗透的流程是什么?
    2. 如何进行域内信息收集?
    3. 横向移动有哪些方法?
    4. Golden Ticket 和 Silver Ticket 有什么区别?
    5. 如何定位域控制器?

    实战经验:

    1. 你做过哪些渗透测试项目?详细说说。
    2. 你在 HackTheBox 上通关了多少台靶机?
    3. 你参加过护网行动吗?做了哪些工作?
    4. 遇到 WAF 拦截时,你会怎么绕过?
    5. 你编写过哪些渗透测试工具?

    面试题库

    • ⭐ 渗透测试面试题 - 面试鸭
    • ⭐ 网络安全面试题大全
    • 2025 护网 HVV 面试通关笔记:高频面试题

    求职资源

    • ⭐ 鱼皮的保姆级求职指南:从简历到面试的完整指南
    • ⭐ 鱼皮的保姆级写简历指南:如何写出高质量简历
    • 编程导航的求职干货分享:求职经验和技巧
    • 老鱼简历:写简历工具 + 简历模板大全
    • 真实面经大全:了解真实的面试流程
    • 几百场真实面试视频:观看他人的面试过程
    • 1 对 1 模拟面试:AI 模拟面试练习
    • 面试题讲解视频:面试鸭官方题解

    持续学习资源

    知识总结

    • ⭐ 编程导航:学习路线、项目教程、面试题、编程资源一站式平台
    • ⭐ 网络安全学习路线:完整的网络安全学习路线
    • 网络安全学习网站:鱼皮出品,合法练习平台

    安全社区

    • FreeBuf:国内知名安全社区
    • 先知社区:阿里云安全社区
    • Seebug:漏洞平台

    靶场平台

    • HackTheBox:全球最大的渗透测试平台
    • TryHackMe:新手友好的学习平台
    • VulnHub:靶机下载平台
    • 攻防世界:CTF 练习平台

    技术博客

    • Google Project Zero:谷歌漏洞研究团队
    • Microsoft Security Response Center:微软安全响应中心
    • Krebs on Security:安全研究博客

    写在最后

    渗透测试是网络安全领域最具挑战性和实战性的方向。从信息收集到漏洞利用,从权限提升到横向移动,从域渗透到报告编写,渗透测试的技术体系完整且深入。

    学习渗透测试要先打好基础,掌握网络、系统、编程等基础知识。重点学习渗透测试流程和常用工具,熟练掌握 Nmap、Burp Suite、Metasploit 等核心工具。深入学习内网渗透技术,这是渗透测试的高级阶段。多做靶场练习,参加 CTF 比赛和护网行动,在实战中提升能力。

    记住,渗透测试必须在获得授权的情况下进行。未经授权的攻击行为是违法的,会承担法律责任。要做一个有道德、有底线的白帽子,用自己的技术为网络安全做出贡献。

    希望这份学习路线能够帮助大家少走弯路,更高效地掌握渗透测试技术。

    加油鱼友们 💪🏻!

    程序员必备资源

    1)程序员学习交流圈:极客教程、实战项目、求职宝典

    2)程序员面试八股文:实习/校招/社招高频考点、企业真题解析

    3)程序员写简历神器:专业模板、丰富例句、直通面试

    4)AI 知识资源大全:前沿技术、最新 AI 资讯、提示词大全

    5)1 对 1 模拟面试:实习/校招/社招面试拿 Offer 必备