GHSA-j5qg-w9jg-3wg3LowCVSS 3.3Disclosed before NVD

Inability to de-op players if listed in ops.txt with non-lowercase letters

Published
December 16, 2021
Last Modified
January 9, 2023

📋 Description

Impact

Originally reported in iTXTech/Genisys#1188

PotterHarry98
potterharry98

deop PotterHarry98

will remove potterharry98 from the ops.txt but not PotterHarry98.

Operator permissions are checked using Config->exists() with lowercase=true, which will result in a match: https://github.com/pmmp/PocketMine-MP/blob/22bb1ce8e03dba57173debf0415390511d68e045/src/utils/Config.php#L449

This means that it's possible to make yourself impossible to de-op (using commands) by adding your name to ops.txt with uppercase letters.

Patches

4d37b79ff7f9d9452e988387f97919a9a1c4954e

Workarounds

This can be easily addressed by removing the offending lines from ops.txt manually.

For more information

If you have any questions or comments about this advisory:

🎯 Affected products1

  • composer/pocketmine/pocketmine-mp:< 4.0.3

🔗 References (5)