PT-2026-133309
CVE-2026-115274
·
تاريخ النشر
2026-10-29
·
تاريخ التحديث
2026-10-30
الوصف من
CVSS 4.0
6.9
متوسطةالمقاييسAV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
اسم البرنامج المصاب والإصدارات المتأثرة
elixir الإصدارات من 1.18.0-rc.0 إلى 1.18.5
elixir الإصدارات من 1.19.0-rc.0 إلى 1.19.6
elixir الإصدارات من 1.20.0-rc.0 إلى 1.20.4
Description
يسمح التحقق غير السليم من الكمية المحددة في الإدخال ضمن وحدة
JSON في مكتبة Elixir القياسية لمهاجم غير مصرح له بالتسبب في حالة رفض الخدمة من خلال استنفاد وحدة المعالجة المركزية والذاكرة عن طريق تقديم مستند JSON مصمم خصيصًا. تقوم الدالتان JSON.decode/1 و JSON.decode!/1 بتحويل الثوابت الصحيحة باستخدام erlang:binary to integer/1 دون تقييد طولها. ونتيجة لذلك، فإن الثابت الصحيح الذي يحتوي على مليون رقم يستهلك من 100 إلى 300 ضعف وحدة المعالجة المركزية مقارنة بسلسلة نصية من نفس الطول، وتؤدي الثوابت التي تتجاوز حوالي 1.29 مليون رقم إلى إثارة SystemLimitError. وتعتبر التطبيقات التي يتم إنشاؤها بواسطة phx.new عرضة لهذا الخطر بشكل خاص لأنها تقوم بفك تشفير أجسام الطلبات باستخدام Plug.Parsers قبل عملية التوجيه والمصادقة.Recommendations
تحديث elixir إلى الإصدار 1.18.6 أو أحدث.
تحديث elixir إلى الإصدار 1.19.7 أو أحدث.
تحديث elixir إلى الإصدار 1.20.5 أو أحدث.
كإجراء تخفيف مؤقت، قم بفك تشفير JSON غير الموثوق به باستخدام برنامج فك تشفير
integer مخصص يرفض سلاسل الأرقام الطويلة قبل التحويل.
في تطبيقات Phoenix، استبدل Phoenix.json library() ببرنامج فك تشفير JSON آمن في Plug.Parsers لتقييد طول الثوابت الصحيحة. وجدت خطأً في الوصف؟ لديك ما تضيفه؟ لا تتردد في مراسلتنا 👾