Skip to content

Latest commit

 

History

History
38 lines (23 loc) · 3.26 KB

简介.md

File metadata and controls

38 lines (23 loc) · 3.26 KB

##Exploit-Exercises简介##

Exploit-Exercises项目提供了三种完整的Ubuntu虚拟机镜像,分别被命名为Nebula、Protostar和Fusion,可通过它们学习系统提权、漏洞分析和利用、Exploit开发、逆向分析和缓冲区溢出等安全技术。

本书只讲解Nebula,Nebula为初级平台,共有20个关卡,涉及了基本的源码级漏洞分析、提权、协议分析和简单的逆向工程等。Nebula有很高的学习价值,除了帮助不懂Linux的安全研究人员提高Linux平台上的安全技术,还可以帮助没有安全经验的开发人员提高编码安全的意识。

Exploit-Exercises的官方网站:http://exploit-exercises.com/。

##下载和安装## Exploit-Exercises官方提供了格式为ova的虚拟机镜像文件,下载地址http://exploit-exercises.com/nebula

注意:

截至2014-09-21,Exploit-Exercises的域名一直处于到期状态,请到http://pan.baidu.com/s/1hqIdJXa下bula镜像,该镜像正是我写本书时用的环境。

下载完毕后,用VirtualBox虚拟机导入即可:

  • 启动VirtualBox,点击菜单栏上的“管理”->“虚拟电脑”,在弹出的对话框中点击“选择”,找到 中“exploit-exercises-nebula-4.ova”
  • 点“下一步”,“复选重新初始化所有网卡的”。
  • 启动虚拟机,这时可能会弹出一个错误提示:Failed to open/create the internal network 'HostInterfaceNetworking-eth1' (VERR_INTNET_FLT_IF_NOT_FOUND).,若读着看到此错误提示,点“设置”,选择“网络”,再确定即可(VirtualBox这时会自动设置网卡)。

##玩法## Nebula有20个关卡,用Level0~Level19作为关卡标识,每个关卡的要求及相关代码在http://exploit-exercises.com/nebula上对应关卡的页面中获得。

每一Level都对应系统中以level开头的账号,密码与账号名相同(比如Level01,对应的系统帐号是level01),每玩一关,都需要用对应的账号登录系统,然后进入到/home/flag×目录中,与该level相关的代码、数据等都放在于此(相关程序的源码在http://exploit-exercises.com/nebula中对应Level页面里获得)。

系统中有一个getflag命令,用来验证是否提权成功。每个level开头的帐号都对应着一个flag开头的帐号,如果当前以flag开头的帐号运行getflag,将提示You have successfully executed getflag on a target account,那么说明你成功提权了;提权失败则提示getflag is executing on a non-flag account,this doesn't count

举个例子,比如进行第一关(Level00),流程应如下:

1、首先用level00登录系统(密码就是level00);
2、然后进入/home/flag00目录;
3、在`http://exploit-exercises.com/nebula`查看题目要求(或看本书);
4、得到权限后执行`getflag`;
5、如果当前是以flag00的身份运行getflag,提示`You have successfully executed getflag on a target account`则表示提权成功,然后登录下一关的level帐号。

如果需要配置系统,可用nebula账号登录,密码也是nebula,该帐号具有sudo权限。比如需要给镜像配置一个IP地址,然后用ssh登录进去,首先nebula登录系统,接着再执行sudo dhclient eth1(或者手动指定静态IP)。