
CVE-2022-23884の詳細、PoC、およびパッチ
Minecraft: Bedrock Edition(別名Bedrock Server)の公式サーバーにはネットワーク層の脆弱性が存在し、攻撃者がDoS攻撃を仕掛けることを可能にします。
CVE-2022-23884 は、Mojang Bedrock Dedicated Server 1.16.0-1.18.12 に影響を与えます。これは、PurchaseReceiptPacket::_read(パケットデシリアライザー)によって引き起こされる大きなループとサーバークラッシュです。
CVE-2022-23884 は Bedrock Server 1.16.0-1.18.12 に影響します。
これは PurchaseReceiptPacket::_read(パケットデシリアライザー)によって引き起こされます。
//pseudo-code
u32 Num = readUnsignedVarInt();
for ( i = 0; i < (unsigned int)Num; ++i )
{
...
}
攻撃者は特別なNum(例:0xffffffff)を選択できます。大きなサイズは大きなループを引き起こし(メインスレッドをブロック)、サーバーをクラッシュさせます。
免責事項:PoCはサーバーが脆弱かどうかをテストするためにのみ使用されることが期待されています。提供者は一切の責任を負わず、これらのプログラムの誤用や損害についても責任を負いません。自己責任で使用してください。
CVE-2022-23884: python replay.py <IP> <Port> purchase.pkt
最新のBedrock Server(1.18.12.01)には、CVE-2022-23884のパッチは含まれていません。サードパーティのパッチが存在します。
CVE-2022-23884 のパッチ:
PurchaseReceiptPacket::_read をフックして false を返すことができます。
(このパケットはパートナーサーバーでのみ使用されるため、BDSは何も処理する必要がなく、単に false を返すだけで済みます)
LiteLoaderのこのファイルは CVE-2022-23884 を修正しました。
この問題を修正するには、LiteLoader 2.0.5 以降にアップデートしてください。