CVE-2023-42801

Stack buffer overflow due to `strcpy` into fixed size buffer in `extractVersionQuadFromString`

State
Published
Severity
7.6 High
Published
Dec 14, 2023
Updated
Aug 2, 2024
Reserved
Sep 14, 2023

Read the record on cve.org

Description

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.

Scores

CVSSScoreVectorSource
3.17.6 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:HGitHub_M

Weaknesses

  • CWE-120 Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')

Affected Products

ProductVersions
moonlight-common-cmoonlight-stream
  • >= f57bd745b4cbed577ea654fad4701bea4d38b44c, < b2497a3918a6d79808d9fd0c04734786e70d5954Affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.