☰
三年安服工程师的OSCP备考实录:从工具依赖到完整攻击链
2026/10/8 8:58:35 网站建设 项目流程

我干了三年网络安全,此前一直觉得OSCP这类认证离我挺远。日常工作不外乎给客户做渗透测试、漏洞复测,再回一份带截图的报告,偶尔到SRC挖洞平台刷几个漏洞,日子过得顺风顺水。直到有一次面试,面试官问了我一个基础问题:扫到80端口之后,除了跑一把工具,你还能怎么往下摸?我居然当场卡住。从那天起我开始琢磨,“三年经验”这个标签到底有多少真实含金量,也是从那时候起,我把考OSCP正式摆上了日程。

这篇文章不打算写成考试攻略说明书,更想记录一个工作三年的网络安全工程师,从裸检到训练场搭建,再到实际考试的完整过程。如果你也是工作了两三年、厌倦了扫描和截图循环、想给自己一次系统性提升的人,这篇应该能对得上你的困惑。

1. 三年一线经验,为什么反而让我更想考OSCP

1.1 我每天都在做什么,和考纲要求之间隔了什么

先说实话:三年经验不等于三年渗透经验,更可能是三年工具使用经验。

我的工作节奏很固定。周一接到授权范围,跑nmap,看一圈开放的端口;有Web站点就丢给Xray、AWVS这类扫描器跑一遍,把中高危漏洞整理成报告;周三约客户复测,登录后台点两下,确认漏洞已经修了,截图存档;周四补报告,周五开会同步进度。周而复始。

工具用得确实越来越熟。AWVS怎么配置扫描策略、xray怎么联动被动代理、nmap哪条脚本能出什么结果,我闭着眼睛都能说出来。但问题也随之而来:我对漏洞原理的掌握,停留在“这个版本有这个漏洞,上这个利用脚本”的层面。真要我说清楚一个SQL注入的系统函数怎么闭合、一个提权漏洞为什么能命中目标,我讲不透。

开始认真思考考证,是因为行业里那些“35岁会不会被裁员”的讨论。我不觉得年龄本身是问题,但身边确实有不少人干了五六年,日常工作内容和第三年几乎没有差别。如果我的核心竞争力只是“会跑更多工具”,那这个位置确实可以被任何一个训练三个月的年轻人替代。我需要的不是更熟练地使用工具,而是重建对攻击链路本身的认知。

1.2 我把能考的证翻了个遍,最后为什么选OSCP

决定备考之后,我先把市面上常见的认证做了个对比。不是所有证书都值得花时间,很多证书考下来只是多一张纸。

认证侧重点适合场景对我的现实帮助
CISP信息安全管理、合规、等保国企、等保测评、安全管理岗偏管理,和渗透实操关系不大
CISP-PTEWeb渗透测试为主等保测评公司、安服岗位方向偏窄,深度和认可度一般
CISSP安全管理框架、风险管理安全经理、总监方向需要管理经验+英语门槛,当时不适合
OSCP完整攻击链实操:打点、提权、内网、AD域渗透测试、红队、安全研究员直接检验独立渗透能力,全球认可度最高

选OSCP还有一个现实原因:它不考“你知道什么”,而是考“你能否独立完成一个渗透项目”。考试给你若干台目标机器,没有步骤提示,没有参考答案,你要靠信息收集、枚举、漏洞利用、提权、横向移动一路打下去。这套流程和我日常工作高度重合,但深度完全不同。

我身边也有同事质疑:考OSCP要花不少时间,又不一定能涨工资,值吗?我的想法是,工资是市场定价,而市场定价看的是可验证的能力。CISP这类证书报名门槛低、通过率高,放在简历里HR已经看麻了。OSCP是把“我确实能独立打通陌生靶机”这件事,变成一个可以被检验的事实。

1.3 我理解的OSCP价值:不是敲门砖,而是“可验证的下限”

备考之前我特意去看了一圈考过的人怎么说,发现大家的态度很分裂。有人把OSCP捧成安全行业硬通货,有人觉得考完也就那样。两种说法都过于极端。

以我现在的理解,OSCP最有价值的不是那张证书,而是它构建了一条“可验证的能力下限”。考过OSCP,不代表你是顶尖高手,但至少意味着:面对一台陌生机器,你知道要从哪里开始;拿到一个端口,你知道怎么判断它是入口还是陷阱;攻下一台机器后,你知道怎样系统地寻找下一台。这些恰恰是很多面试官真正关心的东西。

它也不是万能钥匙。证书过不了简历初筛的情况大有人在,技术面问崩的也见过不少。但对我这种工作三年的安服人来说,OSCP是一次很好的能力体检:它逼你把过去“知其然”的知识补成“知其所以然”。

2. 备考头两周:先给自己的技术底子做了个裸检

2.1 不看工具裸打靶机,我差点找不到北

买了课程和实验券之后,我没有急着开刷,而是先给自己做了一次裸检。方法很简单:不依赖任何自动化工具,只带浏览器、curl、命令行走上一遍流程。

结果非常狼狈。

平时我扫到3306端口,第一反应是掏数据库客户端碰运气;真要我手工判断这个MySQL有没有弱口令之外的利用方式,思路就断了。遇到一个后台登录框,平时直接丢给Xray跑;现在要我自己测试默认口令、用户名枚举、忘记密码逻辑,我能想到的手段不超过三种。最打击人的是,我连信息收集的顺序都是乱的——先跑nmap,再翻目录,然后就开始对着首页发呆。

裸检暴露了一个残酷事实:工具承担了太多本应由脑子完成的工作。我可以是一个优秀的“工具调用者”,但离一个合格的渗透测试人员还有距离。尤其OSCP这种考试,它不会告诉你这台机器是Web层漏洞还是服务漏洞,更不会在打完点之后递给你一条提权路径。一切都要自己推。

2.2 对照考纲逐项打钩,我给自己列了张真实缺口表

裸检之后,我把OSCP考纲里的技术模块逐项列出来,结合过去三年的工作经历,给每项打了分。这一步非常重要,它能帮你有针对性地分配时间,避免像新手一样均匀用力。

考纲模块我的自评主要差距
信息收集与枚举中等偏上依赖工具输出,手工验证能力弱
Web应用攻击中等SQLi、XSS、上传能打,LFI/文件包含和逻辑漏洞组合弱
公共漏洞利用偏弱会搜exploit,改代码和调试验证不熟
Linux提权偏弱SUID、sudo规则、定时任务的利用不系统
Windows提权很弱日常工作几乎走不到这一步
密码攻击中等会用Hydra,但字典定制和规则生成弱
客户端攻击未入门完全没练过
AD域与横向移动仅概念只听说过Kerberoasting,没实操过

看完这张表我自己都沉默了。三年的日常工作,让我在Web漏洞复测上有一些积累,但游戏真正有趣的部分——从拿到一个普通shell,到一步步提权到root或者System——我基本是空白。

这正好解释了为什么很多工作多年的安服人员反而考不过OSCP:不是基础差,而是把自己的训练范围锁死在了项目需求里。客户只关心Web站能不能扫出漏洞,你就不会逼自己去了解主机层、内网层的东西。

2.3 第一次试做实验室靶机:两小时只拿下一台

裸检的最后一步,是直接上手实验室靶机。

我挑了官方实验环境里难度标“容易”的两台机器,想看看自己独立能走到哪一步。结果两小时过去,我只打通了一台“入门中的入门”机器,另一台明明扫出了Apache和一个CMS,却怎么也找不到正确的利用方向。我花了一个小时反复尝试网上搜到的某个已知漏洞,最后发现版本根本对不上——典型的“看见版本号就想套exp”。

这次试水给我的最大教训不是技术不够,而是思路有问题。我习惯性地跳过基础枚举,总想靠某个“一剑封喉”的漏洞直接拿下。而真实考试里的机器,大多需要你老老实实做一轮完整的信息收集:robots.txt里可能有路径,源码注释里可能带账号,备份文件里可能塞着数据库密码。少跑一条命令,可能就少一条攻击链。

从那一刻起,我不再把自己当成“有三年经验的老手”,而是重新归零,按一条更符合OSCP语境的网络安全学习路线走:先系统枚举,再研究漏洞,最后讲证据链。

3. 训练场配置与备考节奏:上班族怎么挤出系统时间

3.1 本地靶机环境清单:快照、网络隔离一个不能少

备考的三个多月里,我的一半时间花在官方实验环境里,另一半时间则靠本地靶场支撑。本地环境不是为了复刻实验室,而是为了随时能练、练完能重置、玩崩了不心疼。

我的基础配置供参考:

  • 虚拟机软件:VMware Workstation Pro,习惯用VirtualBox的也完全没问题;
  • 攻击机:Kali Linux,保持系统更新,工具箱随用随取;
  • 目标机:Windows 7、Windows 10、Server 2008 R2、Server 2012 R2,再加几个常用版本的Ubuntu和Debian;
  • 网络模式:全部设置成Host-Only或隔离的NAT网段,避免靶机和公司电脑之间互相影响。

有两件事特别提醒。第一是快照一定要打,尤其是在做内核提权或者修改系统配置之前。我前期经常把靶机打成半残状态,没有快照只能重新装系统,很浪费时间。第二是网络隔离别偷懒,虽然本地靶机危害不大,但职业习惯要求我们哪怕在自己的电脑上做实验,也要用虚拟网段隔离开,这是渗透测试人员的底线。

3.2 靶场和练习资源怎么取舍

市面上的靶场很多,备考时间有限,别囤课不刷机。

我实际用的就几个:

  • 官方PWK课程与实验环境:和考纲贴合度最高,课程PDF加预配靶机会带你跑完整思路,报名后送的实验室时间很宝贵,别浪费在做HTB上;
  • Proving Grounds(PG Practice):难度接近考场真实环境,题目按难度和类型分类,适合考前针对性刷;
  • HackTheBox(HTB):机器多、社区解析丰富,适合专项补短板。缺点是部分机器需要会员,且风格偏CTF,和OSCP不完全一样;
  • TryHackMe:新手向,用来补单个知识点很合适;
  • VulnHub:老牌靶场,下载镜像在本地跑,适合练习真实漏洞利用流程。

我会建议备考的朋友按照“官方实验室为主、PG补漏、HTB练感”的优先级来分配时间。千万不要今天刷HTB明天玩VulnHub,最后哪条攻击链都没吃透。

3.3 三个月节奏表:工作日专项、周末整块、笔记沉淀

上班族想备考,拼的不是意志力,是时间规划。我的方案是工作日练专项,周末做完整链路。

第一个月:信息收集与Web攻击。每天晚上8点到10点,固定练一题。重点不是打下来,而是把枚举流程做到肌肉记忆:端口服务、Web目录、源码注释、隐藏文件、认证逻辑,全部过一遍。每台机器打完之后,当天必须写一份简短复盘。

第二个月:漏洞利用与提权。这个阶段最难挨,Linux刚有点手感又要切Windows提权,思路经常拧不过来。我的笨办法是每种提权方向都自己搭环境复现一遍,比如SUID滥用、sudo配置错误、计划任务投毒、Windows服务权限问题等,做过一遍和看过十遍完全是两种掌握程度。

第三个月:AD域与横向移动+模拟考试。AD域对工作三年的我来说几乎是全新领域,必须承认这块压力最大。但它是新版考纲必考项,绕不过去。我把Kerberoasting、AS-REP Roasting、哈希传递、令牌模拟这些攻击方法逐个在本地域环境里跑通,再配合官方实验里的AD题目做综合训练。

周末的安排是完整链路模拟:上午9点到下午5点,不暂停、不求助,模拟考试状态。下午结束后写报告和复盘。

3.4 用Obsidian整理可检索笔记,最后两周做脱稿模拟

备考中期我开始用Obsidian整理笔记。为什么不用Notion或博客?因为Obsidian是本地存储,支持Markdown,命令块、思路图、截图都能快速索引。备考内容越积越多时,你会发现自己写的“攻击链复盘”就是最宝贵的复习资料。

我的笔记结构很简单:每台机器一个页面,记录IP、开放端口、入口点、漏洞成因、利用命令、提权路径、踩过的坑。页面按阶段打标签,比如“信息收集”“Web攻击”“提权”“AD域”,后期随时可以按标签批量复习。

最后两周,我开始“脱稿模拟”。所谓脱稿,就是打新题的时候不允许自己边打边翻笔记,只能把笔记当字典用。这个过程很痛苦,但非常必要。考试时没有任何参考答案,你手头能依赖的只有思路和验证过的命令。如果平时做题习惯性看一眼别人的Writeup,考试时会彻底断片。

4. 经验型选手最容易翻车的三个能力缺口

4.1 工具和手工验证之间,差着整个“为什么”

三年安服工作给我留下的最大坏习惯,是拿到结果就停。

考OSCP之前,我扫到SQL注入,第一反应是上sqlmap一把梭。sqlmap跑出来,我就认为漏洞确认了。但备考过程中我发现自己对注入原理的理解薄得可怜。当考试环境里一个payload带上特殊过滤,或者脚本注入点在闭合方式上做手脚时,我改sqlmap的tamper脚本都无从下手。

真实的考场里,自动工具不一定报错,但误报率和漏报率都会让人抓狂。我后来做法是自己用curl手工构造请求,从最基础的报错判断开始,一点点确认漏洞语法和过滤逻辑。这个过程非常慢,但练到后期,我看一眼服务器返回状态码和数据库报错信息,就能大概判断出问题类型。这种能力在自动工具面前完全体现不出来,却是OSCP最想考的东西。

我给自己定了一条规矩:任何工具跑出结果,都必须能在笔记里写清三句话——工具接收了什么输入,这个输出代表什么含义,我用什么方法去验证它。写不出来,说明这个结果是不可信的。

4.2 提权不是记命令,是Linux和Windows两张知识网

提权是我备考前最心虚的部分,也是经验型选手最容易浮躁的地方。很多人一提提权就背命令、背exp,但题目稍微换个场景就抓瞎。正确的做法是搭建两套知识体系:

Linux提权主线:

  • sudo -l里列出来的每条权限都要逐项分析,不能只看有没有NOPASSWD;
  • SUID文件重点看有没有GTFOBins里收录的条目,以及它能否读敏感文件、执行Shell;
  • 计划任务里可写的脚本或二进制,可以替换或劫持;
  • 内核漏洞利用是备选方案,但内核崩了会直接把机器打瘫,必须放在最后;
  • 环境变量、PATH劫持这些“非主流”路径,老手特别容易忽略。

Windows提权主线:

  • 服务路径不带引号、服务二进制文件可写,是最高频的考点;
  • AlwaysInstallElevated开启时可以构造MSI提权;
  • 注册表自启动项、自动登录明文密码、存储的凭据,都是信息收集重点;
  • 别一开始就上内核exp,考试环境更看重配置错误利用。

我在真实项目里很少有机会走到提权这一步,因为客户往往只要Web漏洞清单。但考试不会停在Web层,攻下一台机器只是开始,拿到高权限才算真正拿下。这条能力线补得最慢,也最值得补。

4.3 主动枚举要养成强迫症:少跑一条命令,可能少一条链

很多有经验的人考OSCP,栽在“以为自己在考漏洞利用”上。实际上,OSCP的信息收集和枚举比重远超想象。

我的教训是:每次进一台机器,先把手里的枚举基线跑全,再开始考虑利用。所谓“基线”包括:

  • CPU端口和UDP关键端口的扫描结果,不能只看前1000个常用端口;
  • Web目录字典爆破,不仅要跑常规目录,还要跑包含备份文件、隐藏路径的字典;
  • robots.txt、HTML源码注释、JS文件里暴露的接口字段;
  • Git/SVN源码泄露、备份压缩包、日志文件;
  • SMB和NFS共享里允许匿名访问的内容。

强迫症到什么程度?扫出端口后,我会逐个连一遍,记录banner信息;拿到Web站点,我会把根目录每个文件都过一遍,而不是只看首页。前期觉得耗时太长,后期发现节省的时间更多:因为很多机器在完整枚举后,入口点会自己跳出来,根本不需要猜漏洞。

4.4 新版考纲把AD域变成必选项,老手反而要重点补

老实说,备考OSCP之前,我对Active Directory的认知只停留在“域控制器开着,打不过去就换目标”的层面。日常工作接触的基本都是单机或者Web站点,域环境压根不在项目范围内。

新版考纲把AD域放进了必考范围,已经不是“加分项”。我开始时很慌,因为AD涉及的概念太多:域、林、信任关系、组策略、Kerberos认证流程,每一块都够写一本书。

我的应对方式是先把攻击手法拆成可验证的小实验。Kerberoasting就是定位到有SPN的高权限用户,申请其Kerberos服务票据并离线破解;AS-REP Roasting则聚焦未启用预认证的用户,直接拿哈希爆破;Pass-the-Hash是拿到哈希后不再需要明文密码去横向跳转。每一样都在本地域环境里自己打一遍,理解立刻不一样。

对三年经验的人来说,AD虽然陌生,但学习曲线完全可以接受。而且这一块的红利不止在考试:真正做内网渗透、红队项目时,AD攻击链几乎是必考内容。补上这一课,等于给自己打开了一扇和Web渗透完全不同的大门。

5. 考试实战:从预约到出分的完整体验

5.1 考前一个月要做的不只是刷题:报名、环境、时区

报名这一步看似简单,坑真不少。

考试券买了不代表万事大吉,还要在系统里选择考试日期和实践环境。我的经验是,预约日期之前,先对着官方Exam Guide把考场要求全部读一遍,包括摄像头摆放位置、桌面清理标准、是否有外接显示器、浏览器插件等。别想当然。

我第一次预约时就差点在时区上吃大亏。系统默认显示UTC时间,我按本地时间换算后依然不敢确认,最后把开考时间在日历里双重校准了一下,才放下心。考前一天把考试房间收拾干净,桌面清空,身份证和护照准备好,摄像头拍到桌面区域,灯光亮度调好。这些琐碎细节,任何一项出问题都可能耽误开考。

还有个容易忽略的点:考试过程很长,流程中休息、喝水、上厕所都要算进时间窗口里。提前准备好零食和咖啡,但别吃太油腻,真会犯困。

5.2 24小时时间分配:先保底、再冲分、留足报告时间

OSCP是100分制,70分及以上通过。目标是拿下足够多的节点,而不是在那台最难的机器上死磕到底。

我把自己的时间分配做成了固定套路:

  • 开考后第一个小时不做任何攻击,专门做信息收集。把所有目标的nmap、目录扫描、端口banner全部跑起来,形成全局视图;
  • 第二个小时开始先打最简单、最独立的机器,把基本分领先拿到。单独的低分入口往往比一条复杂的攻击链更值钱;
  • 中间大段时间处理AD域和综合攻击链,这一块分数高,但耗时也长,至少要留出6到8个小时;
  • 最后一到两个小时停止攻击,强制转向报告整理。入场时拿到的目标结构、中间产生的截图和命令记录,全部汇总进报告逻辑里。

有一点必须说清楚:后半夜的效率真的很低。我在凌晨三四点犯过一个低级错误,把一条命令的语法写错反复提交了半个小时。后来我接受了一个事实——该休息就休息,强撑只会浪费时间。定了闹钟,睡两个小觉再继续,效果比死扛好得多。

5.3 报告就是你的答辩:截图、证据链、可复现性

OSCP的最终成果不是一个个Flag,而是一份完整的渗透测试报告。考官不在你身边,也没法看你的操作过程,他们只能通过报告判断你是不是真的理解了这台机器。

我的报告模板是每台机器单独一个章节:

  • 目标信息和初始权限摘要;
  • 详细的信息收集发现,包括端口、服务、目录和关键文件;
  • 漏洞成因分析和利用过程,每一步都配上命令和输出截图;
  • 从初始权限到最高权限的提权路径;
  • 最终Flag截图,并标注获取时间和上下文。

截图要带时间戳和关键命令,别截一屏五彩斑斓的输出就完事。考官看重的是“可复现性”:顺着你的报告,别人能否重新走一遍攻击链。写报告确实耗费时间,所以流程上必须给报告留出固定时段,不能打完目标才发现没时间整理。

5.4 出分之后,无论过没过都要复盘

OSCP的成绩不是考完立刻出,一般要等几天。等待过程的心情我太懂了,天天刷邮箱,一会儿觉得稳了,一会儿又担心报告哪里没写好。

成绩出来后,如果通过了,恭喜,那是真的开心。如果没过,也别急着否定自己。花点时间复盘,对照考纲看看丢分点集中在哪:是模拟考试做太多但没认真总结,还是报告环节偷工减料?差得不多的话,下一轮补短板就行。

我的真实体会是,OSCP更像能力体检,而不是毕业考试。它不会因为你一次没过就否定你的安全从业道路,反而会帮你把最薄弱的部分暴露出来。考过一次的人,第二次备考心里完全有底。

6. 证书到手后的冷思考:它能给职业路径带来什么,不能代替什么

6.1 面试中的真实位置:能通过初筛,但不能替代技术面

拿到证书后,最直接的改变体现在简历筛选环节。投安全工程师、渗透测试相关岗位时,OSCP确实能让简历被多看一眼,“独立渗透能力”有了一个认证背书。

但它代替不了面试中的技术考察。我有次面一家安全公司,面试官很直接地问:你用哪种方式拿下的第一台AD域机器?Undead在内网中的横向路径是怎样的?这些问题没有标准答案,拼的就是你能不能把攻击链讲清楚。如果考完就把靶机仍了,很快会露馅。

所以我的建议是:备考过程中的每一台机器、每一条攻击链,都要当成以后的面试素材来沉淀。证书只是入口,能讲透的东西才是面试官愿意给高薪的核心。

6.2 SRC挖洞、红队方向和OSCP怎么互相成就

我在备考之前就在SRC挖洞平台混了一段时间。现在回头看,这两个方向其实是相互成就的关系。

SRC平台的实战能极快锻炼手工验证和绕过思路。真实业务系统不会给你标准的靶机环境,过滤、WAF、业务逻辑限制到处都是,逼着你去理解漏洞本质。而OSCP教会我的是“整链思考”:不要只盯着一个点,从信息收集到权限维持,每一步都是链条上的环节。

考完OSCP之后再回SRC,我的视角明显变宽了。不再只盯Web漏洞,还会主动看目标资产的端口暴露、服务配置、内网资源等。对红队方向感兴趣的朋友,备考期间一定要把AD域和横向移动吃透,这部分在真实内网场景里的复用度极高,也远比单点Web漏洞有技术壁垒。

6.3 聊聊“35岁焦虑”:证书不是免死金牌,能力护城河才是

备考期间,我多次看到“网络安全35岁会不会被裁员”的话题冲上热搜。设身处地想一想,焦虑的核心是职场人担心自己的经验变成沉没成本:工龄涨了,技能没涨,替代成本变低。

OSCP不能给你一条永久安全的职业道路,任何证书都不行。但它至少提供了一个清晰的成长标尺:每次拿下一个高难度靶机、每完成一个新的攻击链复盘,都在向自己证明“我还愿意学习,也还有能力学习”。这种东西写在简历上看不见,却能持续渗透到面试、项目和自我评估的每个环节。

对我而言,真正的职业护城河不是某张证书,而是“面对一个陌生的复杂攻击面,我可以独立摸出一条路径”的能力。这种能力没有上限,但也只能靠持续训练来维持。OSCP是这条路上很值得走的一段,它让我重新理解了攻击的本质,也让我比对“经验”二字有了更清醒的认知。

备考三个月,最大的收获不是那张证书,而是我终于把过去依赖工具的习惯扳了回来:每次扫到端口,会多问一句“这个服务背后有什么可能”;每次拿到shell,会多想一步“我该怎么往上提权”。这种思维方式,会让我接下来的五年、十年都不至于躺在旧经验上坐吃山空。

如果你也是工作三年的安全从业者,与其纠结年龄焦虑、纠结证书有没有用,不如先花两周做个裸检,报一场考试,再买一台靶机。用一台又一台的机器,把“经验”这两个字重新压实。

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

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

立即咨询