目录
- 简介
- 第一节: 考试要求
- 第二节:考试信息
- 第三节:提交说明
- 第四节 常见问题
- 哪些考试被监考
- 参加监考考试有哪些技术要求
- ScreenConnect不能启动原因
- 参加监考需要尤其需要注意点
- 监考开始时间
- 如何连接到监考人员开始我的考试
- 完成考试前的步骤会让在实际考试中的时间减少
- 我在考试开始时没有收到我的连接包和考试登录详细信息。怎么办
- 在我开始考试之前,监考人员必须验证哪些考前要求
- 如果我不想完成考试前的要求怎么办
- 如何在考试期间与监考人员沟通
- 我可以在网络摄像头考试期间看到监考人员
- 在整个24小时的考试期间,监考人员会和我在一起吗
- 我可以在考试期间休息或者睡觉吗
- 我参加考试时其他人可以进入房间吗
- 我能早点结束考试吗
- 如果我与监考人员断开连接,ScreenConnect停止工作,或者我的网络摄像头停止工作,会发生什么
- 如果ScreenConnect或WebCam停止响应会发生什么
- 我是否必须始终保持WebCam浏览器窗口的状态
- 如果我在考试期间有疑问,我可以问监考人吗
- 我可以为WebCam Feed使用单独的机器吗
- 我可以在考试期间更改位置吗
- 如何正确关闭我的监考考试
简介
这份指南以解释oscp认证考试为目的。第一部分描述考试前需要准备的工具等,第二部分会给出重要的信息与建议,第三部分规定考试结束之后的一些说明,第四部分描述现考试监考的常见问题问答。
首先,OSCP考试要求学生通过VPN连入一个包含少数漏洞的模拟网络环境。学生有23小时45分钟去完成这个考试。比如,你在早上9点开始考试,那么考试结束时间便为第二天早上8:45。当考试结束时,你有24小时时间去完成与提交你的报告到oscp官方。关于如何提交报告部分将在下面详细描述。
注意
另外,现在OSCP考试开始设置监考,关于监考须知也将在下面详细描述。
第一节: 考试要求
考试中有几台目标机器必须被攻破,有些靶机会需要结合利用多个exp,比如,首先通过一个exp获取低权限的访问权,然后再利用其他exp通过提权获取root或则administration。另外一些靶机,可能通过远程便可以直接获取最高权限。只有在考试开始前,你才能知道每个目标机器的攻击利用详情,这些详情会位于你的考试控制面板。
文档要求
你需要写一份专业的报告描述你对每台靶机的利用过程。在报告中你需要记录下你完整的攻击过程,包括所有的操作步骤、输入命令脚本、console输出。总之,其他人通过你的文档要能够一步一步复现你的攻击过程与结果。
注意
文档要求是非常严格的,假如你没有提供足够完整的利用过程,可能会导致你的成绩被降低或者直接为零。另外,提交文档也只有一次提交机会。
Exploit 代码
假如你没有对exploit做任何更改,只需要提供exploit的原始访问URL,尤其是有几页长的代码,不要直接复制到文档中。
假如你对exploit进行了更改,你需要提供的内容如下:
- 更改后的exploit代码
- 原始exploit代码url
- 生成shellcodede的命令(假如适用的话)
- 高亮显示你更改的代码部分
- 你修改的理由
考试证据
待修改
你的考试目标是攻破每一个靶机,并提供对应靶机的proof。每一台靶机都至少包含一个proof文件,你必须拿到这个文件,然后把他提交到控制面板中,并且要把该信息以截图形式包含在文档中。
注意
在文档中没有一个包含proof 文件的截图,则对应靶机的得分为零
你必须在靶机的交互式shell中使用type或者cat命令输出这个proof files文件内容,通过其他方式获取文件内容的,比如通过webshell的方式,将导致对应靶机的得分为零。
在所有Windows靶机,你必须以以下用户权限运行shell才能获得满分:
- system 用户
- administrator 用户
- 其他用户,当有administrator权限
在所有的Linux靶机上,你必须要有root权限的shell才能获得满分。
控制面板提交
考试控制面板包含用户让你提交proof文件的部分。在考试结束前,你需要在该面板提交从靶机获取的loca.txt或者proof.txt文件内容。你提交过后,该面板不会给出提示,你的proof内容是否正确。下面是一个例子:
截图要求
提供的local.txt与proof.txt文件截图,要同时包含内容与对应靶机的ip地址,比如:
考试限制
在考试中,下面这些是严格限制的:
- Spoofing(IP, ARP ,DNS , NBNS ,etc)
- 商业工具或者服务 (Metasploit Pro, Burp Pro, etc.)
- 自动化利用工具(e.g. db_autopwn, browser_autopwn, SQLmap, SQLninja etc.)
- 批量漏洞扫描工具 (e.g. Nessus, NeXpose, OpenVAS, Canvas, Core Impact, SAINT, etc.)
- 其他工具,其中集成了上面这些被限制的工具
任何其他工具,但有上面相似功能的都是被会被禁止的,OSCP考试的主要目的是评估你识别和利用漏洞的能力,而不是利用自动化工具的熟练度。
但是,你可以对任意靶机使用下面这些工具例如Nmap(包含脚本引擎)、Nikto, Burp Free, DirBuster 等。除了本考试指南中包含的内容之外,我们不会对允许或限制的工具发表评论。
Metasploit 限制
Metasploit和meterpreter payload在考试中是有限制的,你只可以对一台靶机使用metasploit模板( Auxiliary, Exploit, and Post)或者meterpreter payload。
在选择对哪台靶机使用前,Metasploit/Meterpreter是不被允许用于对其他靶机做漏洞测试的,但你可以对你选择的唯一靶机使用任意多次Metasploit/Meterpreter。一旦你指定了对某台靶机使用后,不管利用成功与否,在其他靶机上Metasploit/Meterpreter将会被很快锁定。
但是,你可以对所有靶机任意此使用下面的模块:
- multi handler (aka exploit/multi/handler)
- msfvenom
- pattern_create.rb
- pattern_offset.rb
上面的这些限制对通过其他接口调用Metasploit的工具同样适用,比如(Armitage, Cobalt Strike, Metasploit Community Edition等)
第二节:考试信息
考试网络连接
你将通过在Kali Linux中使用OpenVPN连接到考试环境,关于如何连接的信息,将在考试开始前(不会提前)通过邮件的方式发送给你。
OpenVPN使用步骤:
1) 从邮件下载地址中下载exam-connection.tar.bz2文件到你的kali机器中
2) 解压文件
root@kali:~# tar xvfj exam-connection.tar.bz2
OS-XXXXX-OSCP.ovpn
3)初始化连接
root@kali:~# openvpn OS-XXXXX-OSCP.ovpn
4) 输入邮件中提供的用户名和密码连接到VPN
root@kali:~# openvpn OS-XXXXX-OSCP.ovpn
OpenVPN 2.3.4 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [EPOLL] [PKCS11] [MH] [IPv6] built on Dec 1 2014
Enter Auth Username: OS-XXXXX
Enter Auth Password: XXXXXXXXXX
Thu Mar 18 21:22:06 2016 WARNING: No server certificate verification method has been enabled. See http://openvpn.net/howto.html#mitm for more info.
Thu Mar 18 21:22:06 2016 LZO compression initialized
Thu Mar 18 21:22:06 2016 UDPv4 link local: [undef]
Thu Mar 18 21:22:06 2016 UDPv4 link remote: x.x.x.x:1194
Thu Mar 18 WARNING: this configuration may cache passwords in memory
Thu Mar 18 [127.0.0.1] Peer Connection Initiated with x.x.x.x:1194
Thu Mar 18 21:22:07 2016 TUN/TAP device tap0 opened
Thu Mar 18 /sbin/ifconfig tap0 192.168.xx.xx netmask 255.255.254.0 mtu 1500
Thu Mar 18 21:22:07 2016 Initialization Sequence Completed
考试控制板
考试控制板可以在你的邮件中找到,使用该控制板你可以做如下操作:
- 提交proof文件
- 恢复靶机快照
- 查看特定靶机与分值
靶机快照恢复
你有24次恢复靶机快照的机会的限制,在考试中你可以重置该限制一次,在考试开始前所有的机器都已经被刷新重置过了,故你不需要再去重置机器。再每次尝试点击重置按钮后,可能需要耐心等待一会。另外,需要注意,重置靶机后,将恢复到最原始的状态,你所有以前的操作都会丢失。
考试中proof文件
- proof.txt 这个文件只用root或者administrator用户可以访问到,位于/root/目录或者administrator桌面。这个文件每台靶机都有。
- local.txt 这个文件非管理员权限用户也可以访问,但只有指定的靶机有这个文件存在,关于哪台靶机存在这个文件将会再你的控制面板中详细描述
分值分配
- 再你报告中的靶机顺序与你考试得分顺序是一致的
- 获取每台靶机的部分权限或者管理员权限将得分
- 每台靶机都有一组特定的目标,必须达成这些目标才能获得满分
- 你必须达到70分的最低分才能通过考试
- 考试中最多可以达到100分
- 每台机器的具体目标和分值都位于你的考试控制面板中
取消得分
满足以下任意一项你将不会得分:
- 使用受限制的工具
- 在多台靶机上使用Metasploit Auxiliary, Exploit, or Post modules
- 在多台靶机上使用Meterpreter payload
- 无法在控制面板和屏幕截图中提供local.txt和proof.txt文件内容
建议使用的报告模板
使用官方提供的任意以下一个模板:
- https://www.offensive-security.com/pwk-online/PWKv1-REPORT.doc (Microsoft Word)
- https://www.offensive-security.com/pwk-online/PWKv1-REPORT.odt (OpenOffice/LibreOffice)
或者使用你自己的模板,只要你的报告呈现起来很有结构,很专业,并且遵循上述所有其他要求。
奖励积分
通过提交实验报告和课程练习可以获得五个奖励积分。
- 要获得五个奖励积分,您必须完成实验报告和课程练习
- 实验报告必须以单独的PDF文件提交,并与您的考试报告一起压缩。如果未能以正确的格式提交文件,将获得0奖励积分。请参阅下面的其他详细信息
- 实验报告必须包含对不少于10台靶机的完全利用攻击步骤的描述
- 所有关于靶机的配置或使用的漏洞的信息必须正确
- 必须使用ipconfig或ifconfig在屏幕截图中显示每台计算机的proof.txt,其中包含文件内容以及目标的IP地址
- 克隆的机器只能使用一次
- Offensive Security Complete Guide 用于指导的靶机不能包含在报告中
- 实验室报告中利用的所有漏洞必须是唯一的。您可能不会对多台计算机使用相同的漏洞
- 你必须成功攻击十个不同的目标。记录同一台机器的多个攻击向量不会授予额外的点数
- 课程练习必须附加到实验报告的末尾
- 课程练习必须完整且正确,但明确说明的除外
有关PWK报告要求的更多信息,可以参考https://support.offensive-security.com/pwk-reporting/
网络连接问题
考试指南的这一小节记录了如果由于严重的外部因素导致您无法完成考试时应该采取的措施。请务必仔细阅读并理解。
考试实验室是一个专门的环境,除了你自己以外没有其他学生。23:45小时时间确实考虑了生命及其情况:
- 你可能需要休息,吃饭、喝水和睡觉
- 对应突发事件你应该有一个应急计划(例如,确保你有备份的网络连接)
如果您有合理的原因,请立即发送一封包含您的OSID的电子邮件给“challenges AT offensive-security DOT com” ,确保包括所有必要的详细信息和支持信息,例如您的电力公司,ISP或任何其他相关文档的信函。
请注意,如果问题出现在我们这边,并且只有在考试之后该考试子网并没有被其他学生使用过时,我们才能延长实验时间,假如考试之后该子网被其他学生使用了,将提供免费重考机会。
联系方式
如果您遇到VPN或目标计算机的任何连接问题,请立即通知我们。首选的联系方式是通过在线聊天https://support.offensive-security.com/chat.php或通过电子邮件发送给“help AT offensive-security DOT com”,但无法为任何考试目标提供帮助或提示,并且仅在考试期间出现技术问题。
所有与考试文档和提交相关的问题,或其他非技术考试相关问题都应发送至“challenges AT offensive-security DOT com",除非您遇到VPN连接或考试环境的技术问题,否则实时聊天管理员无法帮助您处理与考试相关的查询。
第三节:提交说明
提交前检查列表:
- 您的报告是PDF格式
- 您的PDF已存档为受密码保护的.7z文件
- 您使用OSID作为.7z文件名的一部分
- 您已将.7z文件上传到https://upload.offsec.com
- 您已通过电子邮件将上传页面中的链接发送至“oscp AT offensive-security DOT com”
提交格式和名称
您的考试报告必须以PDF格式提交。不接受其他格式。如果您以其他格式提交报告,将不会要求或提醒您发送PDF,也不会对您的考试报告进行评分。在提交您的考试报告之前,请查看PDF文档以确保它与之前的文件类型一样,并且没有格式错误。
使用以下格式作为文件名:“OSCP-OS-XXXXX-Exam-Report.pdf”,其中“OS-XXXXX”是您的OSID。
如果您也要提交实验室报告,则可以使用以下格式作为文件名:“OSCP-OS-XXXXX-Lab-Report.pdf”。
压缩文件
您必须使用OSID作为密码并使用格式为“OS-XXXXX”的密码保护的.7z文件提交您的文档。这可以通过以下方式实现:7z a -p
root@kali:~# 7z a OSCP-OS-XXXXX-Exam-Report.7z -pOS-XXXXX OSCP-OS-XXXXX-Exam-Report.pdf
7-Zip 9.20 Copyright (c) 1999-2010 Igor Pavlov 2010-11-18 p7zip Version 9.20 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,2 CPUs)
Scanning
Updating archive OSCP-OS-XXXXX-Exam-Report.7z
Everything is Ok
提交上传
请通过https://upload.offsec.com提交.7z文件,并按照提供的说明上传您的存档考试报告。不接受其他下载链接(包括ExpireBox,Dropbox,Google Drive,个人网络服务器等)。请注意,只允许压缩文件。
文件提交后,您将看到“文件已上传!”页面,其中将显示指向您的考试报告的链接。您必须在完成考试后的24小时内将显示的URL通过电子邮件发送到“oscp AT攻击性安全DOT com”。
注意
如果您未将上传的考试报告链接发送到上述地址,则不会对其进行评分。如果您在考试仍处于活动状态时提交文档,则在接受您的文档后,您的VPN访问将被终止,您将无法再访问考试实验室。终止后,无法重新启用VPN访问。
收到确认书
请在提交报告后等待12小时,然后与我们联系核实收据。一旦我们成功审核并接受您的文档,我们将发送确认电子邮件并确认收到。如果您在12小时后仍未收到确认电子邮件,请发送电子邮件至challenge AT offensive-security DOT com
其他必要信息
万一我们需要对您的考试报告进行额外说明,我们会通过电子邮件与您联系。您必须在我们提出要求后的24小时内提交所要求的信息。
结果
您将在提交文档后的三个工作日内收到包含认证考试结果(通过/未通过)的电子邮件。如果您通过了考试,您将收到一份考试结果电子邮件,其中包含更新和确认您的证书交付地址的链接。请注意,我们不提供考试分数,靶机的攻击方法或证书的数字版本。
第四节 常见问题
哪些考试被监考
所有将于2018年11月30日之后安排的考试日期的OSCP考试将被监考。
参加监考考试有哪些技术要求
- 系统最小要求:
我们的系统应该都满足,不多余,注意需要一个外接摄像头用于考试前用户监考识别你的身份。 - 主机操作系统最低软件要求
操作系统:Windows 8.1 x64 / OSX Yosemite / MacOS / Kali 2017.x / Debian 9.3 / Ubuntu 17.10(某些操作系统需要Java SE Runtime Environment 9和适当的显示驱动程序Nvidia / Intel / Radeon。对于Nvidia,Nouveau图形显卡是不支持的);
虚拟化软件:VMware;
浏览器:火狐或者谷歌浏览器 - 网络
最小5mbps/下载,1mbps上传速度;
稳定连接
ScreenConnect不能启动原因
在linux主机上最基础的要求时需要Java jre9的环境或者更新,并且能够在浏览器终执行java applets。在kali Linux
的发行版中是不提供支持的,故假如需要特定问题的帮助,可以访问https://www.kali.org/kali-linux-documentation/ 的官网文档或者 the IRC channel #kali-linux.
参加监考需要尤其需要注意点
- 满足上面的硬件/软件要求
- 登录在线ScreenConnect和WebCam会话,以便在预定考试前15分钟签到,执行身份验证和预考试步骤
- 准备好显示一份有效的政府签发的身份证明,显示您的全名,照片,出生年份,签发日期和到期日期。您必须出示身份证的正面和背面或完整展开的护照
- 通过ScreenConnect与监考员聊天一起检查并确认已满足所有要求
- 衣冠整洁地参加考试 - 因为在整个考试期间,您是受到监控的
- 如果您不参加考试,请至少提前48小时通知官方
- 如果您没有在预定开始时间的1小时内出现在考试中,或者如果您不符合上述技术要求,您的考试将自动取消,您需要通过个性化购买补
- 您需要使用网络摄像头扫描整个房间,桌面区域以及监管人员指示的任何其他区域
- 所有休息,小睡,用餐或任何需要离开房间的时间之前和之后,您需要退房并与您的监考人员联系
- 休息之后,您可能需要为您的监考人员重新扫描房间和整个区域,然后才能恢复考试。如果需要,您的监考人员会通知您
- 在检查期间,检察官不能提供任何帮助;它们仅用于监控目的。如果您遇到技术问题或遇到与考试相关的问题,您需要联系官方
- 如果您提前完成考试,则必须通知您的监考人员。一旦您表明您已完成考试,监考人员将永久禁用与考试实验室的VPN连接
- 您应该始终以专业和尊重的方式与监考人员合作。针对监考人员的粗言秽语,个人暗示或任何与考试无关的谈话都可能导致考试立即失败,并且可能会被禁止重考
监考开始时间
您需要在预定的考试开始前15分钟登录ScreenConnect和WebCam会话
如何连接到监考人员开始我的考试
按照考试提醒电子邮件中提供的链接进行操作。对于大多数学生,您的连接链接将是https://screenconnect.offensive-security.com:8040(适用于ScreenConnect)和https://webcam.offensive-security.com/(适用于WebCam)。您的两个站点的代号将是您的OSID的数字部分
完成考试前的步骤会让在实际考试中的时间减少
只要您在考试开始前15分钟到达,监考人员就可以轻松地完成所有考试前的步骤。如果您晚于此时间到达,您的考试时间可能会受到影响。您的考试时间始终为预定开始时间的23小时45分钟。
我在考试开始时没有收到我的连接包和考试登录详细信息。怎么办
在您与监考人员完成预考试步骤之前,您的考试连接包和凭证将不会被发送。完成后,您的考试将开始,您的连接详细信息将在预定的开始时间或监考人员完成预考试后的5分钟后发送,以较晚者为准。
在我开始考试之前,监考人员必须验证哪些考前要求
- 监考人员会要求您确认您是否符合考试的技术要求
- 您将通过向网络摄像头提供有效的政府颁发的身份证来验证您的身份
- 监考人员可以在ScreenConnect聊天窗口中提问
- 系统会要求您使用网络摄像头扫描房间和周围环境
- 监考人员会要求您在屏幕上显示所有正在运行的程序
- 一旦连接到考试VPN,监考人员将验证您是否只连接到考试VPN并要求您运行Troubleshooting.sh脚本,该脚本包含在VPN连接包中
如果我不想完成考试前的要求怎么办
不幸的是,我们需要让您重新安排考试。我们只将考场指定为监考考试室,一旦您的重新安排窗口关闭(考试开始前48小时),我们将无法将您转到其他房间
如何在考试期间与监考人员沟通
所有通信都将使用ScreenConnect聊天客户端进行。监考人员无法通过网络摄像头听到您或听到任何声音。
我可以在网络摄像头考试期间看到监考人员
No,监考人员可以看到你,但你将无法看到监考人员。
在整个24小时的考试期间,监考人员会和我在一起吗
在整个考试期间,您将有一名监考人员。您的监考人员在考试期间可能会改变三到四次。为了避免在考试期间中断或分心,监考人员不会在他们离开时宣布另一个监考人员正在接管,但您将能够在ScreenConnect窗口中看到当前的监管人姓名。
我可以在考试期间休息或者睡觉吗
当然!只需在ScreenConnect聊天客户端中通知您希望休息的监考人员。在休息期间,您的VPN连接将保持活动状态,为了方便您在休息时保持部分进程一直运行。当您准备好恢复考试时,请通知监考人员。
我参加考试时其他人可以进入房间吗
如果其他人在您的考试期间进入房间,监考人员将在他们的观察报告中记录访问和访问的时长,但并不会使您的考试失败。
我能早点结束考试吗
是的你可以。只需通知监考人您希望结束考试。他们将关闭我们的考试并终止您的VPN连接。终止后,您的VPN连接无法重新激活,因此在请求结束考试之前,请确保您拥有所需的一切。
如果我与监考人员断开连接,ScreenConnect停止工作,或者我的网络摄像头停止工作,会发生什么
如果您在短时间内(几分钟)断开连接,监考人员只会做一个记录。如果您长时间断开连接,监考人可能会结束您的考试,您将被要求重新安排考试。如果我们发现技术问题是由于我们方面的问题,我们将尽一切努力让您的考试继续正常而不会产生任何后果
如果ScreenConnect或WebCam停止响应会发生什么
请关闭浏览器窗口和会话,然后重新启动ScreenConnect和/或WebCam会话。重新连接后,请通知监考人员应用程序停止响应并重新启动它以更正问题。
我是否必须始终保持WebCam浏览器窗口的状态
不,我们发现在屏幕上看到自己会分散注意力。启动WebCam并登录后,我们建议您从浏览器中分离该选项卡,并在进行考试时将窗口最小化。请不要关闭选项卡或浏览器窗口,因为它会断开WebCam。
如果我在考试期间有疑问,我可以问监考人吗
不,监考人员只是作为观察员和协调人。如果您在考试期间需要技术帮助,请访问support.offensive-security.com或发送电子邮件至challenge@offensive-security.com
我可以为WebCam Feed使用单独的机器吗
是的,如果需要,您可以使用机器仅提供WebCam视图。但是,必须在主机系统上启动ScreenConnect(不在VM内部)。
我可以在考试期间更改位置吗
是的你可以。如果您愿意,您需要通知监考人员。在您的位置更改期间,您的考试VPN将被暂停,并且在您重新加入ScreenConnect和Webcam会话并通知您的监考人员返回之前不会重新激活。一旦您的监考人员重新激活您的考试VPN,可能需要长达五分钟才能再次使用。
如何正确关闭我的监考考试
首先,请确保您已在聊天窗口中告知监考人您希望结束考试。接下来在网络摄像头应用程序上,单击“结束会话”,然后在浏览器上关闭此选项卡。对于ScreenConnect会话,请单击标题栏中的“选项”按钮,从菜单中选择“退出”并在浏览器上关闭此选项卡,显示“当前正在查看您的计算机”。