Due to a workaround for an old client bug (which has since been fixed), very large JSON payloads in ModalFormResponsePacket
were able to cause the server to spend a significant amount of time processing the packet. Large numbers of these packets were able to hog CPU time so as to prevent the server from processing other connections in a timely manner.
The problem has been addressed in 3baa5ab71214f96e6e7ab12cb9beef08118473b5 by removing the workaround code.
Plugins could cancel DataPacketReceiveEvent
for this packet, decode the data their way, and then call Player->onFormSubmit()
directly, bypassing the vulnerable code.
{ "nvd_published_at": null, "cwe_ids": [], "severity": "MODERATE", "github_reviewed": true, "github_reviewed_at": "2023-01-10T00:41:43Z" }