
Dettagli, PoC e patch per CVE-2022-23884
Esistono vulnerabilità a livello di rete nel server ufficiale di Minecraft: Bedrock Edition (noto come Bedrock Server), che consentono a un attaccante di lanciare un attacco DoS.
CVE-2022-23884 Mojang Bedrock Dedicated Server 1.16.0-1.18.12 è affetto da un loop infinito e dal crash del server causati da PurchaseReceiptPacket::_read (deserializzatore di pacchetti).
CVE-2022-23884 colpisce Bedrock Server 1.16.0-1.18.12.
È causato da PurchaseReceiptPacket::_read (deserializzatore di pacchetti).
//pseudo-code
u32 Num = readUnsignedVarInt();
for ( i = 0; i < (unsigned int)Num; ++i )
{
...
}
Gli attaccanti possono scegliere un Num speciale (es. 0xffffffff). Dimensioni elevate causeranno un loop grande (blocca il thread principale) e il crash del server.
Disclaimer: I PoC sono destinati esclusivamente a testare se il tuo server è vulnerabile. I fornitori non si assumono alcuna responsabilità e non sono responsabili per uso improprio o danni causati da questi programmi. Usali a tuo rischio.
CVE-2022-23884: python replay.py <IP> <Port> purchase.pkt
L'ultimo Bedrock Server (1.18.12.01) non include patch per CVE-2022-23884. Esistono patch di terze parti.
Patch per CVE-2022-23884:
Puoi intercettare PurchaseReceiptPacket::_read e restituire false.
(Il pacchetto è utilizzato solo per server partner, quindi BDS non necessita di elaborarlo, basta restituire false)
Questo file in LiteLoader ha corretto CVE-2022-23884.
Aggiorna a LiteLoader 2.0.5 o successivo per risolvere questo problema.