Stack buffer overflow due to `strcpy` into fixed size buffer in `extractVersionQuadFromString`
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- Low · Low · High
- Fix status
- No fix listed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA.
Summary
Moonlight-common-c contains the core GameStream client code shared between Moonlight clients. Moonlight-common-c is vulnerable to buffer overflow starting in commit f57bd745b4cbed577ea654fad4701bea4d38b44c. A malicious game streaming server could exploit a buffer overflow vulnerability to crash a moonlight client. Achieving RCE is possible but unlikely, due to stack canaries in use by modern compiler toolchains. The published binaries for official clients Qt, Android, iOS/tvOS, and Embedded are built with stack canaries, but some unofficial clients may not use stack canaries. This vulnerability takes place after the pairing process, so it requires the client to be tricked into pairing to a malicious host. It is not possible to perform using a man-in-the-middle due to public key pinning that takes place during the pairing process. The bug was addressed in commit b2497a3918a6d79808d9fd0c04734786e70d5954.
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| moonlight-stream | moonlight-common-c | >= f57bd745b4cbed577ea654fad4701bea4d38b44c, < b2497a3918a6d79808d9fd0c04734786e70d5954 | — | No fix listed | CNA |
- moonlight-common-c Vendormoonlight-stream Affected >= f57bd745b4cbed577ea654fad4701bea4d38b44c, < b2497a3918a6d79808d9fd0c04734786e70d5954 Fixed in — No fix listed CNA
CPE configurations NVD · 11
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:moonlight-stream:moonlight-common-c:*:*:*:*:*:*:*:* | 2016-10-05 to before 2023-10-06 | Vulnerable | moonlight-stream |
| cpe:2.3:a:moonlight-stream:moonlight:*:*:*:*:*:iphone_os:*:* | before 9.0.0 | Vulnerable | moonlight-stream |
| cpe:2.3:a:moonlight-stream:moonlight:*:*:*:*:*:tvos:*:* | before 9.0.0 | Vulnerable | moonlight-stream |
| cpe:2.3:a:moonlight-stream:moonlight:*:*:*:*:*:android:*:* | before 12.0 | Vulnerable | moonlight-stream |
| cpe:2.3:a:moonlight-stream:moonlight:*:*:*:*:*:chrome:*:* | before 0.10.23 | Vulnerable | moonlight-stream |
| cpe:2.3:a:moonlight-stream:moonlight_embedded:*:*:*:*:*:*:*:* | before 2.6.1 | Vulnerable | moonlight-stream |
| cpe:2.3:a:moonlight-stream:moonlight_xbox:*:*:*:*:*:*:*:* | up to 1.14.5 | Vulnerable | moonlight-stream |
| cpe:2.3:a:moonlight-stream:moonlight_tv:*:*:*:*:*:*:*:* | before 1.6.0 | Vulnerable | moonlight-stream |
| cpe:2.3:a:moonlight-stream:moonlight_switch:*:*:*:*:*:*:*:* | before 0.13.4 | Vulnerable | moonlight-stream |
| cpe:2.3:a:moonlight-stream:moonlight_vita:*:*:*:*:*:*:*:* | all versions | Vulnerable | moonlight-stream |
- cpe:2.3:a:moonlight-stream:moonlight-common-c:*:*:*:*:*:*:*:* Versions 2016-10-05 to before 2023-10-06 Vulnerable ·moonlight-stream
- cpe:2.3:a:moonlight-stream:moonlight:*:*:*:*:*:iphone_os:*:* Versions before 9.0.0 Vulnerable ·moonlight-stream
- cpe:2.3:a:moonlight-stream:moonlight:*:*:*:*:*:tvos:*:* Versions before 9.0.0 Vulnerable ·moonlight-stream
- cpe:2.3:a:moonlight-stream:moonlight:*:*:*:*:*:android:*:* Versions before 12.0 Vulnerable ·moonlight-stream
- cpe:2.3:a:moonlight-stream:moonlight:*:*:*:*:*:chrome:*:* Versions before 0.10.23 Vulnerable ·moonlight-stream
- cpe:2.3:a:moonlight-stream:moonlight_embedded:*:*:*:*:*:*:*:* Versions before 2.6.1 Vulnerable ·moonlight-stream
- cpe:2.3:a:moonlight-stream:moonlight_xbox:*:*:*:*:*:*:*:* Versions up to 1.14.5 Vulnerable ·moonlight-stream
- cpe:2.3:a:moonlight-stream:moonlight_tv:*:*:*:*:*:*:*:* Versions before 1.6.0 Vulnerable ·moonlight-stream
- cpe:2.3:a:moonlight-stream:moonlight_switch:*:*:*:*:*:*:*:* Versions before 0.13.4 Vulnerable ·moonlight-stream
- cpe:2.3:a:moonlight-stream:moonlight_vita:*:*:*:*:*:*:*:* Versions all versions Vulnerable ·moonlight-stream
Show 1 more CPE
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:moonlight-stream:moonlight_qt\/pc:*:*:*:*:*:*:*:* | up to 5.0.0 | Vulnerable | moonlight-stream |
- cpe:2.3:a:moonlight-stream:moonlight_qt\/pc:*:*:*:*:*:*:*:* Versions up to 5.0.0 Vulnerable ·moonlight-stream
Remediation
No fixed version listed by the sources yet.
Timeline
- 2026-10-02 Threatist record created from CVE-2023-42801
References
Exploit 2
More moonlight-stream Moonlight vulnerabilities
- TI-2023-22891 Buffer overflow due to use of `strcpy` in `performRtspHandshake` CVSS 3.1HIGH 8.8
- TI-2023-22890 Buffer overflow due to use of `strcpy` in `parseUrlAddrFromRtspUrlString` CVSS 3.1HIGH 8.8
- TI-2020-08898 Man-in-the-middle attack in Moonlight iOS/tvOS CVSS 3.1HIGH 8.2
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences