ترجمة آلية لم تُراجَع بعد. النص الإنجليزي هو المرجع في حال الاختلاف.
الملخص
يسمح تخصيص الموارد بلا حدود أو تقييد في معالج طلبات multiRead في Apache ZooKeeper لمهاجم عن بُعد بتعطيل الخادم (حجب الخدمة) من خلال طلب صغير واحد. لا يضع معالج multiRead أي حدود على عدد عمليات القراءة المجمعة أو على الحجم التراكمي للاستجابة التي ينشئها في الذاكرة. نظرًا لأنه يتم تجسيد نتيجة كل عملية بالكامل والاحتفاظ بها قبل التسلسل، فإن الطلب الصغير على الشبكة - ضمن حدود jute.maxbuffer - والذي يشير إلى عقدة znode كبيرة عدة مرات يمكن أن يجبر الخادم على تخصيص مساحة تخزين مؤقت أكبر بكثير مما يضمره حجم الطلب، مما يؤدي إلى استنفاد الذاكرة المؤقتة لـ JVM وإنهاء الخادم بخطأ OutOfMemoryError. لا يمنع كل من jute.maxbuffer أو largeRequestMaxBytes هذا الأمر، حيث يقيد كلاهما الطلب الوارد فقط وليس الاستجابة. تؤثر هذه الثغرة على Apache ZooKeeper من الإصدار 3.7.0 حتى 3.9.6. يُنصح المستخدمون بالترقية إلى الإصدار 3.9.7، الذي يفرض حدوداً قابلة للتكوين على عدد عمليات multiRead وحجم الاستجابة التراكمي.