Closed
Description
Test Cases may be leaked through RCE
Since the input
is stored as a file inside the docker image, there is a possibility that someone could leak the test cases. For example, they could do the following in Python:
import subprocess
input_file = subprocess.check_output('./input', shell=True)
print(input_file)
This can be fixed by modifying the permissions inside the Docker containers. An alternative could be to take input through stdin
. This is a critical bug and needs to be fixed.
However, a user might still be able to spawn a reverse shell inside the container or run a fork bomb. A feasible way to prevent this would be to block all outgoing network traffic and using something like nsjail inside the containers. This too is a security risk of critical severity.