CVE-2026-47235
SimulationCraft: Heap-Based Buffer Overflow / Out-of-Bounds Write in SimulationCraft's gem_id Array
SimulationCraft is a tool to explore combat mechanics in World of Warcraft. In builds after release-820-01 and before the identified May 7, 2026 nightly, the bcp_api.cpp loop over the JSON sockets array uses slot_data["sockets"].Size() without bounding gem_idx by MAX_GEM_SLOTS, which is four in engine/sc_enums.hpp. The destination gem_id and gem_bonus_id arrays in engine/item/item.hpp have only four elements. More than four socket entries therefore write beyond gem_id into the adjacent gem_bonus_id vector storage; bonus_list entries can also access gem_bonus_id out of bounds. Corrupting a vector's _M_start pointer causes the item_t destructor to free an attacker-influenced pointer during normal cleanup. The advisory reports crashes and code execution demonstrated in a testing environment. Attack inputs can arrive through a malicious .simc profile with a [[equipment]] section, a compromised addon export, or Battle.net API responses modified by an attacker with a privileged network position. The fix is contained in the nightly build identified as simc-1205-01-516b5d7; no containing release tag is available.
Attack profile
How easy it is to exploit
- Attack vector
- Adjacent network
- Complexity
- High
- Privileges needed
- None
- User interaction
- Passive
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
7.5
SimulationCraft: Heap-Based Buffer Overflow / Out-of-Bounds Write in SimulationCraft's gem_id Array
SimulationCraft is a tool to explore combat mechanics in World of Warcraft. In builds after release-820-01 and before the identified May 7, 2026 nightly, the bcp_api.cpp loop over the JSON sockets array uses slot_data["sockets"].Size() without bounding gem_idx by MAX_GEM_SLOTS, which is four in engine/sc_enums.hpp. The destination gem_id and gem_bonus_id arrays in engine/item/item.hpp have only four elements. More than four socket entries therefore write beyond gem_id into the adjacent gem_bonus_id vector storage; bonus_list entries can also access gem_bonus_id out of bounds. Corrupting a vector's _M_start pointer causes the item_t destructor to free an attacker-influenced pointer during normal cleanup. The advisory reports crashes and code execution demonstrated in a testing environment. Attack inputs can arrive through a malicious .simc profile with a [[equipment]] section, a compromised addon export, or Battle.net API responses modified by an attacker with a privileged network position. The fix is contained in the nightly build identified as simc-1205-01-516b5d7; no containing release tag is available.
- Record
CVE-2026-47235- CVSS 4.0
- 7.5 High
CVSS:4.0/AV:A/AC:H/AT:P/PR:N/UI:P/VC:H/VI:H/VA:H/SC:L/SI:L/SA:L - Weakness
- CWE-122, CWE-787
- Updated
- 2026-11-02
EUVDEUVD-2026-112147
7.5
SimulationCraft is a tool to explore combat mechanics in World of Warcraft. In builds after release-820-01 and before the identified May 7, 2026 nightly, the bcp_api.cpp loop over the JSON sockets array uses slot_data["sockets"].Size() without bounding gem_idx by MAX_GEM_SLOTS, which is four in engine/sc_enums.hpp. The destination gem_id and gem_bonus_id arrays in engine/item/item.hpp have only four elements. More than four socket entries therefore write beyond gem_id into the adjacent gem_bonus_id vector storage; bonus_list entries can also access gem_bonus_id out of bounds. Corrupting a vector's _M_start pointer causes the item_t destructor to free an attacker-influenced pointer during normal cleanup. The advisory reports crashes and code execution demonstrated in a testing environment. Attack inputs can arrive through a malicious .simc profile with a [[equipment]] section, a compromised addon export, or Battle.net API responses modified by an attacker with a privileged network position. The fix is contained in the nightly build identified as simc-1205-01-516b5d7; no containing release tag is available.
- Record
EUVD-2026-112147- CVSS 4.0
- 7.5 High
CVSS:4.0/AV:A/AC:H/AT:P/PR:N/UI:P/VC:H/VI:H/VA:H/SC:L/SI:L/SA:L - Updated
- 2026-11-02
NVD
7.5
SimulationCraft is a tool to explore combat mechanics in World of Warcraft. In builds after release-820-01 and before the identified May 7, 2026 nightly, the bcp_api.cpp loop over the JSON sockets array uses slot_data["sockets"].Size() without bounding gem_idx by MAX_GEM_SLOTS, which is four in engine/sc_enums.hpp. The destination gem_id and gem_bonus_id arrays in engine/item/item.hpp have only four elements. More than four socket entries therefore write beyond gem_id into the adjacent gem_bonus_id vector storage; bonus_list entries can also access gem_bonus_id out of bounds. Corrupting a vector's _M_start pointer causes the item_t destructor to free an attacker-influenced pointer during normal cleanup. The advisory reports crashes and code execution demonstrated in a testing environment. Attack inputs can arrive through a malicious .simc profile with a [[equipment]] section, a compromised addon export, or Battle.net API responses modified by an attacker with a privileged network position. The fix is contained in the nightly build identified as simc-1205-01-516b5d7; no containing release tag is available.
- Record
CVE-2026-47235- CVSS 4.0
- 7.5 High
CVSS:4.0/AV:A/AC:H/AT:P/PR:N/UI:P/VC:H/VI:H/VA:H/SC:L/SI:L/SA:L/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - Weakness
- CWE-122, CWE-787
- Updated
- 2026-11-05
OSV
7.5
SimulationCraft: Heap-Based Buffer Overflow / Out-of-Bounds Write in SimulationCraft's gem_id Array
SimulationCraft is a tool to explore combat mechanics in World of Warcraft. In builds after release-820-01 and before the identified May 7, 2026 nightly, the bcp_api.cpp loop over the JSON sockets array uses slot_data["sockets"].Size() without bounding gem_idx by MAX_GEM_SLOTS, which is four in engine/sc_enums.hpp. The destination gem_id and gem_bonus_id arrays in engine/item/item.hpp have only four elements. More than four socket entries therefore write beyond gem_id into the adjacent gem_bonus_id vector storage; bonus_list entries can also access gem_bonus_id out of bounds. Corrupting a vector's _M_start pointer causes the item_t destructor to free an attacker-influenced pointer during normal cleanup. The advisory reports crashes and code execution demonstrated in a testing environment. Attack inputs can arrive through a malicious .simc profile with a [[equipment]] section, a compromised addon export, or Battle.net API responses modified by an attacker with a privileged network position. The fix is contained in the nightly build identified as simc-1205-01-516b5d7; no containing release tag is available.
- Record
CVE-2026-47235- CVSS 4.0
- 7.5 High
CVSS:4.0/AV:A/AC:H/AT:P/PR:N/UI:P/VC:H/VI:H/VA:H/SC:L/SI:L/SA:L - Weakness
- CWE-122, CWE-787
- Updated
- 2026-11-06
Affected products
History
| Recorded | Changed | Sources |
|---|---|---|
| facts | NVD | |
| first indexed | CVE List, EUVD, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-47235 is a high vulnerability (CVSS 7.5) in Simulationcraft Simc, published October 28, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.15%, the 4th percentile. No source names a fixed version.