motionEye: Arbitrary File Read via Path Traversal in Picture/Movie Preview Endpoint
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Information disclosure, Security bypass
- Confidentiality · integrity · availability
- High · None · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-22, CWE-284 and the CVSS impact.
Summary
motionEye (mEye) is an online interface for motion software, which is a video surveillance program with motion detection. Versions prior to 0.44.0 are vulnerable to path traversal in the picture and movie API endpoints, suhc as /picture/{id}/preview/{filename}. Neither the API handlers, nor the mediafiles.py functions such as get_media_preview() check for .. sequences in the filename parameter, except for get_media_content(). This allows an authenticated user with normal (non-admin) privileges to read arbitrary files from the filesystem as the motionEye process user, such as: /etc/passwd, /etc/shadow, motionEye config files containing password hashes and plaintext passwords, SSH keys, and other cameras' surveillance footage. This issue has been fixed in version 0.44.0.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| motioneye-project | motioneye | before 0.44.0 | 0.44.0 | Patch available | CNA |
| — | motioneye (PyPI) | before 0.44.0 | 0.44.0 | Patch available | GHSA-g9fx-5r4h-pcw3 |
- motioneye Vendormotioneye-project Affected before 0.44.0 Fixed in 0.44.0 Patch available CNA
- motioneye (PyPI) Vendor— Affected before 0.44.0 Fixed in 0.44.0 Patch available GHSA-g9fx-5r4h-pcw3
Remediation
- Fix · CNA motioneye (motioneye-project) Fixed in 0.44.0
- Fix · GHSA-g9fx-5r4h-pcw3 motioneye (PyPI) Fixed in 0.44.0 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-31978
- 2026-10-03 Alias added: GHSA-g9fx-5r4h-pcw3
References
More motioneye-project vulnerabilities
- TI-2026-34187 motionEye: Authentication possible via password hash CVSS 4.0CRITICAL 9.1
- TI-2025-30247 motionEye vulnerable to RCE in add_camera Function Due to unsafe command execution CVSS 4.0HIGH 8.9
- TI-2026-40043 motionEye's Absolute Path Traversal in Media File Handlers Allows Arbitrary File Read CVSS 4.0HIGH 7.7
- TI-2025-37818 MotionEye v0.43.1b4 and before is vulnerable to OS Command Injection in configuration… CVSS 3.1HIGH 7.2
- TI-2026-40322 motionEye: Missing authentication on ActionHandler allows unauthenticated camera action execution CVSS 3.1MEDIUM 5.3
- TI-2026-24843 motionEye: World-Readable Configuration File Exposes Admin Password Hash CVSS 3.1MEDIUM 5.5
Sources
- CVE-2026-31978 · CVE Program
- CVE-2026-31978 · NVD
- FIRST EPSS
- GHSA-g9fx-5r4h-pcw3 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences