انكشاف S3 والتخزين
حاويات عامة
انكشاف S3 والتخزين درس مجاني في Ethical Hacking Academy على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Ethical Hacking Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Ethical Hacking Academy 4 دروس في المجموع.
لماذا تسرّب حاويات التخزين البيانات
يُعد تخزين الكائنات مثل AWS S3 وAzure Blob وGCP Cloud Storage أحد أكثر مصادر اختراق البيانات السحابية شيوعًا. فمن السهل إنشاء الحاويات، كما يسهل إعدادها بطريقة خاطئة.
- ضبطها عن طريق الخطأ للسماح بالقراءة أو الكتابة العامة
- استخدام أسماء يمكن توقعها وتخمينها
- استخدام سياسات حاويات أو قوائم ACL واسعة جدًا
يمكن لحاوية عامة واحدة أن تسرّب ملايين السجلات.
كيفية عمل تسمية S3
تكون أسماء حاويات S3 فريدة عالميًا وترتبط بعناوين URL يمكن توقعها. وهذه القابلية للتوقع هي بالضبط ما يجعل الحصر ممكنًا.
يمكن لأي شخص يخمّن اسم حاوية صالح أن يفحص مستوى الوصول إليها.
# Two equivalent S3 URL forms
https://my-bucket.s3.amazonaws.com/
https://s3.amazonaws.com/my-bucket/
# Region-specific endpoint
https://my-bucket.s3.eu-west-1.amazonaws.com/اكتشاف الحاويات العامة
أسرع اختبار هو إرسال طلب دون مصادقة. ويخبركم رمز حالة HTTP بحالة الوصول.
- 200 مع قائمة XML — وصول عام إلى قائمة المحتويات
- 403 AccessDenied — الحاوية موجودة لكنها خاصة
- 404 NoSuchBucket — الحاوية غير موجودة
# Anonymous listing attempt
curl -s https://example-data.s3.amazonaws.com/
# Anonymous via the AWS CLI (no signing)
aws s3 ls s3://example-data --no-sign-requestتخمين أسماء الحاويات بالقوة
ينشئ المهاجمون أسماء محتملة من اسم الشركة مضافًا إليه لواحق شائعة، ثم يختبرون كل اسم. وتؤتمت الأدوات هذه العملية على نطاق واسع.
من الأنماط المعتادة: company-backups وcompany-dev وcompany-logs وcompany-assets.
# Permutate and probe bucket names from a keyword
cloud_enum -k example
# Dedicated S3 enumerator
s3scanner scan --bucket-file candidates.txtالقراءة العامة مقابل الكتابة العامة
يتخذ الوصول العام شكلين، وتُعد الكتابة أخطر بكثير من القراءة.
- القراءة العامة — ينزّل المهاجمون بياناتكم (اختراق بيانات)
- الكتابة العامة — يرفع المهاجمون الكائنات أو يستبدلونها
تتيح الكتابة العامة تشويه المواقع، واستضافة البرمجيات الخبيثة على نطاقكم، وحتى شن هجمات على سلسلة التوريد إذا كانت الحاوية تقدم أصول موقع أو برنامج.
# Test for public write (DANGEROUS - only with authorization)
aws s3 cp test.txt s3://example-data/ --no-sign-request
# If this succeeds, the bucket allows anonymous uploads.إعداد «حظر الوصول العام» المضلل
توفر AWS إعدادات Block Public Access على مستوى الحساب والحاوية. وهي قوية، لكن غالبًا ما يُساء فهمها.
- تتجاوز إعدادات مستوى الحساب سياسات الحاوية
- قد تكون الحاوية خاصة حتى مع وجود سياسة متساهلة إذا كان BPA مفعّلًا
- وعلى العكس، قد يؤدي تعطيل BPA فجأة إلى كشف حاويات عديدة
تحققوا دائمًا من الوصول الفعلي، وليس من سياسة واحدة فقط.
# Inspect block-public-access configuration
aws s3api get-public-access-block --bucket example-data
aws s3api get-bucket-policy-status --bucket example-dataالتعرض في Azure Blob
تخزن Azure الكائنات في حاويات داخل حسابات تخزين. ويؤدي الإعداد الخاطئ إلى ضبط مستوى الوصول العام للحاوية على blob أو container.
كما أن أسماء حسابات التخزين فريدة عالميًا ويمكن توقعها.
# Azure blob URL pattern
https://exampleacct.blob.core.windows.net/container/file.txt
# Anonymous list attempt against a public container
curl -s 'https://exampleacct.blob.core.windows.net/backups?restype=container&comp=list'التعرض في GCP Cloud Storage
يمكن جعل حاويات Google Cloud Storage عامةً بمنح principal المسمى allUsers أو allAuthenticatedUsers دور قراءة.
يشابه نمط التعرض نمط S3: أسماء يمكن توقعها، وفحص مجهول، وارتباطات IAM عامة.
# Anonymous list of a GCS bucket
curl -s https://storage.googleapis.com/example-bucket/
# Check IAM bindings for allUsers (authenticated)
gsutil iam get gs://example-bucketما يبحث عنه المهاجمون في الداخل
الحاوية العامة ليست سوى الباب. أما الغنيمة الحقيقية فهي ما بداخلها:
- تفريغات قواعد البيانات والنسخ الاحتياطية
- الشيفرة المصدرية وملفات
.envالتي تحتوي على أسرار - بيانات اعتماد السحابة ومفاتيح API
- معلومات التعريف الشخصية للعملاء (البيانات الشخصية)
- المستندات والإعدادات الداخلية
حتى الملف الصغير المسرّب قد يحتوي على مفاتيح تؤدي إلى تصعيد الصلاحيات والسيطرة الكاملة على الحساب.
المعالجة والتدعيم
تتم معالجة التعرض التخزيني عبر عدة طبقات:
- فعّلوا Block Public Access على مستوى الحساب
- أزيلوا قوائم ACL العامة ومنح
allUsers/allAuthenticatedUsers - استخدموا سياسات حاويات محصورة في principals محددين
- فعّلوا التشفير وتسجيل الوصول
- شغّلوا فحصًا مستمرًا للإعدادات لاكتشاف الحاويات العامة الجديدة
تعاملوا مع البيانات المكشوفة بمسؤولية
ينطوي العثور على حاوية عامة مليئة ببيانات حقيقية على تبعات أخلاقية وقانونية.
- لا تنزّلوا أكثر من الحد الأدنى اللازم لإثبات التعرض
- لا تستخرجوا معلومات التعريف الشخصية للعملاء أو تحتفظوا بها أبدًا
- أبلغوا فورًا وبطريقة آمنة
- التزموا بالنطاق وقواعد التعامل مع الاختبار
الهدف هو إثبات وجود الوصول، لا جمع البيانات.
اختبار سريع
يعيد طلب مجهول إلى عنوان URL لحاوية S3 الاستجابة HTTP 403 AccessDenied. إلى ماذا يشير ذلك؟
مراجعة: التعرض في S3 والتخزين
تعلّمتم كيف يسبب تخزين الكائنات تسريب البيانات، وكيف تختبرون ذلك بأمان.
- أسماء الحاويات فريدة عالميًا ويمكن توقعها، مما يتيح حصرها
- تكشف رموز حالة HTTP حالة الوصول: 200 (عام)، و403 (خاص)، و404 (غير موجود)
- تُعد الكتابة العامة أخطر من القراءة العامة
- ينطبق النمط نفسه على Azure Blob وGCP Cloud Storage
- تتم المعالجة باستخدام Block Public Access وسياسات أقل قدر من الصلاحيات
التالي: خدمات البيانات الوصفية وSSRF، وهي سلسلة هجوم خاصة بالسحابة.
الأسئلة الشائعة
هل درس «انكشاف S3 والتخزين» مجاني؟
نعم — نص درس «انكشاف S3 والتخزين» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Ethical Hacking Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Ethical Hacking Academy 4 دروس في المجموع.
ماذا ستتعلم في «انكشاف S3 والتخزين»؟
حاويات عامة تتمرن على Ethical Hacking Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Ethical Hacking Academy؟
لا تُشترط خبرة سابقة. Ethical Hacking Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.
كم من الوقت يستغرق درس «انكشاف S3 والتخزين»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Ethical Hacking Academy هذا؟
نعم. كل درس في Ethical Hacking Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- سطح الهجوم السحابي
- إعدادات IAM الخاطئة
- انكشاف S3 والتخزين
- البيانات الوصفية وSSRF