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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2025-13374 — Kalrav AI Agent <= 2.3.3 - رفع ملفات تعسفي غير مصادق عليه عبر kalrav_upload_file AJAX Action | Kitploit
أدوات/GitHubGitHub/d0n601/cve-2025-13374
توليد الحمولةتحليل الثغرات الأمنيةتحليل الكودالاستغلالاستغلال تطبيقات الويباختبار الاختراق
GitHubd0n601/cve-2025-13374

CVE-2025-13374

Kalrav AI Agent <= 2.3.3 - رفع ملفات تعسفي غير مصادق عليه عبر kalrav_upload_file AJAX Action

عرض المستودع
2منذ 9 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

عامل Kalrav AI <= 2.3.3 - رفع ملف عشوائي غير مصادق عليه عبر إجراء AJAX kalrav_upload_file

يحتوي إضافة ووردبريس Kalrav AI Agent (الإصدار 2.3.3 وما قبله) على ثغرة رفع ملف عشوائي تسمح للمستخدمين غير المصادق عليهم برفع ملفات PHP ضارة إلى الخادم، مما قد يؤدي إلى تنفيذ تعليمات برمجية عن بُعد.

ملخص الاستغلالات

يتم توفير إثبات مفهوم CVE-2025-13374.py لإظهار مهاجم عن بُعد يقوم برفع shell.php وتنفيذ تعليمات برمجية عن بُعد:

root@kitploit:~
python3 ./CVE-2025-13374.py http://techcorp.cc
[+] Target: http://techcorp.cc
[+] File uploaded successfully!
[+] Shell URL: http://techcorp.cc/wp-content/plugins/kalrav-ai-agent/uploads/1763247725-shell.php
[+] Command output:
www-data

الوصف التقني

توجد الثغرة في دالة kalrav_upload_file() عند نقطة النهاية /wp-admin/admin-ajax.php. تفتقر وظيفة الرفع إلى التحقق السليم من الملف، والتحقق من nonce، وفحوصات الصلاحية. وهذا يسمح للمستخدمين غير المصادق عليهم برفع ملفات عشوائية، بما في ذلك ملفات PHP التي يمكن تنفيذها على الخادم.

تحليل مسار الهجوم

المصدر: إدخال المستخدم من $_FILES['file'] (السطر 978)
المصب: move_uploaded_file($_FILES['file']['tmp_name'], $target_path) (السطر 982)

تحدث الثغرة للأسباب التالية:

  1. تسجيل المسار: يتم تسجيل نقطة نهاية الرفع عبر هوك wp_ajax_nopriv_kalrav_upload_file (السطر 967)، مما يسمح بالوصول غير المصادق عليه.
  2. لا مصادقة: البادئة wp_ajax_nopriv_ تجعل الدالة قابلة للوصول للمستخدمين غير المصادق عليهم.
  3. لا تحقق من nonce: تفتقر الدالة إلى حماية CSRF عبر التحقق من nonce.
  4. لا فحوصات صلاحية: لا يتم إجراء أي تحقق من الأذونات قبل السماح برفع الملفات.
  5. معالجة الإدخال: تتم معالجة بيانات الملف التي يتحكم بها المستخدم من $_FILES['file'] مباشرة دون تحقق.
  6. معالجة الملف: يتم تطبيق تنقية أساسية لاسم الملف فقط باستخدام basename(): time() . '-' . basename($_FILES['file']['name']) (السطر 979)، والتي تمنع اجتياز الدليل فقط ولكنها لا تتحقق من امتدادات الملفات.
  7. تخزين الملف: يتم حفظ الملفات في wp-content/plugins/kalrav-ai-agent/uploads/.

موقع الكود الضعيف

الملف: kalrav-ai-agent.php
الأسطر: 969-996

root@kitploit:~
add_action('wp_ajax_kalrav_upload_file', 'kalrav_upload_file');
add_action('wp_ajax_nopriv_kalrav_upload_file', 'kalrav_upload_file');  

function kalrav_upload_file()
{
    // Path to your plugin uploads folder
    $upload_dir = plugin_dir_path(__FILE__) . 'uploads/';

    if (!file_exists($upload_dir)) {
        mkdir($upload_dir, 0755, true);
    }

    if (!empty($_FILES['file']['name'])) { 
        $file_name = time() . '-' . basename($_FILES['file']['name']);  
        $target_path = $upload_dir . $file_name;

        if (move_uploaded_file($_FILES['file']['tmp_name'], $target_path)) { 
            wp_send_json_success([
                'message' => 'File uploaded successfully!',
                'file_path' => $target_path,
                'url' => plugins_url('uploads/' . $file_name, __FILE__)  
            ]);
        } else {
            wp_send_json_error(['message' => 'Failed to move uploaded file.']);
        }
    } else {
        wp_send_json_error(['message' => 'No file uploaded.']);
    }

    wp_die();
}
تنزيل الأداة