Inability to de-op players if listed in ops.txt with non-lowercase letters
Description
Reviewed
Dec 16, 2021
Published to the GitHub Advisory Database
Dec 16, 2021
Last updated
Jan 9, 2023
Impact
Originally reported in iTXTech/Genisys#1188
deop PotterHarry98
will remove
potterharry98
from the ops.txt but notPotterHarry98
.Operator permissions are checked using
Config->exists()
withlowercase=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:
References