FastNetMon Community Edition through 1.2.9 contains an OS command injection vulnerability in the Juniper router integration plugin. The _log() function in src/juniper_plugin/fastnetmon_juniper.php (lines 117-118) constructs shell commands by concatenating the $msg parameter directly into exec() calls: exec("echo `date` \"- {FASTNETMON] - " . $msg . " \" >> " . $FILE_LOG_TMP). The $msg variable contains unsanitized data derived from command-line arguments argv[1] through argv[3], which represent the attack IP address, direction, and power. While FastNetMon's C++ core currently passes IP addresses via inet_ntoa() (which only produces safe dotted-decimal notation), the PHP script performs no input validation or shell escaping. If the script is invoked directly, by another orchestration system, or if future code changes pass string-sourced IPs, arbitrary commands can be injected. The correct fix is to replace exec() with file_put_contents() or use escapeshellarg() on all parameters.
References
| Link | Resource |
|---|---|
| https://github.com/pavel-odintsov/fastnetmon | Product |
| https://github.com/pavel-odintsov/fastnetmon/blob/master/src/juniper_plugin/fastnetmon_juniper.php | Product |
| https://lorikeetsecurity.com/blog/fastnetmon-cve-2026-48687-juniper-cmd-injection | Exploit Third Party Advisory |
Configurations
History
No history.
Information
Published : 2026-05-26 16:16
Updated : 2026-07-21 19:10
NVD link : CVE-2026-48687
Mitre link : CVE-2026-48687
CVE.ORG link : CVE-2026-48687
JSON object : View
Products Affected
pavel-odintsov
- fastnetmon
CWE
CWE-78
Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')
