深入解析OSEP渗透测试认证:从课程内容到实战考试全攻略

本文详细介绍了Offensive Security Experienced Penetration Tester (OSEP) 认证课程的核心技术内容,包括反病毒规避、Active Directory枚举、C#载荷开发等高级渗透测试技能,并分享考试准备策略和实战经验。

Offensive Security Experienced Penetration Tester (OSEP) 回顾与考试

2021年3月11日 · 1562字 · 8分钟阅读

好事成三 🔗

去年八月,Offensive Security宣布退役长期存在的Offensive Security Certified Expert (OSCE) 认证,并用三门课程替代,每门课程都有各自的认证。如果获得全部三门认证,还将获得新的Offensive Security Certified Expert – Three (OSCE3) 认证。

虽然这无疑是Offensive Security的一个伟大商业决策——市场喜欢捆绑销售——但这些课程对安全专业人员有多有用?三门课程中的第一门,高级Web攻击与利用(WEB-300)/Offensive Security Web Expert (OSWE),当时已经发布,是一个已知的量。2020年10月,Offensive Security发布了规避技术与防御突破(PEN-300)课程,附带Offensive Security Experienced Penetration Tester (OSEP) 认证,最近还发布了Windows用户模式漏洞开发(EXP-301)/Offensive Security Exploit Developer (OSED)。这三门课程针对特定领域,因此与进攻性安全中的不同角色相关。

由于我已在2019年获得OSWE,我在2021年1月至2月参加了60天的OSEP套餐。在撰写本文时,费用为1299美元。PEN-300/OSEP教授红队技能——如果你的工作涉及网络渗透(例如通过钓鱼邮件)并随后通过Active Directory环境进行横向移动,偶尔涉及Linux服务器,这门课程适合你。如果你主要从事应用程序渗透测试(如Web和移动应用),OSWE更合适。如果你在二进制文件中进行漏洞研究,OSED将建立这一基础。

总体而言,我认为OSEP物有所值,因为它提供了大量的内容以及优秀的实验室,通过实践巩固学习。以下是我的回顾以及一些最大化OSEP体验的技巧和窍门。

你应该知道什么 🔗

在开始之前,Offensive Security建议以下内容:

  • 熟悉Kali Linux和Linux命令行
  • 具备枚举目标以识别漏洞的扎实能力
  • Bash、Python和PowerShell的基本脚本能力
  • 识别和利用漏洞,如SQL注入、文件包含和本地权限提升
  • 对Active Directory的基础理解和基本AD攻击知识
  • 熟悉C#编程是加分项

鉴于PEN-300是一门高级课程,如果你没有OSEP所需的基本技能,我强烈建议先获得OSCP。此外,尽管课程说熟悉C#编程是加分项,但考虑到C#在课程中的大量出现,我认为这几乎是必需的。

你将学到什么 🔗

当谈到Offensive Security课程时,我期待核心知识的主菜以及一系列有趣的配菜。虽然PEN-300深入探讨核心渗透测试技能,如反病毒规避和Active Directory枚举,但它还包括一堆额外内容,如信息亭黑客(如机场互联网终端或数字商场目录)、DNS数据渗出等。你永远不知道什么时候可能需要这些知识,但我觉得这有时是以深度为代价的。特别是,我觉得Linux部分明显比Windows部分稀疏;查看bash历史或Vim配置并不是突破性的。

另一方面,OSEP在深入时非常出色。我开始课程时只有对Active Directory和Windows载荷的粗略知识,但结束时自信能够制作可以规避大多数反病毒引擎的Word宏或C#可执行载荷,并随后在网络中进行横向移动。特别是,OSEP教你许多工具在幕后使用的Windows系统API。因此,而不是使用Mimikatz转储凭据数据库,你将学习Mimikatz如何做到这一点并自己编写代码。

因此,你将在Visual Studio中花费大量时间从头开始编写载荷。我发现这一经验在将我的知识推 beyond OSCP级别的实践技能 into 对Windows环境的深入理解方面是无价的。漏洞利用和技术在现代环境中仍然相关;你将大部分时间在Windows 10和Windows Server 2019机器上工作,以及最新版本的Linux。机器还定期更新其反病毒签名。

我还非常喜欢每一章都建立在前一章的基础上。Offensive Security不断在你的初始载荷上设置额外的障碍,迫使你一次又一次地重建。让内存中的Meterpreter shell工作?尝试规避这个反病毒!成功绕过?如何击败AppLocker?获得shell并尝试运行一些枚举脚本?抱歉,伙计,你必须处理AMSI。最终,你将带着一个经过战斗考验的载荷和构建它的技能离开。

你还应该自学什么 🔗

尽管PEN-300相当现代,但它仍然错过了一些最新发展。此外,它只顺便提到像BloodHound这样的工具,但不教你如何使用它,这似乎是一个很大的遗漏。因此,我认为你应该用以下内容加强你的PEN-300知识:

  • BloodHound:几乎必不可少。学习如何使用SharpHound收集BloodHound数据,分析它,并发现横向移动向量。PenTest Partners有一个很棒的演练,并包括下面的截图。
  • CrackMapExec:熟悉这个工具并将其集成到你的工作流程中;它将加速你的横向移动。
  • 更好的枚举脚本:尽管PEN-300推荐了一些,但我发现通过运行几个不同的脚本获得了更好的覆盖;我喜欢用于Windows的JAWS和用于Linux的linuxprivchecker。
  • 其他Active Directory横向移动:HackTricks有一个很好的列表。

此外,熟悉你的工具的怪癖。例如,只有某些版本的Mimikatz在Windows 10上工作,但在其他版本上不工作;手头保留多个版本,以防你处理不同的环境。

我如何准备考试 🔗

鉴于OSEP是一门新课程,我倾向于过度准备:

  • 完成了每一个“额外里程”挑战
  • 完成了所有6个课程实验室(按顺序从1到6完成,因为它们难度递增)
  • 完成了几个HackTheBox Windows机器(见下文)
  • 完成了HackTheBox Cybernetics Pro Lab

我发现HTB机器没有我预期的那么有用,因为它们仅限于一台机器,而PEN-300专注于网络。以下是我尝试的机器,按有用性排序(最有用 first):

  • Forest
  • Active
  • Monteverde
  • Cascade
  • Resolute
  • Mantis
  • Fuse
  • Fulcrum

虽然它们对于练习各种工具如CrackMapExec非常有用,但有些太像CTF,尤其是在列表的末尾。我发现HackTheBox Pro Lab far more useful;Cybernetics由大约28台机器组成,跨越几个网络,并应用了许多PEN-300中教授的技术。如果你有闲钱(它相当昂贵,一个月90英镑 + 初始设置),我会说去做,但不是必需的。

此外,我在考试前做了一些载荷准备。确保收集你在整个课程中编写的所有载荷,并准备好部署。写下你在整个课程中学到的脚本、命令和工具,并知道如何使用它们。由于PEN-300在整个实验室中提供了工具的编译二进制文件,我建议将它们全部保存在一个地方,以便你有一个规范的Mimikatz或Rubeus版本,你知道在考试环境中会工作。

你还应该准备一个Windows开发虚拟机,使用来自Kali机器的共享驱动器,以便轻松构建和测试载荷。尽管实验室和考试提供开发机器,但通过VPN有点慢。Microsoft提供一个免费的Windows开发VM,非常适合这项工作。

考试本身是48小时(实际上是47小时45分钟),并提供几种通过途径。根据考试文档,你可以要么妥协最终目标机器,要么妥协足够多的机器以累积100分。

我花了大约半天时间横向移动通过网络并成功妥协最终机器。虽然这足以通过,但我花了接下来的一天半时间尝试其他机器进行练习和撰写报告。总的来说,我认为课程材料本身涵盖了考试所需的内容,没有必要为HackTheBox机器付费——只需完成你的额外里程并完成所有包含的实验室。总体而言,考试具有挑战性但并非不可能,特别是因为有多种通过方式。专注于你所学的内容,提前精炼你的载荷,你将能够做到。

在周一提交报告后,我在周五收到了通过确认邮件!

又一个被击败 🔗

随着OSEP的完成,我将参加EXP-301/OSED以建立我的漏洞研究技能。由于如今大多数网络安全专业人员必须在跨学科领域工作而不是孤立工作,Offensive Security Certified Expert – Three捆绑非常有意义。同时,我认为OSEP作为一个高级红队渗透测试课程独立存在。无论你是想 beyond OSCP进入红队,还是完善你的进攻性安全技能,都有适合你的内容。

training red team

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计