Skip to main content

PocketMine-MP CVE-2026-86203

| EUVDEUVD-2026-74914 MEDIUM
Improper Control of a Resource Through its Lifetime (CWE-664)
2026-09-09 VulnCheck GHSA-9pw9-9mpc-9mc3
6.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Connect as attacker to unpatched server
  2. Delivery
    Identify low-HP target player initiating disconnect
  3. Exploit
    Send melee attack packet within despawn-state window
  4. Execution
    Server runs death handler on flaggedForDespawn entity
  5. Persist
    Inventory items and XP drop duplicated
  6. Impact
    Collect duplicated loot while victim retains original inventory

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Resource lifecycle control
Exploitation Conditions

Exploitation requires two human players on the same server: the victim (Player A) must be at exactly 1 HP so a single hit kills them, and must initiate a disconnect sequence (click 'Disconnect' or 'Exit to Menu'). The attacker (Player B) must be in melee range and successfully land an attack within a split-second window after Player A's disconnect begins but before the server completes entity removal. The attack is limited to multiplayer servers running PocketMine-MP before 5.39.2, requires in-game proximity (melee range), and cannot be scripted against arbitrary targets - it requires social engineering or monitoring of target HP and disconnect behavior. Default server configurations are vulnerable; no special plugin or mode must be enabled.

Impact

The CVSS 4.0 score of 6.3 with AV:N/AC:H/AT:P/PR:N/UI:N is an accurate reflection of real-world risk. The AC:H and AT:P ratings are substantive constraints: exploitation requires two coordinated players and a split-second timing window during disconnection, making reliable, automated exploitation difficult. The impact is purely a game-economy integrity issue (VI:L) with no confidentiality or server-availability consequences, which is appropriate for a duplication bug on a Minecraft server. No EPSS score is provided in the input data. No KEV listing exists, and there is no evidence of active exploitation beyond the published advisory PoC. For survival-mode Minecraft servers where economy integrity is a design goal, this is a meaningful griefing/cheating risk. For servers where item economy is not enforced, impact is negligible. The publicly available exploit lowers the barrier for any player on a vulnerable server to attempt the attack, raising practical risk for operators who have not patched.

Exploit ScenarioDerived

Player B, aware of the vulnerability, waits until Player A (at 1 HP with valuable inventory) begins the disconnect sequence by clicking 'Exit to Menu'. Within the split-second timing window before the server removes Player A's entity from the world table, Player B sends an attack packet killing Player A, triggering the death handler on the still-accessible but flaggedForDespawn entity, causing inventory and XP to drop. Player A reconnects with their full inventory intact, while Player B collects the duplicated drops. The GitHub Security Advisory includes exact reproduction steps constituting a functional proof-of-concept.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 09, 2026

Item and experience duplication in PocketMine-MP before 5.39.2 allows any authenticated server player to exploit a race condition during another player's disconnection, causing inventory loot and XP to drop multiple times from a single death event. The InGamePacketHandler fetches entities via World->getEntity() without validating the flaggedForDespawn state, so the death handler can fire multiple times for the same disconnect-death event if a crafted attack packet arrives within the narrow timing window. A detailed proof-of-concept with exact reproduction steps is publicly available via the vendor's GitHub Security Advisory; vendor patch 5.39.2 is available and no KEV listing exists.

RemediationAI

Upgrade to PocketMine-MP 5.39.2 or later, which patches all affected code paths (InGamePacketHandler.php, Player.php, ExperienceOrb.php, BaseSign.php) with explicit flaggedForDespawn checks; the authoritative fix commit is c0719b76b18f2508143134e79bc9f1aa39109683. For operators unable to upgrade immediately, the vendor documents a plugin-level workaround: hook EntityDamageByEntityEvent, call isFlaggedForDespawn() on the victim entity, and cancel the event if the flag is set. This workaround requires plugin development capability and will not address any secondary side effects of the race condition beyond the death-handler duplication. Advisory: https://github.com/pmmp/PocketMine-MP/security/advisories/GHSA-f9jp-856v-8642.

Affected VersionsENISA

PocketMine-MP 0 <5.39.2

Affected Packages

composer pocketmine/pocketmine-mp fix: 5.39.2
euvd pocketmine_mp fix: 5.39.2

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in composer, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

PocketMine-MP (CPE: cpe:2.3:a:pmmp:pocketmine-mp:*:*:*:*:*:*:*:*) is an open-source Minecraft Bedrock Edition server written in PHP. The server maintains an internal entity table in the World class that retains entities marked for despawn until the next tick cycle removes them. When a network attack packet arrives, InGamePacketHandler.php calls World->getEntity($entityId) to resolve the target without checking isFlaggedForDespawn() on the returned entity. CWE-664 (Improper Control of a Resource Through its Lifetime) describes this root cause precisely: the entity lifecycle state flag is enforced at creation and removal time, but not enforced at every resource access point. The result is that the death handler (which drops inventory items and XP orbs) can be invoked again for an entity that has already died and been flagged for removal, producing duplicate loot drops. The fix, applied in commit c0719b76b18f2508143134e79bc9f1aa39109683, adds isFlaggedForDespawn() guards in InGamePacketHandler.php, Player.php, ExperienceOrb.php, and BaseSign.php.

Know when Pocketmine Mp gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 6.3 MEDIUM
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 3.7 LOW

Race condition requires precise timing (AC:H); any server player can attack without privileges (PR:N); impact is game-economy integrity only (I:L), with no confidentiality or availability consequence.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N
4.0 AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
High
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

PocketMine-MP versions before 5.39.2 fail to validate entity despawn state when processing attack packets from clients. Attackers can exploit a race condition by attacking a disconnecting player to trigger multiple death handlers, causing inventory items and experience to drop multiple times for duplication.

Threat Intelligence Overview

EPSS Score
0.3%
Top 80% exploitable
Prevalence
Medium
popular Minecraft Bedrock server platform, gaming-community niche
Exploit
POC
Public exploit code exists
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

52
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +32
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy