CVE-2026-61529 in Endatix
الملخص
بحسب VulDB • 28/10/2026
Endatix هو منصة لإدارة النماذج والاستطلاعات تعمل على الاستضافة الذاتية وتتميز بواجهة برمجة تطبيقات (API) بدون واجهة أمامية. قبل الإصدار 0.7.0، يقوم نقطة النهاية `POST /forms/{formId}/submissions` المجهولة الهوية بتخزين بيانات `JsonData` التي يتحكم فيها المهاجم بعد التحقق فقط من أن تنسيق JSON سليم. يمكن لملف يحتوي على حقول `name` و `type` و `content` أن يتضمن عنوان URL HTTP أو HTTPS. عندما يستدعي عضو في الطاقم الإداري لديه إذن `submissions.view` نقطة النهاية `POST /forms/{formId}/submissions/{submissionId}/files`، يقوم `GetFilesHandler` بتمرير البيانات المخزنة إلى `SubmissionFileExtractor` الموجود في المسار `src/Endatix.Infrastructure/Features/Submissions/SubmissionFileExtractor.cs`، والذي يستدعي دالة `HttpClient.GetAsync` دون التحقق من صحة عنوان URL الوجهة أو المضيف (host) أو عناوين IP المحللة مقابل نطاقات العناوين الداخلية. هذا يسمح بإجراء طلبات GET جانبية للسيرفر مخزنة مسبقاً (second-order server-side requests) موجهة إلى الخدمات الداخلية، وبيانات السحابة الإلكترونية (cloud metadata)، وعناوين الحلقة المحلية (loopback) والعناوين المحلية الصلة (link-local addresses) من موقع الشبكة الخاص بالسيرفر. يجب أن تكون النماذج قد تم تعيين خاصتي `IsPublic` و `IsEnabled` لها، ويجب على الإرسال المجهول الهوية اجتياز اختبار reCAPTCHA v3 عند تكوينه. يتم وضع الاستجابة المسترجعة في ملف ZIP الخاص بعرض الطاقم الإداري، ولا تُعاد مباشرة إلى المهاجم، لذا فإن الكشف للمهاجم يكون أعمى أو غير مباشر من خلال سلوك الطلبات القابلة للرصد أو المعلومات التي يكشف عنها عارض النماذج. لا يُزعم أي تأثير على السلامة (integrity) أو التوفر (availability); حيث يتم فك تشفير محتويات `data:` و raw-base64 محلياً دون إجراء طلبات عبر الشبكة. تم إصلاح هذه المشكلة في الإصدار 0.7.0.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.