
أتمتة الوعي الظرفي لاختبارات الاختراق السحابية.
يساعدك CloudFox على اكتساب الوعي الظرفي في بيئات سحابية غير مألوفة. إنها أداة سطر أوامر مفتوحة المصدر صُممت لمساعدة مختبرَي الاختراق وغيرهم من محترفي الأمن الهجومي في إيجاد مسارات الهجوم القابلة للاستغلال في البنية التحتية السحابية.
مطلوب تحديث CLOUDFOX: (12/2025): إذا كنت تستخدم
cloudfox، فأنت بحاجة إلى استخدام الإصدار v1.17.0 أو أحدث. جميع الإصدارات السابقة توقفت عن العمل بعد تغيير في تنسيق ملف تعيين الخدمات العامة في AWS.
نظرة عامة
userdata لـ EC2 أو في متغيرات البيئة الخاصة بالخدمة؟انضم إلينا على سيرفر RedSec على ديسكورد
CloudFox معياري (يمكنك تشغيل أمر واحد في كل مرة)، ولكن يوجد أمر aws all-checks الذي سيشغل أوامر AWS الأخرى لك بإعدادات افتراضية معقولة:
cloudfox aws --profile [profile-name] all-checks

تم تصميم CloudFox ليتم تنفيذه بواسطة مدير لديه أذونات قراءة محدودة، لكن الغرض منه هو مساعدتك في إيجاد مسارات هجوم يمكن استغلالها في سيناريوهات اختراق محاكاة (أي اختبار الاختراق القائم على الهدف).
يمكن استخدام CloudFox مع بيانات اعتماد "موجودة"، على غرار كيفية استخدام weirdAAL أو enumerate-iam. عمليات التحقق التي تفشل، تفشل بصمت، لذا فإن أي بيانات يتم إرجاعها تعني أن بيانات الاعتماد "الموجودة" لديك تملك الصلاحية اللازمة لاسترجاعها.
للحصول على التوثيق الكامل، يرجى الرجوع إلى ويكي الخاص بنا.
| المزود | أوامر CloudFox |
|---|---|
| AWS | 34 |
| Azure | 4 |
| GCP | 60 |
| Kubernetes | مخطط للدعم |
الخيار 1: قم بتنزيل أحدث إصدار ثنائي لمنصتك.
الخيار 2: إذا كنت تستخدم homebrew: brew install cloudfox
الخيار 3: قم بتثبيت Go، استخدم go install github.com/BishopFox/cloudfox@latest للتثبيت من المصدر البعيد
الخيار 4: وضع المطور:
قم بتثبيت Go، استنسخ مستودع CloudFox وقم بتجميعه من المصدر ```
**الخيار 5:** اختبار إصلاح خلل ```
git clone [email protected]:BishopFox/cloudfox.git
git checkout seth-dev
go build .
./cloudfox [rest of the command options]
-l أو تمرير جميع الملفات التعريفية المخزنة باستخدام العلم -a.SecurityAudit + سياسة CloudFox المخصصةملاحظات إضافية حول السياسات (اعتبارًا من 09/2022):
gcloud auth application-default login)الأذونات الدنيا (مشروع واحد):
للتعداد الأساسي لمشروع واحد، يوفر دور roles/viewer وصول قراءة لمعظم الموارد (يشمل عرض السجلات والمراقبة والحوسبة/الشبكة).
الأذونات الشاملة (على مستوى المؤسسة):
لتقييمات أمنية شاملة عبر مؤسسة بأكملها:
ملاحظة: يتضمن دور
roles/viewerالأساسي أذونات منroles/logging.viewerوroles/monitoring.viewerوroles/compute.networkViewer، لذلك لا تحتاج إلى منحها بشكل منفصل.
يجب تمكين واجهات برمجة التطبيقات في كل مشروع تريد تقييمه. واجهات برمجة تطبيقات GCP نطاقها المشروع.
للحصول على تعليمات الإعداد التفصيلية، راجع دليل إعداد GCP.
للحصول على توثيق مفصل لكل أمر GCP، راجع ويكي أوامر GCP.| Provider | اسم الأمر | الوصف | - | - | - | | GCP | whoami | عرض سياق الهوية للمستخدم/حساب الخدمة المُوثّق في GCP | | GCP | iam | تعداد كيانات IAM في GCP عبر المؤسسات والمجلدات والمشاريع | | GCP | permissions | تعداد كافة الأذونات لكل كيان IAM مع التوسع الكامل في التوريث | | GCP | serviceaccounts | تعداد حسابات الخدمة في GCP مع تحليل أمني | | GCP | service-agents | تعداد وكلاء الخدمة المُدارة من Google | | GCP | keys | تعداد جميع مفاتيح GCP (مفاتيح حسابات الخدمة، مفاتيح HMAC، مفاتيح API) | | GCP | resource-iam | تعداد سياسات IAM على موارد GCP (الدلائل، مجموعات البيانات، الأسرار، إلخ.) | | GCP | domain-wide-delegation | العثور على حسابات خدمة ذات تفويض على مستوى النطاق لـ Google Workspace | | GCP | privesc | تحديد مسارات رفع الامتياز في مشاريع GCP | | GCP | hidden-admins | تحديد الكيانات القادرة على تعديل سياسات IAM (المسؤولين المخفيين) | | GCP | identity-federation | تعداد Identity Federation (الهويات الخارجية) | | GCP | instances | تعداد مثيلات Compute Engine في GCP مع التكوين الأمني | | GCP | gke | تعداد مجموعات GKE مع تحليل أمني | | GCP | cloudrun | تعداد خدمات ومهام Cloud Run مع تحليل أمني | | GCP | functions | تعداد دوال GCP Cloud Functions مع تحليل أمني | | GCP | | تعداد تطبيقات App Engine والتكوينات الأمنية | | GCP | | تعداد بيئات Cloud Composer | | GCP | | تعداد مجموعات Dataproc | | GCP | | تعداد وظائف وخطوط أنابيب Dataflow | | GCP | | تعداد دفاتر Vertex AI Workbench | | GCP | | تعداد GKE Workload Identity و Workload Identity Federation | | GCP | | جرد سريع للموارد - يعمل بدون Cloud Asset API | | GCP | | تعداد دلائل Cloud Storage في GCP مع التكوين الأمني | | GCP | | تعداد دلائل GCS بحثًا عن ملفات حساسة (بيانات اعتماد، أسرار، تكوينات) | | GCP | | تعداد مجموعات البيانات والجداول في BigQuery مع تحليل أمني | | GCP | | تعداد مثيلات Cloud SQL مع تحليل أمني | | GCP | | تعداد مثيلات وقواعد بيانات Cloud Spanner | | GCP | | تعداد مثيلات وجداول Cloud Bigtable | | GCP | | تعداد مثيلات Filestore NFS | | GCP | | تعداد مثيلات Memorystore (Redis) | | GCP | | تعداد شبكات VPC | | GCP | | تعداد شبكات VPC وقواعد جدار الحماية مع تحليل أمني | | GCP | | تعداد موازنات التحميل | | GCP | | تعداد نطاقات وسجلات Cloud DNS مع تحليل أمني | | GCP | | تعداد جميع نقاط نهاية الشبكة (خارجية وداخلية) بعناوين IP والمنافذ وأسماء المضيفين | | GCP | | تعداد نقاط نهاية Private Service Connect ومرفقات الخدمة | | GCP | | تصور طوبولوجيا شبكة VPC وعلاقات الندية وحدود الثقة | | GCP | | تعداد VPC Service Controls | | GCP | | تعداد مستويات الوصول في Access Context Manager | | GCP | | تعداد سياسات Cloud Armor الأمنية والعثور على نقاط الضعف | | GCP | | تعداد تكوينات Identity-Aware Proxy | | GCP | | تعداد تكوينات BeyondCorp Enterprise | | GCP | | تعداد حلقات المفاتيح والمفاتيح المشفرة في Cloud KMS مع تحليل أمني | | GCP | | تعداد أسرار GCP Secret Manager مع التكوين الأمني | | GCP | | تعداد شهادات SSL/TLS والعثور على الشهادات المنتهية أو غير الصحيحة التكوين | | GCP | | تعداد سياسات المؤسسة وتحديد نقاط الضعف الأمنية | | GCP | | تعداد GCP Artifact Registry و Container Registry مع التكوين الأمني | | GCP | | تعداد مشغّلات وعمليات البناء في Cloud Build | | GCP | | تعداد مستودعات Cloud Source Repositories | | GCP | | تعداد وظائف Cloud Scheduler مع تحليل أمني | | GCP | | تعداد مواضيع واشتراكات Pub/Sub مع تحليل أمني | | GCP | | تعداد مصارف ومقاييس Cloud Logging مع تحليل أمني | | GCP | | تعداد التسلسل الهرمي لمؤسسة GCP | | GCP | | تعداد Cloud Asset Inventory مع تحليل التبعيات الاختياري | | GCP | | تعداد سياسات النسخ الاحتياطي والموارد المحمية وتحديد فجوات النسخ الاحتياطي | | GCP | | رسم خرائط مسارات الحركة الجانبية ونواقل سرقة بيانات الاعتماد وفرص التمحور | | GCP | | تحديد مسارات تسريب البيانات والنواقل المحتملة ونقص التعزيز الأمني | | GCP | | العثور على الموارد التي لديها وصول allUsers/allAuthenticatedUsers عبر 16 خدمة GCP | | GCP | | تحليل روابط IAM عبر المشاريع ومصارف السجلات وصادرات Pub/Sub للحركة الجانبية | | GCP | | تشغيل FoxMapper (تحليل IAM المعتمد على الرسم البياني) لاكتشاف مسار رفع الامتياز | | GCP | | مسح إدخالات Cloud Logging بحثًا عن بيانات حساسة (بيانات اعتماد، رموز، PII) | | GCP | | مسح مجموعات البيانات والجداول والأعمدة في BigQuery بحثًا عن مؤشرات بيانات حساسة | | GCP | | مسح مثيلات وجداول وعائلات الأعمدة في Bigtable بحثًا عن مؤشرات بيانات حساسة | | GCP | | مسح مخططات قواعد بيانات Spanner بحثًا عن أسماء جداول وأعمدة حساسة |
كيف يقارن CloudFox بـ ScoutSuite و Prowler و وحدة AWS Compliance من Steampipe و AWS Security Hub، إلخ؟
CloudFox لا يُنشئ أي تنبيهات أو نتائج، ولا يتحقق من بيئتك للامتثال لخط أساس أو معيار مرجعي. بدلاً من ذلك، فهو ببساطة يمكّنك من أن تكون أكثر كفاءة خلال أنشطة اختبار الاختراق اليدوية. يمنحك المعلومات التي من المحتمل أن تحتاجها للتحقق من إمكانية مسار الهجوم من عدمه.
لماذا أرى أخطاء في بعض أوامر CloudFox؟
يمكنك دائمًا النظر في ملف ~/.cloudfox/cloudfox-error.log للحصول على مزيد من المعلومات حول الأخطاء.
endpointsendpointsiam-simulatorpermissions--userdata في أمر instances، وأمر permissions، والعديد غيرها.| السياسة | الملاحظات |
|---|
| سياسة CloudFox المخصصة | يحتوي على قائمة كاملة بكل إذن يستخدمه cloudfox ولا شيء آخر |
arn:aws:iam::aws:policy/SecurityAudit | يغطي معظم فحوصات cloudfox لكنه يفتقد الخدمات أو الأذونات الأحدث مثل apprunner:*, grafana:*, lambda:GetFunctionURL, lightsail:GetContainerServices |
arn:aws:iam::aws:policy/job-function/ViewOnlyAccess | يغطي معظم فحوصات cloudfox لكنه يفتقد الخدمات أو الأذونات الأحدث مثل AppRunner:*, grafana:*, lambda:GetFunctionURL, lightsail:GetContainerServices - ويفتقد أيضًا iam:SimulatePrincipalPolicy. |
arn:aws:iam::aws:policy/ReadOnlyAccess | يفتقد فقط AppRunner، لكنه يمنح أيضًا أشياء مثل "s3:Get*" التي قد تكون مفرطة في السماح. |
arn:aws:iam::aws:policy/AdministratorAccess | سيعمل هذا بشكل جيد مع CloudFox، ولكن إذا تم منحك هذا المستوى من الوصول كمختبر اختراق، فمن المحتمل أن يكون ذلك نتيجة بحد ذاته :) |
| النطاق | الدور | الغرض |
|---|
| المؤسسة | roles/resourcemanager.organizationViewer | عرض هيكل المؤسسة والبيانات الوصفية |
| المؤسسة | roles/iam.securityReviewer | مراجعة سياسات IAM عبر المؤسسة |
| المؤسسة | roles/cloudasset.viewer | الاستعلام عن مخزون أصول السحابة لجميع الموارد |
| المؤسسة | roles/cloudidentity.groupsViewer | تعداد مجموعات Google والعضويات |
| المجلد | roles/resourcemanager.folderViewer | عرض هيكل المجلد والبيانات الوصفية |
| المشروع | roles/viewer | وصول قراءة لمعظم موارد المشروع (يشمل logging.viewer, monitoring.viewer, compute.viewer) |
| مشروع الأدوات | roles/serviceusage.serviceUsageAdmin | (اختياري) إدارة حصص API لعمليات CloudFox |
| واجهة API | اسم الخدمة | الغرض |
|---|
| Cloud Identity API | cloudidentity.googleapis.com | تعداد المجموعات، تحليل الأدوار الموروثة |
| Cloud Asset API | cloudasset.googleapis.com | اكتشاف الموارد عبر المشاريع |
| Cloud Resource Manager API | cloudresourcemanager.googleapis.com | تخطيط المؤسسة، تعداد IAM |
| IAM API | iam.googleapis.com | تحليل IAM، اكتشاف تصعيد الصلاحيات |
| Compute Engine API | compute.googleapis.com | تعداد المثيلات، أمان الشبكة |
| Secret Manager API | secretmanager.googleapis.com | تعداد الأسرار |
| Cloud Functions API | cloudfunctions.googleapis.com | تعداد بدون خادم |
| Cloud Run API | run.googleapis.com | تعداد بدون خادم |
| Kubernetes Engine API | container.googleapis.com | تحليل أمان الحاويات |
| BigQuery API | bigquery.googleapis.com | تحليل أمان البيانات |
| المزود | اسم الأمر | الوصف |
|---|
| AWS | all-checks | تشغيل جميع الأوامر الأخرى باستخدام الإعدادات الافتراضية المعقولة. ستظل ترغب في التحقق من الخيارات غير الافتراضية لكل أمر، لكن هذه نقطة انطلاق رائعة. |
| AWS | access-keys | يسرد مفاتيح الوصول النشطة لجميع المستخدمين. مفيد للإسناد الترافقي لمفتاح وجدته لمعرفة الحساب ضمن النطاق الذي ينتمي إليه. |
| AWS | api-gw | يسرد نقاط نهاية API Gateway ويمنحك أوامر curl مخصصة بما في ذلك رموز API إذا كانت مخزنة في البيانات الوصفية. |
| AWS | buckets | يسرد الحاويات (buckets) في الحساب ويمنحك أوامر مفيدة لفحصها بشكل أعمق. |
| AWS | cape | تعداد مسارات تصعيد الصلاحيات عبر الحسابات. يتطلب تشغيل pmapper أولاً |
| AWS | cloudformation | يسرد حزم CloudFormation في الحساب. يُنشئ ملف loot يحتوي على تفاصيل الحزمة ومعاملات الحزمة ومخرجات الحزمة - ابحث عن الأسرار. |
| AWS | codebuild | تعداد مشاريع CodeBuild |
| AWS | databases | تعداد قواعد بيانات RDS. احصل على ملف loot مع سلاسل الاتصال. |
| AWS | ecr | يسرد URI الصورة الأحدث دفعًا من جميع المستودعات. استخدم ملف loot لسحب الصور المحددة باستخدام docker/nerdctl للفحص. |
| AWS | ecs-tasks | يسرد جميع مهام ECS. يُرجع قائمة بمهام ECS والمجموعة المرتبطة وتعريف المهمة ومثيل الحاوية ونوع الإطلاق والكيان الرئيسي IAM المرتبط. |
| AWS | eks | يسرد جميع مجموعات EKS، ويرى ما إذا كانت تعرض نقطة النهاية الخاصة بها للعامة، ويتحقق من أدوار IAM المرتبطة المرفقة للوصول إلى المجموعة أو مجموعة العقد. يُنشئ ملف loot مع الأمر aws eks udpate-kubeconfig اللازم للاتصال بكل مجموعة. |
| AWS | elastic-network-interfaces | يسرد جميع معلومات واجهات الشبكة المرنة (ENI). يُرجع قائمة بمعرف ENI والنوع وعنوان IP الخارجي وعنوان IP الخاص ومعرف VPC والمثيل المرفق ووصفًا. |
| AWS | endpoints | تعداد نقاط النهاية من خدمات متنوعة. امسح هذه النقاط من موقع داخلي وخارجي للبحث عن أشياء لا تتطلب مصادقة، أو تم تكوينها بشكل خاطئ، إلخ. |
| AWS | env-vars | يجلب متغيرات البيئة من الخدمات التي تحتوي عليها (App Runner، ECS، Lambda، حاويات Lightsail، Sagemaker مدعومة). إذا وجدت سرًا حساسًا، استخدم cloudfox iam-simulator وpmapper لمعرفة من لديه حق الوصول إليها. |
| AWS | filesystems | تعداد أنظمة الملفات EFS وFSx التي قد تتمكن من تحميلها دون بيانات اعتماد (إذا كان لديك وصول الشبكة المناسب). على سبيل المثال، هذا مفيد عندما يكون لديك ec:RunInstance ولكن ليس iam:PassRole. |
| AWS | iam-simulator | مثل pmapper، لكنه يستخدم محاكي سياسات IAM. يستخدم منطق التقييم الخاص بـ AWS، لكنه لا يأخذ في الاعتبار الوصول عبر تصعيد الصلاحيات، ولهذا يجب عليك دائمًا استخدام pmapper أيضًا. |
| AWS | instances | تعداد المعلومات المفيدة لمثيلات EC2 في جميع المناطق مثل الاسم وعناوين IP العامة/الخاصة وملفات تعريف المثيلات. يُنشئ ملفات loot يمكنك إدخالها إلى nmap وأدوات أخرى لتعداد الخدمات. |
| AWS | inventory | الحصول على فهم تقريبي لحجم الحساب والمناطق المفضلة. |
| AWS | lambda | يسرد دوال Lambda في الحساب، بما في ذلك أي منها يحتوي على أدوار مسؤول مرفقة. كما يمنحك أوامر مفيدة لتنزيل كل دالة. |
| AWS | network-ports | تعداد خدمات AWS التي قد تعرض خدمة شبكة. يتم تحليل مجموعات الأمان وقوائم ACL للشبكة لكل مورد لتحديد المنافذ التي قد تكون مكشوفة. |
| AWS | orgs | تعداد الحسابات في مؤسسة |
| AWS | outbound-assumed-roles | يسرد الأدوار التي تم افتراضها من قبل الكيانات الرئيسية في هذا الحساب. هذه طريقة ممتازة للعثور على مسارات هجوم صادرة تؤدي إلى حسابات أخرى. |
| AWS | permissions | تعداد أذونات IAM المرتبطة بجميع المستخدمين والأدوار. استخدم grep على هذا المخرجات لمعرفة الأذونات التي يمتلكها كيان رئيسي معين بدلاً من تسجيل الدخول إلى وحدة تحكم AWS وتوسيع كل سياسة مرفقة بالكيان الذي تحقق فيه بشكل مضن. |
| AWS | pmapper | يبحث عن بيانات pmapper المخزنة على نظام الملفات المحلي، في المواقع المحددة هنا. إذا تم العثور على بيانات pmapper (قمت بالفعل بتشغيل pmapper graph create)، فإن هذا الأمر سيستخدم هذه البيانات لبناء رسم بياني في ذاكرة cloudfox ليعلمك من يمكنه تصعيد الصلاحيات إلى مسؤول. |
| AWS | principals | تعداد مستخدمي وأدوار IAM بحيث تكون البيانات في متناول يدك. |
| AWS | ram | يسرد جميع الموارد في هذا الحساب التي تمت مشاركتها مع حسابات أخرى، أو الموارد من حسابات أخرى التي تمت مشاركتها مع هذا الحساب. مفيد لمسارات الهجوم عبر الحسابات. |
| AWS | resource-trusts | يفحص خدمات متعددة تدعم سياسات الموارد ويساعدك في العثور على أي ثقات موارد مفرطة في السماح. KMS مدعوم ولكن معطل افتراضيًا. لتضمين سياسات موارد KMS في المخرجات، أضف هذا العلم إلى الأمر: cloudfox aws resource-trusts --include-kms. |
| AWS | role-trusts | تعداد سياسات ثقة دور IAM بحيث يمكنك البحث عن ثقات أدوار مفرطة في السماح أو العثور على أدوار تثق في خدمة معينة. |
| AWS | route53 | تعداد جميع السجلات من جميع المناطق المُدارة في Route53. استخدم هذا لتعداد التطبيقات والخدمات. |
| AWS | secrets | يسرد الأسرار من SecretsManager وSSM. ابحث عن أسرار مثيرة للاهتمام في القائمة ثم تحقق من لديه حق الوصول إليها باستخدام cloudfox iam-simulator و/أو pmapper. |
| AWS | sns | هذا الأمر يعداد جميع موضوعات SNS ويمنحك الأوامر للاشتراك في موضوع أو إرسال رسائل إلى موضوع (إذا كان لديك الأذونات اللازمة). هذا الأمر يتعامل فقط مع الموضوعات، وليس وظيفة SMS. يحاول هذا الأمر أيضًا تلخيص سياسات موارد الموضوع إذا كانت موجودة. |
| AWS | sqs | هذا الأمر يعداد جميع قوائم انتظار SQS ويمنحك الأوامر لتلقي الرسائل من قائمة انتظار وإرسال الرسائل إلى قائمة انتظار (إذا كان لديك الأذونات اللازمة). يحاول هذا الأمر أيضًا تلخيص سياسات موارد قائمة الانتظار إذا كانت موجودة. |
| AWS | tags | يسرد جميع الموارد مع العلامات، وجميع العلامات. يمكن استخدامه بشكل مشابه للمخزون كطريقة أخرى لتحديد أنواع الموارد الموجودة في حساب. |
| AWS | workloads | يسرد جميع أعباء العمل الحاسوبية والدور الذي تملكه. يخبرك إذا كان أي من الأدوار مسؤولًا (سيء) وإذا كان لديك بيانات pmapper محليًا، فسيخبرك إذا كان أي من الأدوار يمكنه تصعيد الصلاحيات إلى مسؤول (سيء أيضًا) |
| AWS | ds | يسرد جميع الدلائل المُدارة من AWS وخصائصها. يلخص أيضًا الثقات الحالية مع اتجاهاتها وأنواعها. |
| المزود | اسم الأمر | الوصف |
|---|
| Azure | whoami | يعرض معلومات حول المستأجر والاشتراكات ومجموعات الموارد المتاحة لجلسة Azure CLI الحالية. هذا مفيد لتوفير الوعي بالموقف بشأن معرفات المستأجر والاشتراك لاستخدامها مع الأوامر الفرعية الأخرى. |
| Azure | inventory | عرض جدول مخزون لجميع الموارد حسب الموقع. |
| Azure | rbac | يسرد تعيينات أدوار Azure RBAC على مستوى الاشتراك أو المستأجر |
| Azure | storage | أمر التخزين لا يزال قيد التطوير. حاليًا يعرض فقط بيانات محدودة حول حسابات التخزين |
| Azure | vms | تعداد المعلومات المفيدة لمثيلات Compute في جميع مجموعات الموارد والاشتراكات المتاحة |
inventory