OSCE3之路 - OSEP | PEN300
在2022年1月我拿到了OSCE3,OSEP是我在21年8月拿到的,其和PEN200-OSCP均属于PEN系列,也就是渗透测试类。
对于一些更加基础的信息,如报名问题、网络问题,请参阅OSCP篇
OffSec的所有认证都没有前置要求,如果不想考OSCP直接考OSEP,完全是可以的
OSEP的全称是 Offensive Security Experienced Penetration Tester ( OffSec 资深渗透测试员) ,属于OffSec的300系高级认证,主要聚焦于横向移动、域渗透和免杀并且相比OSCP更加贴近红队实战,提供了钓鱼等技术的教学
在OSEP考试中也有可能会出现教程中的钓鱼技术的考点,而不是停留在书面上
OSEP代替了旧版OSCE的位置,主要继承并拓展了OSCE的渗透测试技术部分,而二进制安全部分则被拓展并转移到EXP301-OSED中
基本信息
有关PEN300-OSEP证书的官方最新信息位于这里:https://www.offensive-security.com/pen300-osep/
报名方式和费用
对于个人用户,目前Offensive Security(后称OffSec)提供了2种购买方式
Packages
Subscriptions - 订阅制
####Packages
- 课程 + 60天Lab + 1次OSEP考试 1299美元
- 课程 + 90天Lab + 1次OSEP考试 1499美元
- 重考费:249美元
- 30天Lab延长:359美元
- 60天Lab延长:599美元
- 90天Lab延长:799美元
Subscriptions
Learn One套餐(2499美元): PEN300-OSEP课程 + 2次OSEP考试机会 + PEN210-OSWP课程 + 1次OSWP考试机会 + 365天Lab + PEN100课程 + KLCP课程 + 1次KLCP考试机会 + PG Practice会员
Learn Unlimited套餐(5499美元): OffSec所有课程 + 365天Lab + 无限次考试机会(受冷静期约束) + PG Practice会员
个人建议
可以发现300系列的套餐没有30天套餐,建议学习时间比较充沛的可以选择60天Lab,如果平时事情比较忙,可以考虑90天的Lab,由于我空闲时间比较充足,我的OSEP和OSED都是选择的60天套餐以节约时间,由于我的主要学习方向是Web安全,因此OSWE则是选择了更便宜的30天套餐(此套餐已经退役,并且大概率不会再出)
如何报名参加OffSec的认证与课程请阅读PEN200-OSCP篇
300系列横向比较
虽然在OffSec官方的评级下,300系列的三门课程难度是一致的,但是由于三个课程的考察方向不同,因此对于不同基础的每个人来说每个证书的难度也不同,我在和其它考生交流和讨论后,尽量避免由于基础产生的差异,认为PEN300-OSEP是一般而言最简单的一个,因为相比另外两门课程重点考察exploit的开发,OSEP还是聚焦在enumeration,对开发能力的需求更少
如何预习
300系列的课程被OffSec认定为高级课程,全部都需要或多或少的开发能力,官方页面上也给出了基础能力的需求,如下
- 扎实的enumeration和exploit能力(也就是PEN200-OSCP所重点考察的)
- 识别和利用漏洞的能力,如SQL注入、文件包含和本地提权
- 对于Active Directory(后简称AD,也就是中文中常说的“域”)和AD相关的攻击有基础的了解
除了官方自己给出的Prerequisites(预备知识),我经过课程的学习后,我认为掌握一些额外的基础知识会对于课程学习或参与考试有较大的帮助
- 熟练使用PowerShell,能够使用PowerShell对.Net Framework进行调用
- 熟练使用C#并掌握各种语言高级特性,尤其是反射等
- 对Windows API有足够的了解,明白如何使用C#调用Windows API
- 对Microsoft Windows系列的产品如Microsoft SQL Server、ASP.NET较为熟悉
官网教材大纲:PEN-300-Syllabus (offensive-security.com)
如果时间充沛,可以对着大纲,把各个知识点进行预习,也是不错的选择
由于由多台靶机构成的这样的内网练习环境目前还比较少见,我就不推荐课外的靶场了,我个人也没有为了OSEP去刷其它的靶场,如果有需要,可以自己选择
虽然我提到了OSEP在300系列的认证中开发能力要求最低,但是为什么还是建议大家掌握PowerShell和C#这些东西呢?这是因为教材中会为各种用到的技术进行深入讲解,包括每一行是做什么的,如何自己修改。虽然可以直接保存模板代码然后应对考试直接套用,但是我认为,学完教材中的原理,才是最重要的,否则就还是一个高级的一点的脚本小子罢了
关于课程
课程中的几个重要资源如下
- 教材 PDF版本和视频版本,建议阅读PDF,效率更高,看不懂的地方看视频操作即可
- Lab 提供了最贴近考试的各种靶机环境
- 300系列的学生靶机为每个学生独享,与OSCP的所有学生共享不同
- 学生论坛 里面提供了各种Lab机器的提示以及讨论,并且在官方管理员的控制下不会有答案泄漏
- 官方Discord频道 相比论坛为学生们提供了更便捷的实时讨论,学生注册后,在https://portal.offensive-security.com/ 中可以获取到邀请链接
OSEP的Lab环境与OSCP有显著的不同,OSCP Lab中每台机子都是一台独立的靶机,但是由于OSEP重点在于横向移动和域渗透,所以以Challenge的形式进行练习,每个Challenge中都会有多个靶机,少则3台,多至10台左右,每台靶机都会有不同的解法来拿下,如钓鱼、横向移动、SQL漏洞等
考试重点考察4块领域的能力,也是我们要重点学习的地方
- 横向移动(包括在多个网段之间穿越)
- 域渗透(主要是AD以及相关产品如MSSQL)
- 免杀(以静态免杀为主)
- 客户端攻击(也就是俗称的钓鱼)
相比PEN200-OSCP,PEN300-OSEP更加贴近实战,为什么这么说呢,在Lab和考试中,你都会发现,大部分机器的杀毒软件如Windows Defender都处在运行状态,只不过没有联网,在你拿到了管理员权限后,你还需要想办法去把这些安全软件给关闭或绕过,否则它们不仅会在获取shell的阶段妨碍你,还会在你进行横向移动或进行post-enumeration时妨碍你
关于考试
官方的考试指引:OSEP Exam Guide – Offensive Security Support Portal (offensive-security.com)
300系列的考试时长均为48小时
很多同学都是因为OSCP证书才了解到OffSec的认证体系,OSCP证书的考试形式相比其它证书采取实操制已经相当独特,而OSEP则采取了更加有趣的考试形式
在OSEP考试中,由于还是考查渗透测试技术,还是需要去攻击各台靶机,但是这次提供给我们的是一个模拟的实战环境,OffSec模拟出一个虚构的目标,也许是一个大型公司、也许是一个银行。考试提供给考生几个IP作为暴露的安全边界,你可以通过多种方式进行突破,可以攻击Web服务、可以尝试直接打exploit、甚至可以利用钓鱼
突破内网之后,就要开始横向移动了,综合利用各种技术,增加自己控制靶机的数量,每拿下一个靶机的最高权限账户,可以拿到proof.txt,对于部分靶机的低级用户还有local.txt,每个拿到的flag都价值10分,有两种方式通过考试,拿到10个flag也就是100分通过考试,或者攻克模拟的最终目标,其flag保存在secret.txt,拿到secret.txt就能够直接通过考试了
根据官方的说法,有至少两条攻击路径可以到达secret.txt,这意味着要么走完其中一条,或者两条路径都差不多走到一半,还是比较有弹性的,大家考试时可以自由选择
我在考试时由于另一条路线的安全软件一直绕不过去,所以就是一条路线走到底了,拿到了secret.txt成功通过考试,其中也经过了不止一个网段,感觉OSEP考试还是非常有趣
OSEP考试所用到的技术在Lab的Challenge全部有考查到,因此我认为只要扎实练好官方Challenge,掌握每一个知识点,通过考试还是不成问题的
写在最后
OSCE3之路 - OSEP | PEN300