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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
cve-2017-5487 — cve-2017-5487 wp rest api ثغرة | Kitploit
أدوات/GitHubGitHub/tpdlshdmlrkfmcla/cve-2017-5487
الاستطلاعتحليل الثغرات الأمنيةالاستغلالجمع المعلوماتأمن الويبالتعلم والتعليم
GitHubtpdlshdmlrkfmcla/cve-2017-5487

cve-2017-5487

cve-2017-5487 wp rest api ثغرة

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

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
  1. ما هو CVE-2017-5487؟

: ثغرة في تطبيق REST API في الملف wp-includes/rest-api/endpoints/class-wp-rest-users-controller.php في إصدارات ووردبريس قبل 4.7.1، حيث لا يتم تقييد قائمة الناشرين، مما يسمح للمهاجم عن بعد بالحصول على معلومات مهمة عبر طلب wp-json/wp/v2/users.

( مرجع : https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-5487 )

لأننا لا نفهم ما يعنيه هذا، دعنا نتعرف على المعرفة الأساسية ثم نتعلم من خلال التطبيق العملي.

إذا كنت تعتقد أن المعرفة الأساسية غير ضرورية، يمكنك البدء من [3].

  1. ما هو REST API؟

: باختصار، API الذي يحدد "ماذا وكيف تفعل شيئًا" يمكن أن يسمى REST API.

: بمزيد من التفصيل، REST API هو كيفية القيام بشيء ما باستخدام مورد معرف بواسطة HTTP URI باستخدام HTTP Method و Payload.

: REST = اختصار لـ REpresentational State Transfer

2.1 المورد المعرف بواسطة HTTP URI

: المورد يعني الشيء الذي تتم معالجته

مثال: مستندات JSON، XML، ملفات صور مثل jpg، ملفات فيديو مثل mp4، إلخ.

: URI هو اختصار لـ Uniform Resource Identifier، وهو معرف الموارد الموحد. عنوان URL الذي نراه عادةً هو جزء من URI، ويشير إلى تعريف مورد ما.

مثال: إذا كان بإمكاننا الحصول على معلومات حول مستخدم باسم test عبر http://rootable.tistory.com/user/test، فإن هذا أيضًا يعتبر URI.

2.2 طريقة HTTP

: هذه الطريقة تعمل بنفس الطريقة بغض النظر عن تنسيق المورد.

: الطرق المستخدمة في REST API تشمل POST، GET، PUT، PATCH، DELETE وغيرها. النقطة المهمة هي أنها تختلف عن الوظائف التي نعتقدها. على سبيل المثال، في حالة POST، نعتقد أنها طريقة تستخدم لطلب بيانات أو مستندات من الخادم، ولكن في REST API، تقوم بوظيفة الإنشاء (create).

  • ملخص طرق HTTP وعمليات CRUD

طريقة HTTP

عمليات CRUD

POST

create

GET

read

PUT

update / replace

PATCH

update / modify

DELETE

delete

  • عمليات CRUD هو مصطلح يشير إلى Create, Read, Update, Delete التي تستخدمها برامج الكمبيوتر أساسًا في معالجة البيانات.

مثال: REST API لإضافة مستخدم باسم doni إلى users في http://rootable.tistory.com

POST http://rootable.tistroy.com/users/doni

مثال: عند إنشاء مستخدم، إذا كانت هناك حاجة إلى خصائص متنوعة مثل المهنة والعمر والجنس، يتم تحديد لغات تعبير متنوعة مثل XML أو JSON في جزء Body للتسجيل

POST http://rootable.tistory.com/users Content-Type: application/json

{

"username" : "doni"

"age" : "27"

}

  1. REST API في ووردبريس

: لقد قيل أن REST API هو API محدد مسبقًا لكيفية التعامل مع المورد. إذن، ما هي REST API المعرفة في ووردبريس؟

أرجع إلى الجدول أدناه.

Resource Base Route Posts /wp/v2/posts Post Revisions /wp/v2/revisions Categories /wp/v2/categories Tags /wp/v2/tags Pages /wp/v2/pages Comments /wp/v2/comments Taxonomies /wp/v2/taxonomies Media /wp/v2/media Users /wp/v2/users Post Types /wp/v2/types Post Statuses /wp/v2/statuses Settings /wp/v2/settings

يمكننا رؤية العديد من REST API المعرفة. هنا يمكننا أن نرى أن /wp/v2/users الذي ظهر في CVE الذي سننظر إليه هذه المرة موجود.

  1. استغلال CVE

4.1. الحصول على معلومات كاتب المقال

  • أدناه هو الكود الذي تم العثور عليه في EXPLOIT DB. ( https://www.exploit-db.com/exploits/41497/ )

  • كما يظهر من الكود، فهو فقط ينظف نتائج المعالجة ويعرضها على الشاشة. لا حاجة لاستخدام كود الاستغلال هذا، حيث يمكن الحصول على المعلومات بالوصول المباشر، لذلك لا أعتقد أننا بحاجة للذهاب إلى ثغرة FU لجعلها تبدو نظيفة.

#!usr/bin/php

إذا قمت بحفظ هذا ككود PHP في مكان تثبيت ووردبريس وقمت بتشغيله، فستظهر النتيجة كما يلي.

عند الوصول المباشر، يبدو كما يلي. (إذا لم يكن واضحًا، انقر)

المعلومات التي يمكن الحصول عليها من خلال هذا تشمل معرف المستخدم (ID)، الاسم (name) للمستخدم الذي كتب المقال.

ملاحظة) اعتقدت أن جميع المستخدمين المسجلين سيظهرون، ولكن نتائج الاختبار أظهرت فقط حسابات كتاب المقالات. في وصف CVE، هناك كلمة 'author' والتي يبدو أنها تعني 'كاتب'.

4.2 الحصول على مسار تحميل الملف

من بين REST API في ووردبريس، هناك /wp/v2/posts. عند الوصول إليه، ستظهر معلومات حول المقالات المنشورة كما هو أدناه، ومن بينها يمكن الحصول على مسار تحميل الملف كما هو محدد. إذا تم اكتشاف ثغرة FU، فسيكون ذلك مفيدًا للغاية.

  • إذا كانت كمية المعلومات كبيرة جدًا عند استخدام posts، يمكن الوصول إلى [ /wp-json/wp/v2/posts/20 ] للحصول على معلومات المقالة رقم 20 فقط.
  1. مراجع

في الإصدار 4.7 أيضًا، يبدو أنه من المستحيل عرض الإعدادات أو تعديل المقالات.

  • عند محاولة عرض الإعدادات، يظهر rest_forbidden ويتم منع الوصول.

  • عند محاولة تعديل المقالة الأولى، تظهر رسالة تفيد بعدم القدرة على قراءة المقالة.

  • من المؤسف أن هذا قد يكون أكبر من مجرد عرض المستخدمين... نتائج البحث لا تظهر وجود ثغرة مقابلة. ومع ذلك، يبدو أن هناك ثغرة تسمح بتعديل مقالات المستخدمين الآخرين في الإصدارات قبل 4.7.1. سنقوم بذلك في المنشور التالي.

مراجع)

  1. REST API 설명 : http://blog.naver.com/PostView.nhn?blogId=complusblog&logNo=220986337770

  2. 유니코드 번역 : http://koreanstudies.com/unicode-converter.html

  3. 다운그레이드 (لأنه لم ينجح التقدم أثناء القيام بذلك وأعدت التثبيت، أنصح بعدم التثبيت الجديد) : http://www.bbsetheme.co.kr/%EC%9B%8C%EB%93%9C%ED%94%84%EB%A0%88%EC%8A%A4-%EB%B2%84%EC%A0%84-%EB%8B%A4%EC%9A%B4%EA%B7%B8%EB%A0%88%EC%9D%B4%EB%93%9C-%ED%95%98%EA%B8%B0/

تنزيل الأداة