diff --git a/backend/terminal.ts b/backend/terminal.ts index 4a5d6b2..a78e27c 100644 --- a/backend/terminal.ts +++ b/backend/terminal.ts @@ -294,11 +294,14 @@ export class MainTerminal extends InteractiveTerminal { // Check if the command is allowed const cmdParts = input.split(" "); const executable = cmdParts[0].trim(); + const knownOperators = ["||", "&", ";"]; log.debug("console", "Executable: " + executable); log.debug("console", "Executable length: " + executable.length); if (!allowedCommandList.includes(executable)) { throw new Error("Command not allowed."); + } else if (knownOperators.some(operator => input.includes(operator))) { + throw new Error("Control operators are not allowed."); } super.write(input); }