Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Yordam-Kutuphane-Otomasyonunda-Coklu-HTML-Enjeksiyonu — CVE-2026-77818 - نظام أتمتة المكتبات Yordam - حقن HTML منعكس في ثلاث نقاط منفصلة، والاستيلاء على إجراء النموذج وسرقة بيانات الاعتماد (CWE-79) | Kitploit
أدوات/GitHubGitHub/alkimcoskun/yordam-kutuphane-otomasyonunda-coklu-html-enjeksiyonu
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبالتصيد الاحتياليأمن الويب
GitHubalkimcoskun/yordam-kutuphane-otomasyonunda-coklu-html-enjeksiyonu

Yordam-Kutuphane-Otomasyonunda-Coklu-HTML-Enjeksiyonu

CVE-2026-77818 - نظام أتمتة المكتبات Yordam - حقن HTML منعكس في ثلاث نقاط منفصلة، والاستيلاء على إجراء النموذج وسرقة بيانات الاعتماد (CWE-79)

عرض المستودع
منذ 8س 8دلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

حقن HTML متعدد في نظام أتمتة المكتبات يوردام

CVE-2026-77818 · CVSS 3.1 6.1 (متوسط) · رئاسة الأمن السيبراني · النشر 2026-09-04 · TR-26-1011

الحالة: تم إصلاح الثغرات في الإصدار v22.2. يجب ترقية التثبيتات المتأثرة إلى v22.2 أو أحدث.

نظرة عامة

نظام أتمتة المكتبات يوردام هو برنامج تجاري لأتمتة المكتبات والفهرس المفتوح عبر الإنترنت (OPAC)، يُستخدم على نطاق واسع في مكتبات الجامعات والعامة والمؤسسات في تركيا. التثبيت محلي (on-premise)؛ حيث يعمل لكل عميل نسخة منفصلة داخل مؤسسته.

في الإصدار v22.1 من المنتج، توجد ثغرات حقن HTML منعكسة في ثلاث نقاط منفصلة ومستقلة. جميعها لا تتطلب مصادقة، وجميعها تُستغل عبر رابط واحد.

#النقطةالسبب الجذري
1صفحة تسجيل الدخول، معامل devamلا يتم تطبيق أي تهريب (escaping)
2خاصية value لحقل النموذج المخفيفك ترميز URL للمرة الثانية بعد التهريب
3خاصية name لحقل النموذج المخفيالتهريب يُطبق على القيمة فقط، وليس على الاسم

نظرًا لأن النقاط الثلاث تقع في نفس الإصدار من نفس المنتج ومن نفس فئة الثغرات، فقد تم جمعها تحت إشعار واحد ونشرها تحت معرّف CVE واحد. من حيث التأثير، النقطة رقم 1 هي الأشد خطورة.


1. صفحة تسجيل الدخول — معامل devam

هذه هي النقطة الأكثر حرجًا. نقطة الحقن تقع مباشرة في وسم HTML الخاص بنموذج المصادقة نفسه.

يحمل معامل devam العنوان الذي سيعود إليه المستخدم بعد تسجيل الدخول، ويصل مشفرًا بالنظام الست عشري (hex) — القيمة 2f796f7264616d2f تعني /yordam/. يقوم التطبيق بفك ترميز هذه القيمة من النظام الست عشري ويكتبها في وسم افتتاح نموذج الدخول. لا توجد أي عملية تهريب بينهما:

root@kitploit:~
<form class='girisForm collapse show ikiAdimliGiris' method='post'
      action='inc/islem.fm.inc.php'
      data-url='<مدخلات المستخدم بعد فك الترميز الست عشري>'
      autocomplete="off">

في المخرجات، تظهر رموز < و > وعلامات الاقتباس بشكل خام. الشيء الوحيد الذي يحتجز الحمولة هو أن خاصية data-url محاطة بعلامات اقتباس مفردة. عند إدخال علامة اقتباس مفردة داخل المدخلات، ينتهي الأمر: تُغلق الخاصية، ويُغلق وسم <form>، ويحل HTML الذي كتبه المهاجم محل نموذج المصادقة في الصفحة.

الاستيلاء على إجراء النموذج (form action). لا يتم هنا رسم نموذج مزيف — بل يتم إفراغ نموذج التطبيق الأصلي وإغلاقه، ثم فتح <form> جديد يحمل نفس فئات CSS مباشرة بعده. نظرًا لأن حقول اسم المستخدم وكلمة المرور ورمز التحقق في الصفحة كلها من HTML الأصلي للتطبيق، فإنها تبقى داخل هذا النموذج الجديد. يرى المستخدم النموذج الحقيقي، ويملأ النموذج الحقيقي؛ وتذهب المعلومات التي أدخلها إلى خادم المهاجم. لا يوجد أي فرق يمكن تمييزه بصريًا.

النقطة الحرجة: لا يحدث الحقن في صفحة عشوائية، بل في الصفحة التي يُتوقع فيها بالفعل أن يدخل المستخدم كلمة المرور الخاصة به. في حقن الانعكاس العادي، يحتاج المهاجم إلى إقناع الضحية؛ هنا تقوم واجهة التطبيق نفسها بمهمة الإقناع.


2. خاصية value لحقل النموذج المخفي — فك ترميز URL المزدوج

في صفحة البحث، تُكتب قيم معاملات GET في حقول نموذج مخفية. في هذه النقطة يتم تطبيق التهريب — ولكن بالترتيب الخاطئ.

تُستخدم نفس قيمة q في ثلاثة سياقات منفصلة داخل استجابة واحدة، ولكل سياق عمق مختلف لفك الترميز:

السياقفك الترميزالحالة
سلسلة JS داخل كتلة <script>مرة واحدةآمن
مربع البحث الرئيسي <input value="…">مرة واحدةآمن
حقول النموذج المخفية <input type='hidden' value="…">مرتينثغرة

تسلسل العملية كالتالي:

root@kitploit:~
مدخلات العميل     : %2522
  ↓ تحليل $_GET
متغير PHP         : %22
  ↓ مرشح الإدخال   → لا يرى محتوى ضارًا، لا توجد علامات اقتباس
  ↓ htmlspecialchars → لا توجد أحرف للتهريب، لا تغيير
  ↓ urldecode        → يتم فك ترميز %22
المُطبوع في الصفحة : "        ← علامة اقتباس خام، خروج من الخاصية

بينما يعمل مرشح الإدخال والتهريب على الطبقة الأولى من فك الترميز، فإن المخرجات تُغذى من الطبقة الثانية. عند مقارنة الحمولة نفسها في حالتي الترميز المفرد والمزدوج، يظهر الفرق بوضوح:

المُرسلالاستجابةمخرجات الحقل المخفي
q=foo%22… (ترميز مفرد)302 Foundvalue="foo&quot;…" — المرشح يلتقطها
q=foo%2522… (ترميز مزدوج)200 OKvalue="foo"><…>" — HTML خام

الثغرة ليست خاصة بمعامل q. الكتلة التي تولّد الحقول المخفية تمر على جميع معاملات GET في الطلب؛ وقد تم التحقق منها أيضًا على tip و alan.


3. خاصية name لحقل النموذج المخفي — حقن في اسم المعامل

تولّد الكتلة نفسها البنية التالية لكل معامل GET:

root@kitploit:~
<input type='hidden' name="<اسم المعامل>" value="<قيمة المعامل>"/>

يُطبق التهريب على جانب value فقط. ولا يُطبق إطلاقًا على جانب name. في هذه النقطة لا حاجة حتى للترميز المزدوج — فالترميز المفرد كافٍ، لأنه لا يوجد تهريب أصلاً يمكن تجاوزه.

يُكتب اسم معامل مختلق مباشرة بشكل خام في خاصية name، ويمكن الخروج من الخاصية. نظرًا لأن اسم المعامل تحت سيطرة المهاجم، فلا حاجة لأن يكون معاملًا معروفًا لدى التطبيق.

النقطتان 2 و3 من هذه النقاط الثلاث تنبعان من نفس كتلة الكود، وتتكرر هذه الكتلة في ستة نماذج منفصلة: dilForm و adetForm و siralaForm و tkForm و ekForm و tmForm. أي أن الحقن يحدث ست مرات في طلب واحد.

تم التحقق من ديناميكية الكتلة بمقارنة مخرجات طلبين:

root@kitploit:~
الطلب أ: ?p=1&dil=0&alan=&tip=basit&gorunum=liste&q=…
المخرج أ: name="p" · name="alan" · name="tip" · name="gorunum" · name="q"

الطلب ب: ?p=2&dil=0&devam=…
المخرج ب: name="p" · name="devam"

الحقول المُولَّدة لا تأتي من قائمة ثابتة، بل تُشتق مباشرة من المعاملات الموجودة في الطلب. وبالتالي، فإن المحتوى المكتوب في كل من الخاصيتين name و value يخضع لسيطرة المهاجم.


التأثير

كل ما يحتاجه المهاجم هو رابط سيفتحه الضحية. لا يحتاج إلى تسجيل الدخول أو امتلاك حساب.

  • سرقة بيانات الاعتماد. من خلال النقطة رقم 1، يتم تحويل هدف action لنموذج الدخول إلى المهاجم. تم التحقق من ذلك.
  • محتوى مزيف بهوية المؤسسة. يظهر في شريط العنوان اسم نطاق المؤسسة نفسه وشهادة TLS صالحة. يمكن وضع إعلانات مزيفة، وحملات مزيفة، ونصوص إعلامية مزيفة.
  • تلاعب بالمحتوى وإعادة توجيه. يمكن تغيير مظهر الصفحة، ويمكن نقل المستخدم إلى عنوان خارجي.

نظرًا لأن المنصة المتأثرة تحتوي على بيانات اعتماد وبيانات شخصية لأعضاء المكتبة، فمن الممكن الوصول إلى سجلات الأعضاء عبر الحسابات المخترقة.

لماذا لا توقف الحمايات الحالية هذه الثغرات

يستخدم التطبيق CSP مع script-src و object-src قائمين على nonce؛ أي أن XSS الكلاسيكي القائم على السكربت لا يعمل في هذه الصفحات. للوهلة الأولى، يبدو أن هذا يخفض النتيجة إلى مستوى "تلاعب بالمحتوى فقط".

السياسة الكاملة هي:

root@kitploit:~
Content-Security-Policy: script-src 'nonce-...'; object-src 'nonce-...'; frame-ancestors 'self'

لا يوجد form-action. ولا يوجد default-src أيضًا — وبالتالي لا يوجد افتراضي يمكن الرجوع إليه للتوجيهات غير المعرّفة. النتيجة: إرسال النموذج عبر POST إلى خادم المهاجم لا يتم منعه بأي شكل من الأشكال من قبل المتصفح.

لا يتطلب سرقة بيانات الاعتماد تشغيل JavaScript. يكفي HTML عادي، وCSP لا يوقف HTML العادي.

نقاط الضعف المرتبطة

الأساسية

  • CWE-79 — عدم تحييد المدخلات بشكل صحيح أثناء توليد صفحة الويب ('Cross-site Scripting')

ذات الصلة

  • CWE-116 — ترميز أو تهريب المخرجات بشكل غير صحيح
  • CWE-174 — فك ترميز مزدوج لنفس البيانات
  • CWE-172 — خطأ في الترميز
  • CWE-451 — تحريف واجهة المستخدم (UI) للمعلومات الحرجة

في سجل CVE، صُنفت نقطة الضعف الأساسية على أنها CWE-79. على مستوى السبب الجذري، فإن CWE-116 أكثر وصفًا: سبب النقاط الثلاث هو إما عدم تطبيق تهريب المخرجات إطلاقًا أو تطبيقه بالترتيب الخاطئ.

وتجدر الإشارة إلى أنه لا يتم تنفيذ سكربتات في هذا المنتج — فسياسة script-src القائمة على nonce التي يرسلها المنتج نفسه لا تسمح بذلك، ولا يمكن قراءة قيمة nonce عبر النطاقات المختلفة (cross-origin). التأثير الفعلي ليس تنفيذ سكربت، بل حقن HTML والاستيلاء على نموذج الدخول. ولهذا السبب تم أيضًا إجراء مطابقة CAPEC-148 (انتحال المحتوى).

CWE-174 تنطبق تحديدًا على النقطة رقم 2 — فك ترميز نفس البيانات للمرة الثانية بعد التهريب.

الشدة

متوسط — CVSS 3.1 النتيجة الأساسية 6.1 (AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N)

لا يحتاج المهاجم إلى أي صلاحيات؛ وبما أن الضحية يجب أن تفتح الرابط المُجهز، فإن تفاعل المستخدم مطلوب. تم اعتبار النطاق (Scope) متغيرًا (Changed) لأن المحتوى المحقون يُعالج في السياق الأمني للمتصفح.

النقاط الثلاث جميعها تقابل نفس النتيجة. من حيث التأثير، النقطة رقم 1 هي الأشد خطورة: نظرًا لأن الحقن يحدث مباشرة في وسم نموذج المصادقة نفسه، يصبح الاستيلاء على هدف action للنموذج وسرقة بيانات الاعتماد ممكنًا.

الإصدارات المتأثرة

root@kitploit:~
نظام أتمتة المكتبات يوردام

المتأثر : v22.1 والإصدارات الأقدم
المُصلَح : v22.2

تم التحقق على الإصدار v22.1. الثغرات ليست ناتجة عن خطأ في التكوين خاص بمؤسسة معينة، بل تنبع من مكونات واجهة مشتركة في المنتج؛ فهي تؤثر على جميع التثبيتات في نفس عائلة الإصدارات. يجب على الشركة المصنعة تقييم حالة الإصدارات الأقدم.

نظرًا لأن التثبيتات محلية (on-premise)، فحتى لو نشرت الشركة المصنعة الإصلاح، فإن التثبيتات التي لم تطبق التحديث ستظل متأثرة.

المكوّن المتأثر

#نقطة النهايةنقطة المخرجات
1GET /yordam/?p=2&dil=<n>&devam=<hex>خاصية data-url لنموذج الدخول
2GET /yordam/?p=1&…&<parametre>=<payload>خاصية value لحقل النموذج المخفي
3GET /yordam/?p=1&…&<payload>=1خاصية name لحقل النموذج المخفي

تنبع النقطتان 2 و3 من نفس كتلة توليد الحقول المخفية؛ وتتكرر الكتلة في النماذج dilForm و adetForm و siralaForm و tkForm و ekForm و tmForm.

الحل

تم إصلاح الثغرات من قبل الشركة المصنعة. يجب ترقية التطبيق إلى v22.2 أو إصدار أحدث.

سجل CVE

معرّف CVECVE-2026-77818
الجهة المُعيِّنة (CNA)TR-CERT (USOM) — رئاسة الأمن السيبراني لجمهورية تركيا
الحالةPUBLISHED
الحجز2026-08-21
النشر2026-09-04
الإشعار الأمنيTR-26-1011
عنوان سجل CVEReflected HTML Injection via Form Hijacking in Yordam Informatics's Library Automation System
CAPECCAPEC-148 — انتحال المحتوى

الشركة المصنعة: Yordam Bilgi Teknolojileri Danışmanlık Eğitim ve Elektronik Sistemler Sanayi ve Ticaret A.Ş.

المكتشف

Alkım Coşkun – Netlore Security

الجدول الزمني للإفصاح

التاريخالحدث
2026-08-20تم اكتشاف الثغرات والتحقق منها
2026-08-21تم الإبلاغ إلى رئاسة الأمن السيبراني؛ تم حجز معرّف CVE
2026-09-04تم نشر CVE-2026-77818، وتم الإعلان عن الإشعار الأمني TR-26-1011
تنزيل الأداة