
إثبات مفهوم يوضح ثغرة XXE في JetBrains Ktor < 2.3.5 عبر XML ContentNegotiation، مع إرشادات الوقاية وتحليل قائم على OWASP.
في JetBrains Ktor قبل الإصدار 2.3.5، كان التكوين الافتراضي لـ ContentNegotiation مع تنسيق XML عرضة لثغرة XXE.
تم إصلاح الثغرة بواسطة @marychatte في 29 سبتمبر 2023 (https://github.com/ktorio/ktor/pull/3770)، وقد نتجت الثغرة عن هجوم على سلسلة التوريد بسبب إعداد خاطئ في المكتبة الخارجية xmlutil version 0.86.1.

بناءً على دليل OWASP (https://cheatsheetseries.owasp.org/cheatsheets/XML_External_Entity_Prevention_Cheat_Sheet.html#xmlinputfactory-a-stax-parser) ، فإن الإصلاح ليس شاملًا بما يكفي، وقد وجدت إجابة مثيرة للاهتمام هنا (https://security.stackexchange.com/questions/260956/java-xxe-vulnerability) : الهدف الرئيسي هو تعطيل DTDs، وهو يتمثل أساسًا في الدفاع الأول ضد هذا الهجوم.