项目介绍:
为自己的网段设置防火墙并尝试攻击其他组
网络结构:
每组有3个机器,包含一个gateway和两个workstation,其中gateway是可以连接到其他组的gateway,但是无法连接到internet,workstation可以连接到internet,并且组内的三台机器互通。
项目流程:
1. 首先,需要建立自己的服务,包括SSH,telnet,Apache Servier。每台机器包含一个wildcat用户,密码是adventure123,因此,每个team可以通过这个账户登录到其他组
2. 设置防火墙保护自己的服务
3. 尝试攻击其他组
攻击:
登录后运行如下命令:
1. seq 4 | xargs -p0 -n1 nd5sum /dev/zero 计算一个东西,会耗尽系统资源
2. fork bomb
3. fallocate -l 1G test.img 会预分配一个制定大小的文件
通过shell自动登录,并且循环运行:
#!/usr/bin/export
spawn ssh wildcat@192.168.5.1
expect "*password*"
send "adventure123"
puts "fallocate -l 1G test.img"
interact
写一个c使之循环运行,注意c里要fork()才行
这里有一个问题,即gateway无法yum因为没有连接到internet,可以通过NAT转换,但我们这里直接根据错误信息,找到了需要下载的地址,利用另一台下载,用u盘拷贝过去安装
防御:
我们将服务部署在了workstation上,别的机器访问gateway的时候,将访问请求转发到对应的workstation上(通过iptables实现)
设置/etc/sercurity/limits.conf 设置wildcat用户的权限。包括最多运行的进程数
一些命令:
who 查询当前登录用户
who -u [name] 查看用户进程
pkill name 踢掉某个登录的用户
编译c gcc -o name name.c
运行./name
sudo chmod -x s.sh sh要赋予权限后才能运行