The hook system in File Browser, which executes administrator-defined shell commands during file events such as upload, rename, and delete, is susceptible to OS command injection. The issue occurs in the `Runner.exec()` function within the `runner/runner.go` file, where variable substitution for values like `$FILE` and `$USERNAME` is performed using `os.Expand` without proper sanitization. An authenticated attacker with file write permissions can craft a malicious filename containing shell metacharacters. When the hook fires, the server executes these characters as arbitrary OS commands, leading to Remote Code Execution (RCE). This pattern is exploitable across various hook events, including `before upload`, `after upload`, `before rename`, `after rename`, `before delete`, and `after delete`.