CVE-2024-28185
Judge0 vulnerable to Sandbox Escape via Symbolic Link
Judge0 is an open-source online code execution system. The application does not account for symlinks placed inside the sandbox directory, which can be leveraged by an attacker to write to arbitrary files and gain code execution outside of the sandbox. When executing a submission, Judge0 writes a run_script to the sandbox directory. The security issue is that an attacker can create a symbolic link (symlink) at the path run_script before this code is executed, resulting in the f.write writing to an arbitrary file on the unsandboxed system. An attacker can leverage this vulnerability to overwrite scripts on the system and gain code execution outside of the sandbox.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
10.0
Judge0 vulnerable to Sandbox Escape via Symbolic Link
Judge0 is an open-source online code execution system. The application does not account for symlinks placed inside the sandbox directory, which can be leveraged by an attacker to write to arbitrary files and gain code execution outside of the sandbox. When executing a submission, Judge0 writes a run_script to the sandbox directory. The security issue is that an attacker can create a symbolic link (symlink) at the path run_script before this code is executed, resulting in the f.write writing to an arbitrary file on the unsandboxed system. An attacker can leverage this vulnerability to overwrite scripts on the system and gain code execution outside of the sandbox.
- Record
CVE-2024-28185- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - Weakness
- CWE-61, CWE-59
- Updated
- 2026-11-02
EUVDEUVD-2024-25309
10.0
Judge0 is an open-source online code execution system. The application does not account for symlinks placed inside the sandbox directory, which can be leveraged by an attacker to write to arbitrary files and gain code execution outside of the sandbox. When executing a submission, Judge0 writes a run_script to the sandbox directory. The security issue is that an attacker can create a symbolic link (symlink) at the path run_script before this code is executed, resulting in the f.write writing to an arbitrary file on the unsandboxed system. An attacker can leverage this vulnerability to overwrite scripts on the system and gain code execution outside of the sandbox.
- Record
EUVD-2024-25309- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - Updated
- 2026-11-03
NVD
10.0
Judge0 is an open-source online code execution system. The application does not account for symlinks placed inside the sandbox directory, which can be leveraged by an attacker to write to arbitrary files and gain code execution outside of the sandbox. When executing a submission, Judge0 writes a run_script to the sandbox directory. The security issue is that an attacker can create a symbolic link (symlink) at the path run_script before this code is executed, resulting in the f.write writing to an arbitrary file on the unsandboxed system. An attacker can leverage this vulnerability to overwrite scripts on the system and gain code execution outside of the sandbox.
- Record
CVE-2024-28185- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - Weakness
- CWE-59, CWE-61
- Updated
- 2026-11-02
OSV
10.0
Judge0 vulnerable to Sandbox Escape via Symbolic Link
Judge0 is an open-source online code execution system. The application does not account for symlinks placed inside the sandbox directory, which can be leveraged by an attacker to write to arbitrary files and gain code execution outside of the sandbox. When executing a submission, Judge0 writes a run_script to the sandbox directory. The security issue is that an attacker can create a symbolic link (symlink) at the path run_script before this code is executed, resulting in the f.write writing to an arbitrary file on the unsandboxed system. An attacker can leverage this vulnerability to overwrite scripts on the system and gain code execution outside of the sandbox.
- Record
CVE-2024-28185- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - Weakness
- CWE-59, CWE-61
- Updated
- 2026-11-02
Affected products
Public exploits
Links only. Every CVE stores no exploit code.
| Source | Link | Date |
|---|---|---|
| Metasploit | Judge0 sandbox escape | 2024-03-04 |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases, published | EUVD | |
| first indexed | CVE List, Metasploit, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2024-28185 is a critical vulnerability (CVSS 10.0) in Judge0, published April 18, 2024. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 7.06%, the 94th percentile. No source names a fixed version.
References
github.com/judge0/judge0/security/advisories/GHSA-h9g2-45c8-89cf
github.com/judge0/judge0/commit/846d5839026161bb299b7a35fd3b2afb107992fc
github.com/judge0/judge0/blob/v1.13.0/app/jobs/isolate_job.rb
github.com/CVEProject/cvelistV5/tree/main/cves/2024/28xxx/CVE-2024-28185.json
nvd.nist.gov/vuln/detail/CVE-2024-28185