Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-35031 — ثغرة حرجة لاجتياز المسار (Path Traversal) تؤدي إلى تنفيذ التعليمات البرمجية عن بُعد (RCE) في خادم الوسائط Jellyfin (CVSS 9.9). تتضمن استغلالًا لإثبات المفهوم (PoC)، وتحليلًا تقنيًا، وأدوات كشف. | Kitploit
أدوات/GitHubGitHub/keraattin/cve-2026-35031
تصعيد الامتيازاتتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالأوراق والأبحاثالتعلم والتعليمتطوير الحمولات
GitHubkeraattin/cve-2026-35031

CVE-2026-35031

ثغرة حرجة لاجتياز المسار (Path Traversal) تؤدي إلى تنفيذ التعليمات البرمجية عن بُعد (RCE) في خادم الوسائط Jellyfin (CVSS 9.9). تتضمن استغلالًا لإثبات المفهوم (PoC)، وتحليلًا تقنيًا، وأدوات كشف.

24منذ 5 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-35031: ثغرة Path Traversal في رفع الترجمات في Jellyfin تؤدي إلى RCE

CVE-ID CVSS Score CWE Affected Product Status

TL;DR

ثغرة حرجة من نوع Path Traversal في Jellyfin Media Server تسمح للمستخدمين المصادق عليهم الذين يمتلكون صلاحية "Upload Subtitles" برفع ملفات إلى مواقع عشوائية على القرص. من خلال استغلال حقل Format غير المُتحقق منه في نقطة نهاية رفع الترجمات، يمكن للمهاجمين كتابة ملفات إلى مواقع حساسة، واستخراج بيانات حساسة، وتصعيد الامتيازات، وفي النهاية تنفيذ كود عشوائي بصلاحيات root عبر حقن LD_PRELOAD.

  • درجة CVSS: 9.9 (حرجة)
  • الإصدارات المتأثرة: Jellyfin < 10.11.7
  • الإصدار المُصحح: Jellyfin 10.11.7+
  • المصادقة مطلوبة: نعم (مستخدم غير مسؤول يمتلك صلاحية رفع الترجمات)
  • تنفيذ كود عن بُعد: نعم، بصلاحيات root
  • تعقيد الاستغلال: منخفض

Table of Contents

  1. Quick Facts
  2. What is Jellyfin?
  3. Vulnerability Deep Dive
    • Root Cause Analysis
    • Attack Chain Breakdown
    • LD_PRELOAD Exploitation
  4. Impact Analysis
  5. Affected Versions
  6. Detection
    • Python Scanner
    • Nmap NSE Script
  7. Indicators of Compromise
  8. Remediation
  9. References
  10. Author

Quick Facts

الخاصيةالقيمة
CVE IDCVE-2026-35031
درجة CVSS9.9 (حرجة)
CWECWE-22: التقييد غير السليم لاسم المسار إلى دليل مقيد ('Path Traversal')
المنتج المتأثرJellyfin Media Server
الإصدارات المتأثرة< 10.11.7
الإصدار المُصحح10.11.7 والإصدارات الأحدث
نوع الثغرةPath Traversal + كتابة ملفات عشوائية + RCE
المصادقة مطلوبةنعم (مستخدم غير مسؤول)
الصلاحيات المطلوبةصلاحية "Upload Subtitles"
المنفذ الافتراضي8096/TCP
استشارة GitHubGHSA-9p5f-5x8v-x65m
حالة التصحيحمتاح وتم إصداره
الاستغلال العامنعم

What is Jellyfin?

Jellyfin هو خادم وسائط مجاني ومفتوح المصدر مصمم لمساعدتك في إدارة وبث مجموعتك الشخصية من الوسائط. يوفر وظائف مشابهة لخوادم الوسائط التجارية لكن مع شفافية كاملة في الكود المصدري وسيطرة مجتمعية.

Key Features

  • بث وسائط ذاتي الاستضافة (موسيقى، أفلام، برامج تلفزيونية)
  • دعم متعدد المستخدمين مع عناصر تحكم دقيقة في الصلاحيات
  • إدارة الترجمات ومزامنتها
  • واجهة قائمة على الويب يمكن الوصول إليها عبر HTTP/HTTPS
  • نشر عبر المنصات (Linux، Windows، macOS)
  • دعم تنسيقات وسائط وبروتوكولات بث متنوعة

Network Architecture```

                      Jellyfin Media Server (Port 8096)
                     /                |                \
                    /                 |                 \
               Web UI            REST API          Media Streams
              (Browser)        (Authenticated)    (Subtitle Upload)
                                     |
                    /System/Info/Public (unauthenticated)
                    /Videos/{itemId}/Subtitles (vulnerable)
                    /Library/Collections (admin)

Client Devices > Network > Jellyfin Server > Database + Storage | /var/lib/jellyfin/ /etc/ld.so.preload (writable via vulnerability)

---

## تحليل متعمق للثغرة

### تحليل السبب الجذري

توجد الثغرة في نقطة نهاية رفع الترجمات (`/Videos/{itemId}/Subtitles`) التي تقبل تحميل الملفات وتخزنها على القرص. يكمن الخلل الحرج في عدم كفاية التحقق من معامل حقل Format.

#### نمط الكود المعرّض للخطر

تعالج نقطة النهاية عمليات رفع الترجمات دون التحقق بشكل صحيح من حقل Format أو تنظيفه:```
POST /Videos/{itemId}/Subtitles HTTP/1.1
Content-Type: multipart/form-data

[Binary subtitle data]
Format: /../../../etc/ld.so.preload
Language: en

معامل Format يُقصد به تحديد تنسيق الترجمة (srt، vtt، ass، إلخ) لكنه بدلاً من ذلك يُعامل كجزء من مسار الملف:``` Base Path: /var/lib/jellyfin/subtitles/ User Input: /../../../etc/ld.so.preload Result: /var/lib/jellyfin/subtitles/../../../etc/ld.so.preload Resolved: /etc/ld.so.preload (via path traversal)

### تفصيل سلسلة الهجوم

تجمع الثغرة الأمنية بين عدة نقاط ضعف معًا لتحقيق تنفيذ تعليمات برمجية عن بُعد بصلاحيات root:```
Step 1: Subtitle Upload with Path Traversal
        POST /Videos/{itemId}/Subtitles
        Format: /../../../etc/ld.so.preload
                    |
                    v
Step 2: Arbitrary File Write
        Write attacker-controlled data to /etc/ld.so.preload
                    |
                    v
Step 3: File Read via .strm Files
        Create .strm files pointing to sensitive paths
        Extract database contents and credentials
                    |
                    v
Step 4: Database Extraction
        Access /jellyfin/jellyfin.db via .strm
        Extract admin user hashes
                    |
                    v
Step 5: Admin Privilege Escalation
        Reset admin password or create new admin account
                    |
                    v
Step 6: RCE via LD_PRELOAD Injection
        LD_PRELOAD=/path/to/malicious.so java
        Arbitrary code execution as root

آلية اجتياز المسار```

Input Validation Failure:

Format Field Validation: Expected: srt | vtt | ass | ssa | sub | subrip Actual: /../../../etc/ld.so.preload Result: NO VALIDATION > PATH TRAVERSAL ALLOWED

File Write Operation: String Concatenation: "/subtitles/" + user_format + ".srt" | NO CANONICALIZATION: Path component not resolved before write NO WHITELIST: Format values not restricted NO BOUNDS CHECK: ".." sequences not filtered | v Final Path: /etc/ld.so.preload (EXPLOITED)

### استغلال LD_PRELOAD

تقنية LD_PRELOAD هي طريقة قوية لتصعيد الامتيازات وتنفيذ التعليمات البرمجية على أنظمة لينكس:```
LD_PRELOAD Injection Flow:

1. Attacker writes malicious .so (shared object) to /etc/ld.so.preload
   
   /etc/ld.so.preload contents:
   /path/to/attacker.so

2. Java process starts (Jellyfin runs on Java):
   
   kernel > execve("java", ...) > glibc initialization
                                     |
                                     v
                          Check /etc/ld.so.preload
                                     |
                                     v
                          Load attacker.so FIRST
                                     |
                                     v
                          Execute attacker code
                          (BEFORE Java main())

3. Code Execution Context:
   
   Process Owner:   root (Jellyfin typically runs as root)
   Permissions:     Full system access
   Timing:          Before application initialization
   Detection:       Minimal (malicious code runs early)
تنزيل الأداة