GHSA-8jq6-w5cg-wm45 – pocketmine/pocketmine-mp
Package
Manager: composer
Name: pocketmine/pocketmine-mp
Vulnerable Version: >=0 <3.15.4
Severity
Level: High
CVSS v3.1: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L/E:U/RL:O/RC:C
CVSS v4.0: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
EPSS: N/A pctlN/A
Details
Exploitable inventory component chaining in PocketMine-MP ### Impact Specially crafted `InventoryTransactionPacket`s sent by malicious clients were able to exploit the behaviour of `InventoryTransaction->findResultItem()` and cause it to take an abnormally long time to execute (causing an apparent server freeze). The affected code is intended to compact conflicting `InventoryActions` which are in the same `InventoryTransaction` by flattening them into a single action. When multiple pathways to a result existed, the complexity of this flattening became exponential. The problem was fixed by bailing when ambiguities are detected. **At the time of writing, this exploit is being used in the wild by attackers to deny service to servers.** ### Patches Upgrade to 3.15.4 or newer. ### Workarounds No practical workarounds are possible, short of backporting the fix or implementing checks in a plugin listening to `DataPacketReceiveEvent`. ### References c368ebb5e74632bc622534b37cd1447b97281e20 ### For more information If you have any questions or comments about this advisory: * Email us at [team@pmmp.io](mailto:team@pmmp.io)
Metadata
Created: 2020-11-11T21:38:18Z
Modified: 2020-11-11T21:38:07Z
Source: https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2020/11/GHSA-8jq6-w5cg-wm45/GHSA-8jq6-w5cg-wm45.json
CWE IDs: ["CWE-400"]
Alternative ID: N/A
Finding: F067
Auto approve: 1