6.4.1. Algorithm container isolationΒΆ

The algorithms run in vantage6 have access to the sensitive data that we want to protect. Also, the algorithms may be built improperly, or may be outdated, which might make it vulnerable to attacks. Therefore, one of the important security measures that vantage6 implements is that all algorithms run in a container that is not connected to the internet. The isolation from the internet is achieved by starting the algorithm container as a Kubernetes job that is not given access to the internet (neither outbound nor inbound).

Note

Before version 5, vantage6 did not use Kubernetes. Then, algorithms were run in isolated Docker networks.

While the algorithm is thus isolated from the internet, it still has to be able to access several different resources, such as the vantage6 HQ if it needs to spawn other containers for subtasks. Such communication all takes place over interfaces that are an integral part of vantage6, and are thus considered safe. Below is a list of interfaces that are available to the algorithm container.

  • Vantage6 HQ is available to the algorithm container via a proxy server running on the node.

  • Addresses that are explicitly whitelisted by the node owner are made available to the algorithm container.

Note that all of these connections are initiated from the algorithm container. Vantage6 does not support incoming connections to the algorithm container.