
CVE-2026-27579 - سوء تكوين CORS – أصل تعسفي مع بيانات اعتماد → تعرّض بيانات الحساب عبر الأصل المشترك للمستخدمين المصادق عليهم
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N
يحتوي مشروع realtime-collaboration-platform على سوء تكوين CORS في إعدادات الواجهة الخلفية لـ Appwrite.
الخادم:
هذا المزيج سمح لنطاق يتحكم به المهاجم بـ:
نتج عن ذلك كشف:
فشلت الواجهة الخلفية في التحقق بشكل صحيح من رأس Origin وتقييده.
التكوين غير السليم:
Access-Control-Allow-Origin: *
Access-Control-Allow-Credentials: true
أو انعكاس ديناميكي لنطاقات عشوائية.
هذا ينتهك مبادئ أمان CORS لأن:
تسمح المتصفحات بالطلبات عبر النطاقات مع بيانات الاعتماد فقط عندما يكون النطاق موثوقًا به صراحةً.
بدلاً من ذلك، وثقت التطبيق في أي نطاق، مما أنشأ ناقلًا لسرقة البيانات عبر النطاقات.
| مجال التأثير | التأثير |
|---|---|
| السرية | عالية |
| السلامة | لا شيء |
| التوفر | لا شيء |
| النطاق | متغير |
يمكن للمهاجم:
لا يتطلب أي صلاحيات مباشرة.
هذا يجعله هجومًا قويًا من جانب العميل مع إمكانية استغلال حقيقية في العالم الواقعي.
fetch("https://target-appwrite-endpoint/v1/account", {
credentials: "include"
})
.then(res => res.json())
.then(data => {
console.log("Exfiltrated:", data);
});
إذا كانت الضحية مسجلة الدخول، فسيتم تضمين ملف تعريف ارتباط الجلسة الخاص بها تلقائيًا.
بسبب CORS المتساهل، يمكن للمهاجم قراءة الاستجابة.
يتطلب التخفيف السليم:
مثال على التكوين الصحيح:
Access-Control-Allow-Origin: https://trusted-domain.com
Access-Control-Allow-Credentials: true
أو:
Access-Control-Allow-Origin: *
Access-Control-Allow-Credentials: false
سوء تكوين CORS + بيانات الاعتماد = اختراق البيانات.
لا تسمح أبدًا بـ:
* + credentials=true