An insecure temporary file creation vulnerability exists in the AutoExtract component of Robocode version 1.9.3.6. The createTempFile method fails to securely create temporary files, allowing attackers to exploit race conditions and potentially execute arbitrary code or overwrite critical files. This vulnerability can be exploited by manipulating the temporary file creation process, leading to potential unauthorized actions.
The vulnerability results from improper implementation of temporary file creation (CWE-377 — Insecure Temporary File). There is a time window between checking the availability of a temporary file name and its actual creation, which an attacker can exploit to substitute their own file at the predictable path. By manipulating this process, a local user with limited privileges can trick the application into reading or writing a file substituted by them, which can consequently lead to arbitrary code execution or destructive file overwriting.
An attacker with local access to the system can execute arbitrary code in the context of the Robocode process or overwrite critical system files, potentially gaining higher privileges or causing system damage.
Patches available from the vendor should be applied according to the references. A fix is available as a pull request in the project repository: https://github.com/robo-code/robocode/pull/68. Until updating, it is recommended to restrict local access to systems running Robocode.
Robocode version 1.9.3.6 (AutoExtract component).
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:Y/R:U/V:D/RE:M/U:RedRobocode
APPRobocode1.9.3.6
Related vulnerabilities
Path Traversal w Robocode CacheCleaner — usuwanie dowolnych plików
Integer overflow w klasie Buffer Robocode umożliwiający RCE
Robocode: nieautoryzowana interakcja z zewnętrznym DNS (SSRF/DNS lookup)
Robocode before 1.6.0 allows user-assisted remote attackers to "access the internals of the Robocode game" via...
The Event Dispatch Thread in Robocode before 1.5.1 allows remote attackers to execute arbitrary Java code by u...