aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--snekbox/api/resources/eval.py2
1 files changed, 2 insertions, 0 deletions
diff --git a/snekbox/api/resources/eval.py b/snekbox/api/resources/eval.py
index 88bbf96..943ecff 100644
--- a/snekbox/api/resources/eval.py
+++ b/snekbox/api/resources/eval.py
@@ -132,6 +132,8 @@ class EvalResource:
raise falcon.HTTPBadRequest(title="binary_path does not exist")
if not binary_path.is_file():
raise falcon.HTTPBadRequest(title="binary_path is not a file")
+ if not binary_path.stat().st_mode & 0o100 == 0o100:
+ raise falcon.HTTPBadRequest(title="binary_path is not executable")
try:
result = self.nsjail.python3(