本项目是计算机安全的入门教程。Snow Crash 将通过以开发者为中心的方式,帮助你探索安全领域的多个子方向。你将熟悉多种语言(汇编、Perl、PHP 等),培养理解未知程序的逻辑思维,并意识到简单编程错误可能引发的问题。
Snow Crash 是 42 学校网络安全分支的第一个项目。它介绍了一些知名的系统漏洞,主要聚焦于 Linux 操作系统,迫使我们去深入了解它并理解它如何可能被利用。
我们学习的主要主题包括:
我们于 2025 年 2 月通过了该项目,获得了 125/100 的分数。
要开始此项目,首先需要下载并安装 42 提供的 ISO 映像。
然后你需要使用该 ISO 映像在虚拟机上运行。如果使用 VirtualBox,你必须在 网络 选项卡中将 连接方式 设置为 仅主机 (Host-Only) 网络。
你可以通过 SSH 连接到第一个关卡。IP 地址显示在虚拟机的开机屏幕上,端口为 4242。第一关的凭据为用户名和密码都是 level00。
ssh [email protected] -p 4242
一旦你找到了下一关的密码,切换到对应的 flag 用户并执行 getflag 命令,以获取登录下一个 level 用户所需的密码。
level00@SnowCrash:~$ su flag00
Password:
Don't forget to launch getflag!
flag00@SnowCrash:~$ getflag
Check flag.Here is your token: ?????????????????
flag00@SnowCrash:~$ su level01
Password:
level01@SnowCrash:~$ _
并不总是必须作为 flag 用户登录,有时你可以找到其他方法直接获得下一个 level 的密码。