CVE-2026-71850 in Hono
الملخص
بحسب VulDB • 08/08/2026
Hono هو إطار عمل لتطبيقات الويب يوفر الدعم لأي بيئة تشغيل JavaScript. من الإصدار 3.8.0 إلى 4.12.33، تحافظ دالة `memo()` المستوردة من `hono/jsx` على نتيجة العرض الجانبي للسيرفر (Server-Side Render) وإعادة استخدامها في العروض اللاحقة عند تساوي الخصائص (props) وفقاً لمقارنتها، ولا تشارك القيم المقروءة ضمن نطاق الطلب داخل المكون في هذه المقارنة؛ مما قد يؤدي إلى احتواء الاستجابة على HTML تم عرضه لطلب مستخدم آخر. تتم مقارنة المكونات المغلفة بـ `memo()` بناءً على خصائصها فقط؛ حيث لا تشارك القيم التي تُقرأ بشكل ضمني أثناء العرض، مثل سياق JSX عبر `createContext()` و`useContext()`، ودالة `useRequestContext()` من `hono/jsx-renderer`، ودالة `getContext()` من `hono/context-storage`. تبقى النتيجة المحفوظة سارية طالما أن المكون المغلف موجود، وبالتالي تعيش أطول من الطلب الذي أنتجها. قد يتلقى مستخدم استجابة تحتوي على HTML تم عرضه لطلب مستخدم آخر عندما يقوم كلاهما بعرض نفس المكون المُخزَّن مؤقتاً (memoized component) بخصائص متساوية في المقارنة على نفس المثيل الدافئ (warm instance)، مما قد يؤدي إلى كشف بيانات حساب أو ملف شخصي لمستخدم آخر، أو تسرب أسرار مرتبطة بنطاق الطلب مدمجة داخل HTML مثل رموز CSRF، أو عرض محتوى محدد حسب الدور للمستخدمين الذين لا ينبغي لهم تلقيه. تم إصلاح هذه المشكلة في الإصدار 4.12.34.
If you want to get best quality of vulnerability data, you may have to visit VulDB.