DangerZone Network
Overview
This article explains the layout of the networks in the DangerZone from the perspective of the gateway.
Wifi Public switch NICs on box vmserver gateway
Networks
There are four different networks that the gateway has to deal with.
Internet
The adapter named eth-pub has a direct connection to the top-level switch at SkullSpace, and has been assigned the IP 206.220.196.62.
Only three services are exposed to the Internet:
- SSH
- VPN
- HTTPS
All other incoming traffic is blocked.
VMs
The VMs exist in the 10.255.0.0/16 subnet, with 10.255.0.1 assigned to the eth-vms adapter. All IP addresses in this range are statically assigned.
VMs are permitted to receive connections on a case-by-case basis, as determined by the author of the challenge the VM is running. By default, all incoming connections to the VM network from the VPN and Wifi networks are blocked.
VMs have limited access to the Internet for the exclusive purpose of pulling down updates. The gateway maintains a whitelist of hostname:port pairs that are permitted from the VM network.
Our assumption is that the VMs are not in our control, and may be acting on the direction of anyone on the VPN or Wifi networks.
VPN
When a user wishes to access the DangerZone from the Internet, the web interface must be used to generate an OpenVPN certificate. VPN users are statically assigned addresses in the 10.1.0.0/16 range. The adapter tun0 has been assigned the IP 10.1.0.1.
The VPN network is never permitted to access anything other than the Gateway's VPN adapter and the VM network. Said another way, the VPN network may never talk to the Internet or the Wifi network.
We absolutely do not trust anything that comes out of the VPN.
This network never accepts incoming connections.
Wifi
When a user accesses the Wifi network, they will get an dynamically-assigned IP from a DHCP server in the 10.0.0.0/16 subnet which should be good for a week. The gateway's eth-wifi adapter is connected to this network, in fact it has a direct connection to the access point, and is assigned the IP 10.0.0.1.
Users connected over to the Wifi network will be at our physically at (or outside) our hackespace, and likely not connected over ethernet. This means that we need to give them access to the Internet, because they won't have another way to get to it. Users on the Wifi network should have unrestricted access to the Internet, just like if they were our non-DangerZone wifi.
This network never accepts incoming connections.
Adapters
Name | IP | Services |
---|---|---|
eth-pub | 206.220.196.62 | SSH, VPN, HTTPS |
eth-vms | 10.255.0.1/16 | |
eth-wifi | 10.0.0.1/16 | HTTPS |
tun0 | 10.1.0.1/16 | HTTPS |
Filtering
From | To | Allowed? | Notes |
---|---|---|---|
Internet | Gateway | Partially | SSH, VPN, HTTPS |
Internet | VMs | No | Protect our infrastructure. |
Internet | VPN | No | Protect our users. |
Internet | Wifi | No | Protect our users. |
Gateway | Internet | Yes | Useful for administration. |
Gateway | VMs | Partial | Whitelist of host:port pairs. |
Gateway | VPN | No | Protect our users. |
Gateway | Wifi | No | Protect our users. |
VMs | Internet | Partially | Whitelist of host:port pairs. |
VMs | Gateway | No | No reason for it. |
VMs | VPN | No | Protect our users. |
VMs | Wifi | No | Protect our users. |
VPN | Internet | No | Don't want remote users routing Internet traffic through us. |
VPN | Gateway | Partially | SSH, HTTPS |
VPN | VMs | Partially | Whitelist of host:port pairs as needed by the level. |
VPN | VPN | No | Protect our users. |
VPN | Wifi | No | Protect our users. |
Wifi | Internet | Yes | Users will have no other method to access the Internet. |
Wifi | Gateway | Partially | SSH, HTTPS |
Wifi | VMs | Partially | Whitelist of host:port pairs as needed by the level. |
Wifi | VPN | No | Protect our users. |
Wifi | Wifi | Yes | Internal to the access point, we can't control. |