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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2025-22131-PoC — PoC لـ CVE-2025-22131 | Kitploit
أدوات/GitHubGitHub/zzn1nj4/cve-2025-22131-poc
أدوات التصيدتوليد الحمولةتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويب
GitHubzzn1nj4/cve-2025-22131-poc

CVE-2025-22131-PoC

PoC لـ CVE-2025-22131

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2025-22131-PoC

إثبات مفهوم (PoC) لـ CVE-2025-22131

PhpSpreadsheet هي مكتبة مكتوبة بلغة PHP خالصة وتوفر مجموعة من الفئات (classes) تتيح لك قراءة وكتابة تنسيقات ملفات جداول بيانات متنوعة مثل Excel و LibreOffice Calc.

الإصدار <1.29.8>=2.2.0, <2.3.6>=2.0.0, <2.1.7>=3.0.0, <3.8.0 من phpspreadsheet متأثر بثغرة حيث لا يتم تعقيم أسماء الأوراق بشكل صحيح، مما يؤدي إلى XSS.

ملخص

  • أنشئ ملف xlsx بسيطًا يحتوي على أكثر من ورقة واحدة واحفظه.

  • فك ضغط الملف، وحدّث اسم الورقة يدويًا إلى حمولة XSS

  • أعد ضغط الملف مرة أخرى

  • ارفع ملف xlsx إلى الخادم المتأثر

  • استخرج ملف تعريف الارتباط الخاص بالضحية إلى عنوان URL المعطى

    ملاحظة: استخدمت الحمولة لاستخراج ملف تعريف الارتباط الخاص بالضحية؛ إذا كان المطلوب شيئًا آخر، حدّث ملف xl/workbook.xml وفقًا لذلك.

الكود المتأثر

root@kitploit:~
    /**
     * Generate sheet tabs.
     */
    public function generateNavigation(): string
    {
        // Fetch sheets
        $sheets = [];
        if ($this->sheetIndex === null) {
            $sheets = $this->spreadsheet->getAllSheets();
        } else {
            $sheets[] = $this->spreadsheet->getSheet($this->sheetIndex);
        }

        // Construct HTML
        $html = '';

        // Only if there are more than 1 sheets
        if (count($sheets) > 1) {
            // Loop all sheets
            $sheetId = 0;

            $html .= '<ul class="navigation">' . PHP_EOL;

            foreach ($sheets as $sheet) {
                $html .= '  <li class="sheet' . $sheetId . '"><a href="#sheet' . $sheetId . '">' . $sheet->getTitle() . '</a></li>' . PHP_EOL;
                ++$sheetId;
            }

            $html .= '</ul>' . PHP_EOL;
        }

        return $html;
    }

هنا، لا يتم ترميز $sheet->getTitle() بشكل صحيح باستخدام htmlspecialchars()، ولهذا السبب يمكن للمهاجم حقن HTML.
لاحظ أن هذا الجزء من الكود يعمل فقط عندما يكون هناك أكثر من ورقة واحدة، لذلك من الضروري أن يكون لديك ملف xlsx يحتوي على أكثر من ورقة.
في الإثبات (PoC)، يتم استخدام وسم صورة (image tag) لاستخراج ملفات تعريف الارتباط الخاصة بالضحية إلى عنوان URL الخاص بالمهاجم.

المراجع

  • https://github.com/PHPOffice/PhpSpreadsheet/commit/4088381ccfaf241d7d42c333de0dc8c98e338743
  • https://security.snyk.io/vuln/SNYK-PHP-PHPOFFICEPHPSPREADSHEET-8651746
تنزيل الأداة