背景
今天,2022年12月6日,我收到了 OSWE 考试通过的邮件。至此,Offsensive Security 之旅告一段落。我拿到了 KLCP, OSCP, OSEP, OSED, OSWE, OSCE3。圆满完成三月份立下的 FLAG,没有打脸。
这里,小小总结一下 OSWE 的相关内容。
OSWE 是 OffSec Web-300 课程的证书。Web-300 主要教授代码审计中的漏洞发现及利用的相关技巧,涵盖了 PHP,JS,Python,Java,.Net 等语言。按照惯例,300 是其 200 课程的升级,讨论了如何在更加严苛的环境下实施 CSRF,SSRF,SQL Injection 等攻击。对代码审计感兴趣的同学,可以报名这个课程,全程干货是真。
写在最前:欢迎大家来我的 Discord 频道 Northern Bay。邀请链接在这里:https://discord.gg/9XvvuFq9Wb
一起进步,一起 NB~
但是,开始之前,先看这里。
OSWE 考试的 VPN 我们是连接不上的 (我的情况就是这样)。所以,只能用 VPS 的机器考试。过程是比较痛苦的,因为很慢。适合心态平稳型选手。文末有 AWS Kali Linux with RDP 的搭建教程,有需要的同学取用。
考试相关
和所有 300 系列的考试一样,考试时间 48 小时,结束之后有 24 小时时间完成报告。100分满分,得到 85 分即可通过。
就是这样。考试之前一定阅读最新的考试须知,确保考试顺利。
备考贴士
- Python 一定熟练掌握(开发最终的 exploit 我想没有其他语言比 Python 更好用了);
- 完成课后所有的练习,包括 Extra Mile;
- 完成所有的 Lab 内容;
- vscode 的 debug 流程熟练掌握;
- 数据库的日志配置文件要能修改(输出 SQL 请求日志);
- 做 Lab 的时候,可以先都用黑盒的方式做;黑盒 fuzz 不出来漏洞,然后再换成白盒的方式;这样备考,效果更佳;
- 如果遇到了 vscode debug 的时候没有高亮当前行,可以到
File -> Preferences
,然后如图操作添加内容;
"workbench.colorCustomizations": {
"editor.selectionBackground": "#135564",
"editor.selectionHighlightBackground": "#135564",
"editor.lineHighlightBackground": "#464747",
"editor.lineHighlightBorder": "#b8bfbd"
}
大致就是这些。另外也就是临场了,再次祝大家好运~
后续
截至今天,我已经学完了 Offensive Security,TCM Security,PentesterAcademy,eLearnSecurity,Zero Point Security 的所有课程,还剩了 Zero Point Security 的两门(RTO I,RTO II)还没考。
各种课程有利有弊,之后有时间会出一个课程对比的文章,让想要考证的同学有个很好的参考。
继续积累经验,继续努力~
KEEP CALM AND HACK AWAY!
AWS Kali LInux with RDP
这里使用 AWS 因为 Kali 在 AWS 已经有镜像,而且配置容易。其他 VPS 情况不明,配置可能会繁琐很多。
注册 AWS 账号
AWS 好在不用梯子,直连。到这里注册一个账号(有账号的略过)。
中途会绑信用卡,没办法,我试过不绑卡登录不了。如果后续不需要使用 AWS 的,可以在考试结束之后删除账号,也就没有什么顾虑了。
订阅 Kali Linux 镜像
登录你的账号,然后到这里订阅 Kali Linux 镜像。按量收费。考试两天时间全开也就2-3美元左右。
依次如图操作。
Region
选成香港,其他默认。先不慌点 Launch
。我们得确认一下香港区域能不能用。
在新页面上,保证香港区域是 Enable
状态即可。
然后回到之前的页面,点击 Launch
。
配置 Kali Linux 镜像
如图操作。t3.large
更快一点。
创建 Private Key
创建一个新的 SSH key pair。
如下图操作。
浏览器会自动下载创建好的 key。保存好,后面用来连接。
回到之前页面,点一下刷新按钮。然后选择创建好的 key。
然后点 Launch
。
启动镜像
部署成功,到控制台查看。
如图。
增加存储
镜像详情里面显示只有 12G 硬盘,我们需要安装桌面应用,增加存储到 50G。
点击 Volume ID
。
勾选这个卷,然后在选择更改。
如图操作。
左上角回到控制台。
刷新一下页面,存储变为 50G。
重启一下实例,让存储变更生效。
连接实例
接下来连接到实例。我在 WSL 上演示,是 Linux 的话更方便。Windows 用户使用 Putty 的话大家自己搜一下连接方式。
复制 private key 到 ssh 目录,更改权限。
cp /mnt/c/Users/[username]/Downloads/testkey.pem ~/.ssh/
chmod 400 ~/.ssh/testkey.pem
连接 (IP 是实例的公网 IP,在实例页面查看)。
ssh -i ~/.ssh/testkey.pem kali@18.167.96.190
连接成功。
检查存储是否已经生效。
df
已生效。
安装配置 Xorg RDP
保存如下内容(假设保存为 kali.sh)。
#!/bin/sh
echo "[i] Updating and upgrading Kali (this will take a while)"
apt-get update
apt-get dist-upgrade -y
echo "[i] Installing Xfce4 & xrdp (this will take a while as well)"
apt-get install -y kali-desktop-xfce xorg xrdp xorgxrdp code-oss burpsuite
echo "[i] Configuring xrdp to listen to port 3390 (but not starting the service)"
sed -i 's/port=3389/port=3390/g' /etc/xrdp/xrdp.ini
echo "[i] Starting xrdp service now"
systemctl enable xrdp --now
systemctl enable xrdp-sesman --now
echo "[i] Changing kali user password to kali"
echo kali:kali | sudo chpasswd
echo "[i] Done! Now go set security rules for ingress traffic!"
切换成 root 用户运行。
sudo su
sh kali.sh
等待脚本执行完毕。安装过程中的提示,全部默认回车即可。
AWS Kali 已经设置好了防火墙规则,3389 和 3390 端口的流量已经开通。
Windows 使用 Remote Desktop 连接即可。Linux 使用 rdesktop
或者 xfreerdp
都行。
查看域名。这里域名显示不全,只需要双击,然后 ctrl c
复制即可。或者使用 IP 也行。
打开 Remote Desktop。
连接 3390 端口即可。用 IP 或者域名都可以。
用户名密码:kali:kali。
连接成功。
一开始会很慢,但是耐心等待一会儿,后面会顺畅一点。但是总不如本地。
终止实例
考试结束之后,如不需要该实例,选择终止即可。
祝各位好运~