---
id: CVE-2026-19874
title: >-
  A heap-based buffer overflow vulnerability exists in Konami's Metal Gear
  Online 3, originating from improper validation of lobby data fields related to
  kicked players
summary: >-
  A heap-based buffer overflow vulnerability exists in Konami's Metal Gear
  Online 3, originating from improper validation of lobby data fields related to
  kicked players. The affected function processes a list of kicked player
  identifiers u…
severity: critical
cvss: 9.1
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H'
cwe:
  - CWE-122
published: '2026-08-24'
updated: '2026-09-08'
sourceUpdated: '2026-09-08T14:07:24.140'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-19874'
references:
  - url: 'https://cwe.mitre.org/data/definitions/122.html'
    label: cret@cert.org
  - url: 'https://kb.cert.org/vuls/id/728712'
    label: cret@cert.org
  - url: 'https://www.kb.cert.org/vuls/id/728712'
    label: af854a3a-2127-422b-91ae-364da2661108
tags:
  - nvd
  - exploit-available
epss: 0.00923
epssPercentile: 0.58669
exploits:
  github: 1
  githubRepos:
    - 'https://github.com/alicealys/mgo3-rce'
  checkedAt: '2026-09-25T08:20:52.463Z'
exploitAvailable: true
ingestedAt: '2026-09-08T15:33:26.955Z'
---

## Overview

A heap-based buffer overflow vulnerability exists in Konami's Metal Gear Online 3, originating from improper validation of lobby data fields related to kicked players. The affected function processes a list of kicked player identifiers using the lobby data key "kick_num" to determine the number of entries, and individual kicked player IDs supplied via keys in the format "kicked_id_%i". The function does not validate that "kick_num" falls within the expected bounds. The game design limits matches to a maximum of 16 players, and the corresponding buffer for storing kicked player IDs is sized accordingly. If "kick_num" exceeds this limit, the function continues writing the provided player IDs past the end of the intended buffer and into adjacent memory regions. These adjacent regions contain Steam callback handler structures responsible for processing lobby data updates, lobby messages, and other related events. By supplying an oversized "kick_num" value and appropriate "kicked_id_%i" fields, an attacker can overwrite fields within the callback handler structures, including function pointers and callback argument values. Successful exploitation may enable control-flow hijacking, potentially allowing arbitrary code execution within the game process.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
