OSWE 尾篇 考试的方法论
在刚过去的中秋节 2021.9.19-9.21这两天里面我已经完成了自己的OSWE考试,拿到了及格的分数。
最终获取到了OSWE考试通过的通知
这篇文章的目的是为了向没有经历过OSWE考试的同学扫盲,以及说一些注意事项。 我会在这篇文章当中谈论如下几点 - OSWE考试整体的介绍(强调考试) - 如何进行考试 (一些考试的技巧,考试需要注意的东西)
OSWE考试
考试介绍
简单介绍下刚经历的OSWE考试吧
分数
考试满分是100分,及格的分数是85分。 每台主机的分数是50分,获得webAdmin权限是35分,获得机器权限是15分。 所以你想要通过的话,必须要获得一台主机的完全权限和另外一台主机的webAdmin权限。
一共会给你五台主机,两台是靶机,两台是靶机的镜像(你可以ssh进行登录),还有一台是调试的主机(你可以使用远程的镜像进行登录)。
时间
考试的时间是47h45mins,但是因为会检查你的身份等信息,所以实际时间会低于规定的时间,并且大多数情况不会进行延时。
流程
- 从最开始的邮箱当中的学生控制台当中预约考试时间
- 指定时间准备你的护照,或者带有英文名的证件(翻译的身份证也行)进行检查,登录监考平台(邮件当中会进行发送)
- 考官验证身份,和考试的环境,会让你在房间里面来回走,看桌子底下等。
- 考官确定检查完毕后,发送邮件到你的邮箱当中,邮件包括了连接的vpn下载地址和连接靶机的密码等信息
- 开始考试
- 到了时间,VPN会自动断开,考官会在监考平台当中提示你关闭监考。
- 下载你的oswe考试模板,按照模板填写内容。
- 提交你的考试报告到网站,收到提交成功的邮件,考试结束。
考试技巧
时间的安排
在网上看其他人的osweReview总喜欢说的是时间比较够。 但这个其实也是和个人的关系比较大。
我在这里分享一下我的时间线
9.19 11:00 开始考试
9.19 18:30 获得第一台webAdmin
9.19 20:30 获得第一台机器权限
9.20 10:30 开始考试
9.20 20:30 获得第二台webAdmin
休息
因为我住城中村网络十分不好,所以我的考试地点是在公司,导致每次回去睡觉都会花费大概12个小时还多。所以实际上我考试的时间是小于24个小时的。
但是我依旧会抽时间出去透透气散散步,做代码审计不是做苦力活,更像是初中数学里面的平面几何题目,猜测解决的方法不断进行尝试,如果一直困在一个地方是肯定解不出来的。
关于休息我的建议是每一个小时就要休息5分钟。另外要保持充足的睡眠,睡不着过于兴奋可以吃褪黑素。
巧妙使用虚拟机
-
考试之前在kali当中打开所有需要打开的程序,并且配置好需要的工具 ,并连接上外网VPN 做到一放题目就能立马开始做的样子,免得手忙脚乱 保存快照。
-
当拿到一个proof的时候记得截图,记得在burp和实际的环境当中都进行截图进行保存,顺带保存一个快照。(方便后进行回顾)注意proof还需要在控制台当中进行提交,当然有朋友考试的时候没提交后面发送邮件给官方也行。
善于总结
思维导图
将所有能够拿到管理员的方式,所有能够从管理员到机器权限的方式进行总结并且列出一个思维导图。
兔子洞
考试是存在兔子洞的,所以作为考试人员不仅要知道怎么做达成目标,也要知道如何防御和绕过防御,以免掉入兔子洞。
不可是是而非
对于一些编程语言的问题也必须时刻保持清晰,不可是是而非。
举一个我认为最简单的例子
PHP弱比较很多人都清楚,但是PHP7对弱比较采取了那些防御?
弱比较在PHP7当中还能如何去利用?
和PHP5之间的区别是什么?
作为考生你要了解到这个精细度才行,或者你保证你考试的时候能够想到这个精细度。
注意事项
提交报告的注意!
上传了你的报告之后,请记得confirm。 点击confirm之后你的报告才正式上传了,直到你的邮箱收到了confirm报告的邮件才说明你真的上传成功了。
这里注意真的是一个坑,很多朋友没有收到邮件就代表没有提交成功报告,导致最后考试的失败。
脚本文件
作为OSWE的考试,你的脚本必须要能够一键getshell,而且offsensive官方对于脚本有要求,必须将所用到的脚本放在一个文件当中。 这个地方其实也是一个对于考生有要求的点,需要将脚本的内容进行合并。 这里对应出来也有一些技能上的考核,比如是否能够使用python进行编写一键shell脚本的能力之类的。
最后
OSWE是一个说难也难说简单也简单的考试,其中最考察的是学生对于各种漏洞的利用方式和可能造成问题的地方的一个熟悉程度。
至于如何进行熟悉就需要不断地刻意练习,平时下来多总结哪些功能点会出现哪些问题。
细心+平时总结积累+经验+Try harder 就一定能够通过考试