0Xer3N

#2610من 57,957
103.2إجمالي CVSS
الثغرات · 13
متوسطة
4
عالية
7
حرجة
2
PT-2026-50487
6.4
2026-06-17
Unknown · Open-Webui · CVE-2026-54015
**اسم البرنامج المعرض للخطر والإصدارات المتأثرة** إصدارات Open WebUI الأقدم من 0.9.6 **الوصف** يحتوي Open WebUI على ثغرة في عملية المصادقة في نقاط النهاية الخاصة بسجل تاريخ المطالبات. ففي حين أن النظام يقوم بالمصادقة على `prompt id` المقدم في عنوان URL، إلا أنه يفشل في التحقق من أن إدخالات السجل المطلوبة تنتمي فعليًّا إلى تلك المطالبة المحددة. يمكن للمستخدم المصادق عليه الذي يتمتع بحق الوصول إلى أي موجه يتحكم فيه استخدام معرّف سجل الضحية لقراءة أو حذف سجل الموجه الخاص بمستخدم آخر، والذي قد يحتوي على نصوص خاصة وتعليمات داخلية ومتغيرات حساسة. التفاصيل الفنية المتعلقة بنقاط النهاية المتأثرة: - ’/api/v1/prompts/id/{prompt id}/history/diff‘ (GET): تسمح بقراءة لقطات سجل موجه آخر. - ’/api/v1/prompts/id/{prompt id}/update/version‘ (POST): يسمح باستعادة لقطة موجهة أخرى إلى موجهة المتصل، مما يؤدي إلى كشف محتواها. - ’/api/v1/prompts/id/{prompt id}/history/{history id}‘ (DELETE): يسمح بحذف إدخال من سجل موجهة أخرى. تنبع المشكلة من الدوال `compute diff()` و`update prompt version()` و`delete history entry()`، التي تسترد إدخالات السجل بشكل عام حسب المعرف دون التأكد من مطابقة `prompt id` للموجه المصرح به. **التوصيات** التحديث إلى الإصدار 0.9.6.
PT-2026-50482
8.3
2026-06-17
Unknown · Open-Webui · CVE-2026-54010
**اسم البرنامج المعرض للخطر والإصدارات المتأثرة** إصدارات Open WebUI الأقدم من 0.9.6 **الوصف** يمكن للمستخدم المصادق عليه إرفاق قيم `file id` عشوائية برسائل الدردشة الخاصة به لأن النظام يفشل في التحقق مما إذا كان المستخدم يمتلك تلك الملفات أو لديه حق الوصول للقراءة إليها. ومن خلال مشاركة الدردشة ومنح نفسه حق الوصول للقراءة، تعالج الدالة `has access to file()` ملف الضحية بشكل خاطئ على أنه متاح. وهذا يسمح للمهاجم بقراءة ملف الضحية عبر نقطة النهاية ’GET /api/v1/files/{id}/content‘ أو حذفه عبر نقطة النهاية ’DELETE /api/v1/files/{id}‘. بالإضافة إلى ذلك، يتجاهل فرع تفويض الدردشة المشتركة المعلمة `access type`، مما يعني أن المستخدم الذي مُنح حق الوصول للقراءة فقط إلى دردشة مشتركة بشكل مشروع يمكنه حذف الملفات المرفقة بتلك الدردشة. **التوصيات** قم بالتحديث إلى الإصدار 0.9.6 أو أحدث. كحل مؤقت، قم بتقييد الوصول إلى نقاط النهاية ’GET /api/v1/files/{id}/content‘ و ’DELETE /api/v1/files/{id}‘ على المسؤولين المصرح لهم فقط.
PT-2026-50484
7.1
2026-06-17
Unknown · Open-Webui · CVE-2026-54012
**اسم البرنامج المعرض للخطر والإصدارات المتأثرة** إصدارات Open WebUI الأقدم من 0.9.6 **الوصف** يسمح Open WebUI للمستخدمين الذين يتمتعون بأذونات لإنشاء نماذج مساحة العمل أو تحديثها أو استيرادها بتخزين إدخالات `meta.knowledge` تعسفية دون التحقق من الملكية أو حق الوصول للقراءة للملفات المشار إليها. يعامل النظام إدخالات `meta.knowledge` من النوع `file` كمصدر للتفويض، وهو ما يمكن استغلاله من قبل مالك نموذج ضار لإرفاق معرّف ملف مستخدم آخر ببيانات تعريف نموذجه. وهذا يسمح للمهاجم بقراءة أو حذف الملفات الخاصة التي تخص مستخدمين آخرين. تشمل التفاصيل الفنية ما يلي: - **نقاط نهاية واجهة برمجة التطبيقات (API):** يمكن استخدام `GET ’/api/v1/files/{id}/content‘` و`DELETE ’/api/v1/files/{id}‘` لقراءة أو حذف الملفات غير المصرح بها. - **المعلمات المعرضة للخطر:** يُستخدم حقل `meta.knowledge` داخل بيانات تعريف النموذج لحقن معرّفات ملفات غير مصرح بها. - **أسماء الوظائف:** تعتمد الأداة `view file()` والوظيفة `has access to file()` بشكل خاطئ على البيانات الوصفية المزورة للتفويض. **التوصيات** قم بالتحديث إلى الإصدار 0.9.6. كحل مؤقت، قم بتقييد أذونات `workspace.models` و`workspace.models import` على المستخدمين الموثوق بهم فقط لمنع إنشاء نماذج ضارة.
PT-2026-50485
7.6
2026-06-17
Unknown · Open-Webui · CVE-2026-54013
**اسم البرنامج المعرض للخطر والإصدارات المتأثرة** إصدارات Open WebUI الأقدم من 0.9.6 **الوصف** يحتوي Open WebUI على ثغرة مخزنة في البرمجة النصية عبر المواقع (XSS) حيث تفشل المنصة في التحقق من صحة صور الملفات الشخصية للنماذج. في حين تم إصلاح مشكلات مماثلة لصور الملفات الشخصية للمستخدمين وwebhook، فإن فئة `ModelMeta` تفتقر إلى أداة التحقق من صحة الحقل `validate profile image url`. بالإضافة إلى ذلك، لا تنفذ نقطة نهاية تقديم صور النماذج قائمة MIME المسموح بها أو رأس `X-Content-Type-Options: nosniff`. يمكن للمستخدم المصادق عليه الذي يمتلك أذونات `workspace.models` تخزين حمولة خبيثة بتنسيق `data:image/svg+xml;base64,...` في صورة الملف الشخصي لأحد النماذج. إذا انتقل مستخدم آخر إلى عنوان URL الخاص بالصورة، فسيتم تنفيذ البرنامج النصي المضمن في مصدر التطبيق، مما قد يؤدي إلى الاستيلاء الكامل على الحساب عن طريق سرقة الرمز المميز من التخزين المحلي. تشمل التفاصيل الفنية ما يلي: - **نقاط نهاية واجهة برمجة التطبيقات (API):** ’/api/v1/models/create‘، و'/api/v1/models/update'، و'/api/v1/models/import'، ونقطة النهاية الخاصة بالخدمة ’/api/v1/models/model/profile/image‘. - **المعلمات المعرضة للخطر:** المتغير `profile image url` داخل فئة `ModelMeta`. **التوصيات** قم بالتحديث إلى الإصدار 0.9.6. كحل مؤقت، قم بتقييد إذن `workspace.models` على المسؤولين الموثوق بهم لمنع المستخدمين غير المصرح لهم من تحميل صور ملفات تعريف نماذج ضارة.
PT-2026-50591
6.5
2026-06-17
Unknown · Open-Webui · CVE-2026-54019
**اسم البرنامج المعرض للخطر والإصدارات المتأثرة** إصدارات Open WebUI الأقدم من 0.9.6 **الوصف** توجد مشكلة في منصة الذكاء الاصطناعي ذات الاستضافة الذاتية، حيث يمكن تجاوز عمليات التحقق من قائمة التحكم في الوصول (ACL) على مستوى المجموعة عند تمكين وضع الاستخدام المتعدد في Milvus. تسمح قائمة التحكم في الوصول (ACL) بأسماء مجموعات غير معروفة لا تنتمي إلى قاعدة المعرفة (KB)، وتعاملها على أنها مجموعات قديمة أو مؤقتة. في وضع الاستخدام المتعدد لـ Milvus، يُستخدم اسم المجموعة الذي يتحكم فيه المستخدم كـ `resource id` ويتم إدراجه في تعبير Milvus دون الهروب المناسب. وهذا يسمح لمستخدم غير إداري تمت مصادقته بتنفيذ استعلامات تعرض أجزاء خاصة من قاعدة المعرفة تخص مستخدمين آخرين. تشمل التفاصيل الفنية ما يلي: - **نقاط نهاية واجهة برمجة التطبيقات (API)**: ’/api/v1/retrieval/query/collection‘ و ’/api/v1/retrieval/query/doc‘ - **المعلمات المعرضة للخطر**: `collection names` - **المتغير المعرض للخطر**: `resource id` **التوصيات** قم بالتحديث إلى الإصدار 0.9.6. كحل مؤقت، قم بتقييد الوصول إلى نقاط النهاية ’/api/v1/retrieval/query/collection‘ و ’/api/v1/retrieval/query/doc‘ أو قم بتعطيل وضع الاستخدام المتعدد في Milvus حتى يتم تطبيق التحديث.
PT-2026-47289
8.8
2026-06-08
Npm · @Angular/Platform-Server · CVE-2026-50168
**اسم البرنامج المعرض للخطر والإصدارات المتأثرة** إصدارات @angular/platform-server الأقدم من 19.2.23 إصدارات @angular/platform-server الأقدم من 20.3.22 إصدارات @angular/platform-server الأقدم من 21.2.15 إصدارات @angular/platform-server الأقدم من 22.0.0-rc.2 **الوصف** تسمح مشكلة في حزمة `@angular/platform-server` للمهاجمين عن بُعد بتجاوز قيود قائمة المضيفين المسموح بهم وتوجيه الطلبات الصادرة من جانب الخادم إلى نقاط نهاية خارجية عشوائية. وينجم ذلك عن اختلاف في محلل العناوين بين محلل عناوين URL الصارم من WHATWG المستخدم للتحقق من صحة قائمة المضيفين المسموح بهم، ومحلل عناوين URL المتساهل من Domino المستخدم لتهيئة DOM الذي يحاكيه الخادم. عندما يحتوي الطلب على عنوان URL غير صحيح بهيكل منفذ مزدوج، مثل `http://evil.com:80:80/path`، فإن منطق `URL.canParse(url)` الصارم يُرجع `false`، متخطياً عملية التحقق من صحة المضيف. وبالتالي، يقبل محلل Domino الداخلي عنوان URL ويحلل المنشأ إلى `http://evil.com:80`. ثم يقوم معترض طلبات HTTP الخاص بـ SSR `relativeUrlsTransformerInterceptorFn()` بحل طلبات HTTP الخلفية النسبية استنادًا إلى هذا المنشأ، مما يتيح شن هجوم تزوير الطلبات من جانب الخادم (SSRF). وقد يؤدي ذلك إلى إعادة توجيه استعلامات واجهة برمجة التطبيقات (API) التي تحتوي على بيانات اعتماد حساسة وملفات تعريف ارتباط الجلسة ورموز التفويض الداخلية إلى خادم يسيطر عليه المهاجم، بالإضافة إلى حقن الاستجابات وتسميم المحتوى داخل HTML المعروض. **التوصيات** التحديث إلى الإصدار 19.2.23 أو أحدث. التحديث إلى الإصدار 20.3.22 أو أحدث. التحديث إلى الإصدار
PT-2026-43458
6.1
2026-05-27
Git · Liquidjs · CVE-2026-44644
**اسم البرنامج المعرض للخطر والإصدارات المتأثرة** إصدارات LiquidJS السابقة للإصدار 10.26.0 **الوصف** يسمح عيب في منطق مرشح `strip html` بحدوث هجمات البرمجة النصية عبر المواقع (XSS). تم تصميم المرشح لإزالة علامات HTML من السلاسل ليقوم بدور أداة التنقية؛ ومع ذلك، فإنه يستخدم تعبيرًا عاديًا حيث يفشل الفرع الشامل (`<.*?>`) في مطابقة علامات نهاية السطر. ونتيجة لذلك، يتم تمرير أي علامة HTML تحتوي على حرف سطر جديد (` `) أو حرف إرجاع العربة (`r`) دون تعديل. ونظرًا لأن متصفحات الويب تعامل هذه الأحرف على أنها مسافات بيضاء داخل العلامة، يمكن للمهاجم تجاوز عملية التنقية عن طريق إدراج سطر جديد في العلامة (على سبيل المثال، `<img src=x onerror=alert(1)>`)، مما يؤدي إلى تنفيذ جافا سكريبت تعسفي. يحدث هذا في التطبيقات التي تعرض سلاسل نصية يسيطر عليها المهاجم باستخدام مرشح `strip html` ولا تقوم بتحويل الإخراج إلى HTML بشكل منفصل، وهو السلوك الافتراضي عندما لا يتم تعيين المتغير `outputEscape`. **التوصيات** قم بالتحديث إلى الإصدار 10.26.0 أو أحدث. كحل مؤقت، تجنب استخدام مرشح `strip html` لتنقية المحتوى غير الموثوق به، واستخدم بدلاً من ذلك مرشح `escape` لتنقية المخرجات من علامات HTML.
PT-2026-26159
9.9
2026-03-18
Unknown · @Apostrophecms/Import-Export · CVE-2026-32731
**اسم البرنامج المعرض للخطر والإصدارات المتأثرة** إصدارات ApostropheCMS الأقدم من 3.5.3 إصدارات @apostrophecms/import-export الأقدم من 3.5.3 **الوصف** يحتوي ApostropheCMS على ثغرة أمنية من نوع Zip Slip في الدالة `extract()` الموجودة داخل ملف `gzip.js`. لا تقوم الدالة `path.join()` بتنقية أو معالجة المقاطع المتقاطعة مثل `../`، مما يسمح لملف `.tar.gz` مصمم خصيصًا تم تحميله عبر واجهة المستخدم الخاصة بالاستيراد في نظام إدارة المحتوى (CMS) بكتابة محتوى يتحكم فيه المهاجم إلى أي مسار يمكن لعملية Node.js الوصول إليه على نظام ملفات المضيف. ويحدث ذلك لأن الدالة تُنشئ مسارات كتابة الملفات دون إجراء فحص للمسار القياسي قبل فتح دفق الكتابة. يمكن لأي مستخدم يتمتع بإذن «تعديل المحتوى العام» (Global Content Modify)، وهو دور يُمنح عادةً لمحرري المحتوى ومديري المواقع، استغلال هذه الثغرة. تسمح هذه الثغرة بكتابة ملفات عشوائية، مما قد يؤدي إلى تشويه الموقع، وحقن أصول ضارة، وإنشاء أبواب خلفية دائمة، وسرقة بيانات الاعتماد، وحجب الخدمة. توجد الدالة `extract()` في الملف `packages/import-export/lib/formats/gzip.js` في الأسطر 132–157. تتطلب هذه الثغرة الأمنية إذن «تعديل المحتوى العام». **التوصيات** قم بالتحديث إلى الإصدار 3.5.3 من `@apostrophecms/import-export` أو أحدث.