Blog Wallpaper
A
ALI ALAKABRالجمعة، 27 يونيو 2025

كيف حصلت على وصول كامل لملف PDF محمي !!

منذ شهرين تقريبا

Area Iconالأمن السيبراني - صيد الثغرات

مقدمة:

شلون حصلت وصول كامل لملف PDF محمي بتوثيق هوية ورمز سري؟
خل أبينلك الخطوات بشكل مفصل.


بديت بفحص الموقع، وفهمت طريقة عمله:

  • تكدر ترفع ملفات PDF.
  • تكدر تضيف مساعدين يعدلون أو يعلقون على الملف.

قمت بإضافة حسابي الثاني كمساعد، بعدها وصلتني رسالة على الإيميل تحتوي على رابط فيه توكن:

https://REDACTED.com/File?token=eg
استلام الدعوة
استلام الدعوة

رجعت لحسابي الأول، وفعّلت خيار الحماية:

  • فعلت التوثيق عبر KYC (توثيق هوية).
  • أضفت رمز سري (Passcode).

بعد التفعيل، لما أفتح الرابط من حسابي الثاني، تطلعلي صفحة التوثيق وكلمة المرور مثل ما متوقع:

اضافة باسورد
اضافة باسورد

منظور المهاجم:

منظور المهاجم
منظور المهاجم

جربت أتلاعب بالـ response لكن ما ضبط.


الفكرة الرئيسية - Direct API Access

فكرت أشوف هل يوجد Endpoint مباشر لتحميل الملف؟
جربت:

GET /org/<ORG_ID>/ws/<WORKSPACE_ID>/documents/<DOCUMENT_ID>/files/<FILE_ID>/download HTTP/2
Host: api.stg01.Domain.com
Authorization: X-Token ***
الملف
الملف

وفعلاً دخلني على الملف مباشرة بدون الحاجة إلى إدخال الرمز السري أو التوثيق!


واجهتني مشكلة: منين أجيب الـ IDs (ORG, WS, DOC, FILE)؟
جربت أسوي Refresh للصفحة، وظهر لي Request يحتوي على كل المعلومات المطلوبة:

GET /p/<your_token>/data HTTP/2
Host: app.stg01.Domain.com
Authorization: X-Token ***
الايديات
الايديات

استخدمت نفس التوكن اللي وصلني بالإيميل، وفعلاً:

حصلت على:

  • ORG_ID
  • WORKSPACE_ID
  • DOCUMENT_ID
  • FILE_ID

رجعت ورسلت الـ request لتحميل الملف:

GET /org/<ORG_ID>/ws/<WORKSPACE_ID>/documents/<DOCUMENT_ID>/files/<FILE_ID>/download HTTP/2
Host: api.stg01.Domain.com
Authorization: X-Token ***

وانفتح الملف بشكل طبيعي، بدون أي باسورد أو توثيق.


لاحظت أن الملف يحتوي تعليقات، جربت أرسل تعليق باستخدام الـ Endpoint الخاص بالتعليقات:

POST /org/<ORG_ID>/ws/<WORKSPACE_ID>/documents/<DOCUMENT_ID>/public-messages HTTP/2
Host: api.stg01.Domain.com
Content-Length: 42
Authorization: X-Token ***

{"text":"ExeC_IQ","type":0,"mentioned_users":[]}
إتمام التعليق
إتمام التعليق

والتعليق تم بنجاح.


خطورة الثغرة

تعتبر هذه الثغرة عالية الخطورة لأنها:

  • تتجاوز التوثيق وكلمة المرور.
  • تسمح بالوصول إلى ملفات حساسة وخاصة.
  • تتيح للمهاجم التعليق داخل المستند بدون أي أذونات أو صلاحيات.

ملخص الخطوات:

  1. استخدمت رابط يحتوي على توكن (Token) الي وصلني على الأيميل.
  2. اكتشفت أن التوكن يتيح الوصول إلى API غير محمية.
  3. حصلت على الـ IDs المهمة عبر API ثانية.
  4. رسلت Request مباشر لتحميل الملف.
  5. تخطيت الحماية المفروضة ببساطة عبر استدعاء Endpoint مباشر غير محمي.
  6. علقت على الملف أيضاً بدون صلاحيات.

ExeC_IQ