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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
aws-security-assessment-solution — أداة AWS لمساعدتك في إنشاء تقييم في وقت معين لحساب AWS الخاص بك باستخدام Prowler. | Kitploit
أدوات/GitHubGitHub/awslabs/aws-security-assessment-solution
أمن البنية التحتية السحابيةماسحات الثغرات الأمنيةتدقيق التكوينأمن السحابةDevSecOps
GitHubawslabs/aws-security-assessment-solution

aws-security-assessment-solution

أداة AWS لمساعدتك في إنشاء تقييم في وقت معين لحساب AWS الخاص بك باستخدام Prowler.

عرض المستودع

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
6151185منذ 7 أيامتمت المراجعة من قبل Kitploit
مشاركة

حلول التقييم الأمني للخدمة الذاتية (الإصدار 2.0)

لا تزال الأمن السيبراني موضوعًا مهمًا للغاية ومصدر قلق للعديد من مدراء المعلومات (CIOs) ومدراء أمن المعلومات (CISOs) وعملائهم. لتلبية هذه المخاوف المهمة، طورت AWS مجموعة أساسية من الخدمات التي يجب على العملاء استخدامها للمساعدة في حماية حساباتهم. تساعد مراجعات Amazon GuardDuty و AWS Security Hub و AWS Config و AWS Well-Architected العملاء في الحفاظ على وضع أمني قوي لحساباتهم في AWS. مع نشر المزيد من المؤسسات في السحابة، خاصة إذا كانوا يفعلون ذلك بسرعة، ولم يقوموا بعد بتطبيق خدمات AWS الموصى بها، قد تكون هناك حاجة لإجراء تقييم أمني سريع للبيئة السحابية.

لقد طورنا حلاً غير مكلف، سهل النشر، آمن، وسريع لتزويد عملائنا بتقرير تقييم أمني. يتم إنشاء هذه التقارير باستخدام المشروع مفتوح المصدر Prowler. يقوم Prowler بإجراء تقييم أمني في نقطة زمنية بناءً على أفضل ممارسات AWS ويمكن أن يساعد في تحديد أي مجالات خطر محتملة بسرعة في بيئة العميل المنشورة. إذا كنت مهتمًا بإجراء هذه التقييمات بشكل مستمر، توصي AWS بتمكين معيار أفضل ممارسات الأمان الأساسية في Security Hub. إذا كنت مهتمًا بدمج نتائج تقييم Prowler مع Security Hub، يمكنك اتباع التعليمات في توثيق Prowler.

ملاحظة: Prowler ليس حلاً مملوكًا لـ AWS. يجب على العملاء مراجعة Prowler بشكل مستقل قبل تشغيل هذا الحل. يجب تحديث أي تبعيات مرتبطة بـ Prowler. يقوم هذا الحل بتثبيت أحدث إصدار متاح من مثبت حزمة pip.

📕 للحصول على إرشادات أكثر تفصيلاً خطوة بخطوة، قم بزيارة الوحدة 2 في ورشة عمل SHIP.

جدول المحتويات

  • نظرة عامة
  • المعلمات
  • النشر
  • فحص الحساب الواحد
    • AWS CloudShell
      • نشر الحل
    • وحدة تحكم AWS
      • نشر الحل
  • فحص الحسابات المتعددة
    • AWS CloudShell
      • الخطوة 1: نشر الدور المسبق
      • الخطوة 2: نشر حل SATv2
    • وحدة تحكم AWS
      • الخطوة 1: نشر الدور المسبق
      • الخطوة 2: تمكين المسؤول المفوض لـ AWS Organizations
      • الخطوة 3: نشر حل SATv2
  • مراجعة النتائج
    • لوحة معلومات SATv2 (موصى بها)
    • لوحة معلومات Prowler
  • أنواع الفحص
    • فحص أساسي
    • فحص متوسط
    • فحص كامل
  • الإشعارات
  • ملخص التقارير
  • الأسئلة الشائعة (FAQ)
  • التنظيف
  • الأمان
  • الترخيص

نظرة عامة

يتم نشر الحل باستخدام AWS CloudFormation. عند نشره، يتم إنشاء مشروع AWS CodeBuild وحاوية Amazon S3 لتخزين التقارير التي تم إنشاؤها بواسطة Prowler. ثم يتم استخدام دالة AWS Lambda لبدء مشروع AWS CodeBuild.

سيقوم الإعداد الافتراضي للمعامل (إدخال المستخدم) بتشغيل فحص أساسي في حساب واحد. ومع ذلك، يمكنك اختيار معاملات مختلفة لتشغيل فحوصات أكثر شمولاً أو لفحص حسابات متعددة. تستغرق عملية النشر أقل من 5 دقائق لإكمالها. يتم توفير قوالب AWS CloudFormation للحل للمراجعة في مستودع Github هذا.

بمجرد نشر القالب، سيتم تشغيل مشروع CodeBuild. يستغرق التقييم الافتراضي حوالي 5 دقائق لإكماله. سيختلف الوقت المستغرق لإكمال التقييم الأمني اعتمادًا على عدد الموارد وخيارات الفحص المحددة. في نهاية التقييمات، يتم تسليم التقارير إلى حاوية S3 التي تم إنشاؤها.

مخطط العمارة

المعاملات

يمكن تخصيص SATv2 عن طريق تحديث معاملات CloudFormation. يلخص هذا القسم الخيارات المتاحة ويوفر رابطًا للقسم الذي يحتوي على مزيد من المعلومات.

المعاملالوصفمزيد من المعلومات
ProwlerScanTypeحدد نوع الفحص الذي تريد إجراؤه. سيؤدي تحديد full بدون تحديد ProwlerOptions مختلفة إلى إجراء فحص كامل. لإجراء فحص محدد، اختر Full وألحق -c بـ ProwlerOptions.أنواع الفحص
MultiAccountScanعيّن هذا إلى true إذا كنت تريد فحص جميع الحسابات في مؤسستك. يجب أن تكون قد نشرت القالب المسبق لتوفير دور، أو حدد ProwlerRole مختلفًا مع الأذونات المناسبة.فحص الحسابات المتعددة
Reportingعيّن هذا إلى true إذا كنت تريد تلخيص تقارير Prowler في ملف csv واحد. هذا مفيد عند فحص حسابات متعددة.ملخص التقارير
EmailAddressحدد عنوان بريد إلكتروني إذا كنت تريد تلقي بريد إلكتروني عند اكتمال التقييم.الإشعارات
المعاملات المتقدمة
ConcurrentAccountScansلفحص الحسابات المتعددة، حدد عدد الحسابات لفحصها بالتزامن. هذا مفيد للمؤسسات الكبيرة التي لديها العديد من الحسابات. يؤدي تحديد أكثر من ثلاثة إلى تغيير حجم مثيل CodeBuild وقد يؤدي إلى تكاليف إضافية.
CodeBuildTimeoutعيّن المهلة لمهمة CodeBuild. الافتراضي هو 300 دقيقة (5 ساعات).
MultiAccountListOverrideحدد قائمة مفصولة بمسافة للحسابات المراد فحصها. سيؤدي ترك هذا فارغًا إلى فحص جميع الحسابات في مؤسستك. تأكد من تعيين معامل MultiAccountScan أعلاه إلى true إذا كنت تريد فحص حسابات محددة. إذا لم تتمكن من توفير وصول ListAccount مفوض، يمكنك توفير معامل MultiAccountListOverride.فحص الحسابات المتعددة
ProwlerOptionsحدد المعاملات لـ Prowler. سيتم إضافة --role و ARN تلقائيًا إلى نهاية المعاملات التي تحددها. يمكن استخدام هذا أيضًا لتحديد فحص واحد.فحص كامل
ProwlerRoleالدور الذي يجب أن يفترضه Prowler لإجراء الفحص. قم بتغيير هذا إذا كنت تريد تحديد دورك الخاص بأذونات مختلفة.

النشر

يمكنك استخدام هذا المشروع لتشغيل Prowler عبر حسابات متعددة في مؤسسة AWS، أو حساب واحد. نقدم تعليمات لاستخدام AWS CloudShell أو وحدة تحكم AWS. اختر خيارًا للبدء.

نوع النشرAWS CloudShellوحدة تحكم AWS
حساب واحدرابطرابط
حسابات متعددةرابطرابط

فحص الحساب الواحد

لتشغيل حل التقييم الأمني للخدمة الذاتية (SATv2) ضد حساب واحد، اتبع الإرشادات أدناه. يمكنك اختيار استخدام AWS CLI أو وحدة تحكم AWS.

AWS CloudShell

عرض الخطوات

نشر الحل

  1. سجل الدخول إلى حساب AWS الخاص بك.

  2. في شريط التنقل، اختر AWS CloudShell.

  3. لتنزيل قالب CloudFormation، أدخل الأمر التالي.

    root@kitploit:~
    wget https://raw.githubusercontent.com/awslabs/aws-security-assessment-solution/main/2-sat2-codebuild-prowler.yaml
    
  4. لنشر قالب CloudFormation، أدخل الأمر التالي.

    root@kitploit:~
    aws cloudformation deploy --template-file 2-sat2-codebuild-prowler.yaml --stack-name sat2 --capabilities CAPABILITY_NAMED_IAM
    

وحدة تحكم AWS

عرض الخطوات

نشر الحل

  1. قم بتنزيل قالب CloudFormation 2-sat2-codebuild-prowler.yaml.
  2. انتقل إلى وحدة تحكم AWS CloudFormation.
  3. في جزء التنقل، اختر Stacks.
  4. اختر Create stack.
  5. ضمن Specify template، حدد Upload a template file.
  6. اختر 2-sat2-codebuild-prowler.yaml الذي قمت بتنزيله في الخطوة 1.
  7. اختر Next.
  8. بالنسبة لـ Stack name، أدخل sat2.
  9. اختر Next.
  10. في صفحة Configure stack options، اختر Next.
  11. في صفحة Review SAS، حدد المربع I acknowledge that AWS CloudFormation might create IAM resources. واختر Submit.

فحص الحسابات المتعددة

يدعم حل التقييم الأمني للخدمة الذاتية (SAT) أيضًا فحص الحسابات المتعددة. يجب نشر دور مسبق على كل حساب تريد إجراء الفحص عليه. لتشغيل SATv2 لحسابات متعددة، اتبع الإرشادات أدناه. يمكنك اختيار استخدام AWS CLI أو وحدة تحكم AWS.

تفترض هذه التعليمات أن لديك بالفعل المتطلبات الأساسية لعمليات StackSet. لمزيد من المعلومات، قم بزيارة دليل مستخدم AWS CloudFormation.

ملاحظة: لا تنطبق StackSets على حساب الإدارة. لتقييم حساب الإدارة، قم بنشر 1-sat2-member-role كـ CloudFormation Stack.

AWS CloudShell

عرض الخطوات

الخطوة 1: نشر الدور المسبق

  1. سجل الدخول إلى حساب إدارة AWS الخاص بك.

  2. في شريط التنقل، اختر AWS CloudShell.

  3. حدد الحساب الذي ستقوم بتشغيل فحص Prowler منه. يستخدم العملاء عادةً حساب أدوات الأمان أو حساب التدقيق. لاحظ معرف الحساب لمعامل ProwlerAccountID.

  4. لتنزيل قالب CloudFormation، أدخل الأمر التالي.

    root@kitploit:~
    wget https://raw.githubusercontent.com/awslabs/aws-security-assessment-solution/main/1-sat2-member-roles.yaml
    
  5. انشر قالب CloudFormation عبر CloudFormation StackSets. قم بتحديث المعاملات التالية:

    • استبدل <aws-account-id> بمعرف الحساب الذي ستقوم بتشغيل Prowler منه.
    • استبدل <region> بالمنطقة التي تريد نشر القالب فيها.
    root@kitploit:~
    aws cloudformation create-stack-set --template-body file://1-sat2-member-roles.yaml \
    --stack-set-name sat2-member-roles \
    --permission-model SERVICE_MANAGED \
    --auto-deployment Enabled=true,RetainStacksOnAccountRemoval=false \
    --capabilities CAPABILITY_NAMED_IAM \
    --parameters ParameterKey=ProwlerAccountID,ParameterValue=<aws-account-id> \
    --region <region>
    
  6. استخدم الأمر التالي لإنشاء مثيلات Stack لكل حساب في مؤسستك. يمكنك استهداف OU معينة، أو OU الجذر. قم بتحديث المعاملات التالية:

    • استبدل <root-ou> بمعرف جذر المؤسسة.
    • استبدل <region> بالمنطقة التي تريد نشر القالب فيها.
    root@kitploit:~
    aws cloudformation create-stack-instances --stack-set-name sat2-member-roles \
    --deployment-targets OrganizationalUnitIds='["<root-ou>"]' \
    --regions '["<region>"]' \
    --operation-preferences FailureTolerancePercentage=100,MaxConcurrentPercentage=100 \
    --region <region>
    
  7. حدد ما إذا كان لديك مسؤول مفوض أو سياسة موارد موجودة بالفعل لحساب Prowler الخاص بك. هناك حاجة إلى خيار واحد فقط ويتم تشجيع سياسة الموارد لأنها أكثر تفصيلاً.

    ملاحظة: سياسات الموارد غير متوفرة في GovCloud، لذلك ستحتاج إلى استخدام مسؤول مفوض.

    7أ. قد يكون حساب Prowler الخاص بك لديه بالفعل تفويض. يمكنك استخدام الأوامر التالية للتحقق:

    root@kitploit:~
    aws organizations list-delegated-administrators
    

    7ب. قد يكون حساب Prowler الخاص بك لديه بالفعل سياسة موارد. يمكنك استخدام الأوامر التالية للتحقق:

    root@kitploit:~
    aws organizations describe-resource-policy
    
  8. إذا لم يكن لديك مسؤول مفوض أو سياسة موارد، يمكنك استخدام الأوامر التالية لإضافة الوصول المناسب.

    ملاحظة: إذا لم تتمكن من توفير وصول ListAccounts مفوض، يمكنك توفير معامل MultiAccountListOverride في قالب 2-sat2-codebuild-prowler.

    ملاحظة: إذا كنت تستخدم GovCloud، استخدم الخطوة 8أ لإنشاء مسؤول مفوض. إذا كنت تستخدم منطقة تجارية، استخدم الخطوة 8ب لتوفير وصول بأقل امتياز إلى ListAccounts.

    8أ. استخدم الأمر التالي لتفويض مسؤول إذا لم يكن لديك واحد بالفعل. استبدل <aws-account-id> بمعرف الحساب الذي ستقوم بتشغيل Prowler منه.

    root@kitploit:~
    aws organizations register-delegated-administrator <aws-account-id>
    

    8ب. استخدم الأوامر التالية لإضافة سياسة موارد.

    • استبدل <aws-account-id> بمعرف الحساب الذي ستقوم بتشغيل Prowler منه.

      root@kitploit:~
      aws organizations put-resource-policy --content \
      '{
          "Version": "2012-10-17",
          "Statement": [
          {
              "Sid": "Statement",
              "Effect": "Allow",
              "Principal": {
              "AWS": "arn:aws:iam::<aws-account-id>:root"
              },
              "Action": [
                  "organizations:ListAccounts",
                  "organizations:DescribeAccount",
                  "organizations:ListTagsForResource"
              ],
              "Resource": "*"
          }
          ]
      }'
      

الخطوة 2: نشر حل SATv2

ملاحظة: تأكد من التبديل إلى الحساب الذي حددته لتشغيل Prowler.

  1. لتنزيل القالب، افتح AWS CloudShell في حساب Prowler وأدخل الأمر التالي.

    root@kitploit:~
    wget https://raw.githubusercontent.com/awslabs/aws-security-assessment-solution/main/2-sat2-codebuild-prowler.yaml
    
  2. لنشر القالب في حساب Prowler. عيّن MultiAccountScan إلى true لفحص جميع الحسابات في مؤسستك.

    root@kitploit:~
    aws cloudformation deploy --template-file 2-sat2-codebuild-prowler.yaml \
    --stack-name sat2-prowler \
    --capabilities CAPABILITY_NAMED_IAM \
    --parameter-overrides MultiAccountScan=true
    

وحدة تحكم AWS

عرض الخطوات

الخطوة 1: نشر الدور المسبق

  1. قم بتنزيل ملفي 1-sat2-member-roles.yaml و 2-sat2-codebuild-prowler.yaml.

  2. انشر قالب CloudFormation عبر CloudFormation StackSets. قم بتحديث المعاملات التالية:

    • استبدل <aws-account-id> بمعرف الحساب الذي ستقوم بتشغيل Prowler منه.
    • استبدل <region> بالمنطقة التي تريد نشر القالب فيها.
  3. انتقل إلى وحدة تحكم AWS CloudFormation.

  4. في جزء التنقل، اختر StackSets.

  5. اختر Create StackSet.

  6. بالنسبة للأذونات، اترك Service-managed permissions محددًا.

  7. ضمن Specify template، حدد Upload a template file.

  8. اختر 1-sat2-member-roles.yaml الذي قمت بتنزيله في الخطوة 1-1.

  9. اختر Next.

  10. بالنسبة لـ Stack name، أدخل sat2-member-role.

  11. للمعاملات، أدخل ما يلي:

    • ProwlerAccountID - معرف الحساب الذي ستقوم بتشغيل Prowler منه.
  12. اختر Next.

  13. في صفحة Configure StackSet options، اختر Next.

  14. في صفحة Set deployment options، أدخل ما يلي:

    1. بالنسبة لـ Deployment targets اترك Deploy to organization محددًا.
    2. بالنسبة لـ Specify regions، اختر us-east-1.
    3. بالنسبة لـ Region Concurrency، اختر Parallel.
  15. اختر Next.

  16. في صفحة Review، حدد المربع I acknowledge that AWS CloudFormation might create IAM resources. واختر Submit.

الخطوة 2: تمكين المسؤول المفوض لـ AWS Organizations

حدد ما إذا كان لديك مسؤول مفوض أو سياسة موارد موجودة بالفعل للحساب الذي ترغب في نشر Prowler فيه. يوصى بتشغيل Prowler من حساب أدوات الأمان (التدقيق) الخاص بك. لتحديث أو التحقق من أن حساب التدقيق لديه أذونات ListAccounts، اتبع هذه الخطوات.

  1. انتقل إلى وحدة تحكم AWS Organizations.

  2. في جزء التنقل، اختر Settings.

  3. بالنسبة لـ Delegated administrator for AWS Organizations، قم بتضمين البيان التالي.

    root@kitploit:~
    {
        "Version": "2012-10-17",
        "Statement": [
        {
            "Sid": "Statement",
            "Effect": "Allow",
            "Principal": {
            "AWS": "arn:aws:iam::<aws-account-id>:root"
            },
            "Action": [
                    "organizations:ListAccounts",
                    "organizations:DescribeAccount",
                    "organizations:ListTagsForResource"
                ],
            "Resource": "*"
        }
        ]
    }
    ```#### الخطوة 3: نشر حل SATv2
    
    
  4. انتقل إلى وحدة تحكم AWS CloudFormation في الحساب الذي ستشغّل الأداة منه (ProwlerAccountID).

  5. في جزء التنقل، اختر Stacks.

  6. اختر Create stack.

  7. ضمن Specify template، حدد Upload a template file.

  8. اختر 2-sat2-codebuild-prowler.yaml الذي نزّلته في الخطوة 1-1.

  9. اختر Next.

  10. بالنسبة لـ Stack name، أدخل sat2-prowler.

  11. في قسم Parameters، بالنسبة لـ MultiAccountScan، حدد true.

  12. يمكنك اختياريًا تفعيل إعداد التقارير للحصول على ملخص لجميع الحسابات في ملف csv واحد. بالنسبة لـ Reporting، حدد true.

  13. اختر Next.

  14. في صفحة Configure stack options، اختر Next.

  15. في صفحة Review SAS، حدد المربع I acknowledge that AWS CloudFormation might create IAM resources. واختر Submit.

مراجعة النتائج

بعد نشر الحل، تبدأ وظيفة Lambda مشروع CodeBuild. بعد انتهاء بناء مشروع CodeBuild، سيتم رفع نتائج Prowler إلى حاوية Amazon S3 المنشأة. إذا قمت بتكوين الإشعارات، ستتلقى بريدًا إلكترونيًا عند اكتمال فحص Prowler. إذا قمت بتكوين إعداد التقارير، سيكون لديك ملف csv موحد في مجلد /reports.

إذا لم تقم بتكوين تنبيهات البريد الإلكتروني، يمكنك متابعة التقدم من وحدة تحكم CodeBuild.

لمراجعة النتائج، اتبع الخطوات التالية.

  1. انتقل إلى وحدة تحكم Amazon S3 في الحساب الذي نشرت فيه Prowler.

  2. حدد الحاوية التي تبدأ بـ sat2-prowler-prowlerfindingsbucket-

  3. اختر المجلد الذي يحمل تاريخ ووقت الفحص.

  4. لكل حساب، سيكون هناك 4 أنواع من الملفات (csv, html, json, json-ocsf) بالتنسيق prowler-output-<aws-account-id>-<datetime>.

  5. حدد أحد كائنات html.

  6. اختر Open.

    Prowler Output

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

    Prowler findings

لوحة معلومات SATv2 (موصى بها)

إذا قمت بتفعيل إعداد التقارير، سيكون هناك لوحة معلومات html ثابتة في مجلد التقارير.

  1. حدد الكائن satv2-dashboard.html، ثم اختر Open.
  2. حدد ملف csv الموحد، ثم اختر Actions، ثم Share with a presigned URL.

    ملاحظة: لا تشارك رابط presigned URL الخاص بك مع أي شخص. يستخدم رابط presigned URL بيانات اعتماد أمنية لمنح إذن محدود الوقت لتنزيل الكائنات. يمكن إدخال الرابط في متصفح أو استخدامه بواسطة برنامج لتنزيل الكائن. بيانات الاعتماد المستخدمة بواسطة رابط presigned URL هي تلك الخاصة بمستخدم AWS الذي أنشأ الرابط. لمزيد من المعلومات، راجع مشاركة الكائنات باستخدام روابط presigned URL.

  3. بالنسبة لـ number of minutes، أدخل 1.
  4. الصق الرابط في صفحة satv2-dashboard.html.
  5. راجع مثال لمخرجات لوحة المعلومات في img/satv2-dashboard.png

لوحة معلومات Prowler

يحتوي Prowler على لوحة معلومات مدمجة لمراجعة النتائج. لاستخدام لوحة معلومات Prowler، يجب تثبيت Prowler محليًا وتنزيل نتائج Prowler محليًا.

يجب أن يكون لديك واجهة سطر الأوامر (AWS CLI) وبيانات اعتماد صالحة. لمزيد من المعلومات، راجع دليل مستخدم واجهة سطر الأوامر AWS.

  1. تثبيت Prowler. لمزيد من المعلومات، راجع تعليمات تثبيت Prowler.

    root@kitploit:~
    pip install prowler
    
  2. احصل على اسم حاوية Amazon S3. اسم الحاوية موجود في وحدة تحكم CloudFormation كمورد ProwlerFindingsBucket. بدلاً من ذلك، انتقل إلى وحدة تحكم S3 وابحث عن حاوية بالتنسيق {stack_name}-prowlerfindingsbucket-{ID}

  3. قم بتنزيل ملفات CSV وبيانات الامتثال من S3. إذا لم تقم بتشغيل فحص كامل، قد لا تكون لديك بيانات امتثال. استبدل {bucket_name} باسم حاويتك.

    root@kitploit:~
    aws s3 sync s3://{bucket_name}/compliance/ output/compliance/
    aws s3 sync s3://{bucket_name}/csv/ output/
    
  4. شغّل لوحة المعلومات. استخدم الأمر التالي لتشغيل لوحة المعلومات. بشكل افتراضي، ستبدأ على http://127.0.0.1:11666/.

    root@kitploit:~
    prowler dashboard
    

أنواع الفحص

افتراضيًا، يشغّل SAT2 فحصًا أساسيًا يتضمن 13 فحصًا. يمكنك اختيار تشغيل فحص وسيط أو كامل عن طريق اختيار قيمة مختلفة لمعامل ProwlerScanType.

على سبيل المثال، فحص حساب واحد باستخدام خيار الفحص الوسيط سيستخدم هذا الأمر:```bash aws cloudformation deploy --template-file 2-sat2-codebuild-prowler.yaml
--stack-name sat2-prowler
--capabilities CAPABILITY_NAMED_IAM
--parameter-overrides ProwlerScanType=Intermediate

root@kitploit:~
تتم إضافة الفحوصات بشكل متكرر، لعرض أحدث الفحوصات، قم بتشغيل الأمر `prowler aws --list-checks`. تم تقديم مثال أدناه لكل مستوى فحص.

### الفحص الأساسي
لعرض قائمة الفحوصات، راجع [الفحوصات الأساسية](https://github.com/awslabs/aws-security-assessment-solution/blob/main/checks/basic_checks.txt).

- فحص يدوي - الحفاظ على تفاصيل الاتصال الحالية.
- العثور على بيئات تشغيل Lambda القديمة.
- تأكد من تمكين CloudTrail في جميع المناطق
- تأكد من تمكين AWS Config في جميع المناطق.
- تأكد من عدم وجود مجموعات أمان تسمح بالدخول من 0.0.0.0/0 أو ::/0 إلى أي منفذ.
- تحقق مما إذا كان GuardDuty ممكّنًا
- تأكد من أن سياسة كلمة مرور IAM تتطلب حرفًا صغيرًا واحدًا على الأقل
- تأكد من أن سياسة كلمة مرور IAM تتطلب رقمًا واحدًا على الأقل
- تأكد من أن سياسة كلمة مرور IAM تتطلب رمزًا واحدًا على الأقل
- تأكد من أن سياسة كلمة مرور IAM تتطلب حرفًا كبيرًا واحدًا على الأقل
- تأكد من تمكين المصادقة متعددة العوامل (MFA) لحساب الجذر
- تأكد من تدوير مفاتيح الوصول كل 90 يومًا أو أقل
- تأكد من عدم وجود حاويات S3 مفتوحة للجميع أو لأي مستخدم AWS.

### الفحص المتوسط
لعرض قائمة الفحوصات، راجع [الفحوصات المتوسطة](https://github.com/awslabs/aws-security-assessment-solution/blob/main/checks/intermediate_checks.txt).

سيضيف هذا الفحص `--severity critical high` إلى خيارات فحص Prowler. عند تحديد هذا الخيار، سيقوم Prowler بتشغيل جميع فحوصات الأمان التي تؤدي إلى شدة حرجة أو عالية.

### الفحص الكامل
لعرض قائمة الفحوصات، راجع [الفحوصات الكاملة](https://github.com/awslabs/aws-security-assessment-solution/blob/main/checks/full_checks.txt).

لا يضيف هذا الخيار أي معاملات إضافية إلى فحص Prowler. سينتج عن ذلك تشغيل Prowler لأكثر من 500 فحص.

يمكنك أيضًا استخدام الفحص الكامل لتخصيص الفحص كما تريد.

بالنسبة لـ **ProwlerScanType** اختر **Full**.

بالنسبة لـ **ProwlerOptions**، ألحق الفحص. على سبيل المثال، للتحقق فقط مما إذا كان GuardDuty ممكّنًا، أدخل:

`aws --ignore-exit-code-3 -c guardduty_is_enabled`

## الإشعارات

يمكنك اختياريًا تحديد عنوان بريد إلكتروني في معامل EmailAddress عند نشر قالب CloudFormation. سيؤدي ذلك إلى إنشاء موضوع SNS وإرسال بريد إلكتروني عند اكتمال مهمة CodeBuild.

قد يكون هذا مفيدًا عند تشغيل فحوصات أطول، أو عبر العديد من الحسابات.

على سبيل المثال، فحص حساب واحد مع إشعارات البريد الإلكتروني سيستخدم هذا الأمر:```bash
aws cloudformation deploy --template-file 2-sat2-codebuild-prowler.yaml \
--stack-name sat2-prowler \
--capabilities CAPABILITY_NAMED_IAM \
--parameter-overrides [email protected]

مع أو بدون تعيين معلمة EmailAddress الاختيارية، يمكنك عرض التقدم في وحدة تحكم CodeBuild.

  1. انتقل إلى وحدة تحكم CodeBuild.
  2. في جزء التنقل، ضمن Build، اختر Build projects.
  3. اختر مشروع Build الذي يبدأ بـ ProwlerCodeBuild-.
  4. ضمن سجل Build، سترى آخر تشغيل. مشروع CodeBuild
  5. اختياريًا، يمكنك اختيار Start build لتشغيل فحص آخر بالخيارات التي اخترتها عند نشر الحل.

ملخص التقارير

يمكنك تمكين التقارير اختياريًا لتلخيص ملفات csv المتعددة لفحص Prowler في ملف واحد. قد يكون هذا مفيدًا عند تشغيل Prowler عبر حسابات متعددة في AWS Organization. ميزة ملخص التقارير معطلة افتراضيًا. لتمكين التقارير، قم بتعيين معلمة Reporting إلى true عند نشر قالب CloudFormation. سيؤدي ذلك إلى إنشاء مجموعة عمل Athena وجدول Glue، وتشغيل استعلام تلقائيًا لتوحيد النتائج. يقع ملف csv الملخص في نفس حاوية S3 لنتائج Prowler داخل مجلد /reports.

إذا قمت بتحديد عنوان بريد إلكتروني أثناء تمكين التقارير، فستتلقى بريدًا إلكترونيًا ثانيًا عند انتهاء استعلام Athena.

على سبيل المثال، فحص متعدد الحسابات مع تمكين التقارير والتنبيهات البريدية سيستخدم هذا الأمر:```bash aws cloudformation deploy --template-file 2-sat2-codebuild-prowler.yaml
--stack-name sat2-prowler
--capabilities CAPABILITY_NAMED_IAM
--parameter-overrides MultiAccountScan=true Reporting=true EmailAddress=[email protected]

root@kitploit:~
![رسم تخطيطي لبنية الإبلاغ](https://assets.kitploit.com/production/public/readmes/5740/dec216293979361dd2f4945bdd6b8bfda3622096d3ceebefe140a62c6806e336.png)

يتم إنشاء استعلام محفوظ كمثال. يحسب هذا الاستعلام عمليات التحقق التي فشلت عبر جميع الحسابات التي تم تقييمها. لمراجعة الاستعلام وتنفيذه، اتبع الخطوات التالية:

1. انتقل إلى وحدة تحكم Amazon Athena.
2. اختر مجموعة العمل التي تبدأ بـ sat2-prowler-*.
3. اختر علامة التبويب **الاستعلامات المحفوظة**.
4. حدد الاستعلام الذي تريد تشغيله باختيار **المعرّف**.

    ![استعلام Athena محفوظ](https://assets.kitploit.com/production/public/readmes/5740/1fb2b968b921f29ad790143986537266ea02ce42b454d997aa0f42171937b08f.png)

5. اختر **تشغيل** لتشغيل الاستعلام.

    ![نتائج استعلام Athena المحفوظ](https://assets.kitploit.com/production/public/readmes/5740/e8f75e80b66ffec78796072e0f6a85f9b7f5716b21f24a21d3a568c0c8bdbb5b.png)

## الأسئلة الشائعة (FAQ)

1.	هل هناك تكلفة؟
    + تم تصميم هذا الحل ليعمل ضمن [المستوى المجاني لـ AWS](https://aws.amazon.com/free/?all-free-tier.sort-by=item.additionalFields.SortRank&all-free-tier.sort-order=asc&awsf.Free%20Tier%20Types=*all&awsf.Free%20Tier%20Categories=*all).
    + بالنسبة لـ [Amazon CodeBuild](https://aws.amazon.com/free/devops/?p=ft&z=subnav&loc=3)، يحصل العملاء على 100 دقيقة بناء شهريًا.
    + بالنسبة للعملاء الذين تجاوزوا بالفعل المستوى المجاني مع CodeBuild وS3 وLambda، تبلغ تكلفة هذا الحل أقل من دولار واحد للتشغيل.
2.	هل هذه أداة مراقبة وإبلاغ مستمرة؟
     + لا. هذا تقييم لمرة واحدة، نوصي العملاء باستخدام [AWS Security Hub](https://aws.amazon.com/security-hub/) للتقييمات المستمرة.
3.	هل يتكامل هذا مع GuardDuty أو Security Hub أو CloudWatch أو غيرها؟
    + لا. يمكنك اتباع الإرشادات الواردة في [هذه المدونة](https://aws.amazon.com/blogs/security/use-aws-fargate-prowler-send-security-configuration-findings-about-aws-services-security-hub/) لدمج Prowler مع Security Hub.
4.	كيف يمكنني معالجة المشكلات الموجودة في التقارير؟
    + بشكل عام، يجب وصف المشكلات في التقرير مع تصحيحات يمكن التعرف عليها بسهولة. يرجى متابعة الوثائق العامة لكل أداة (Prowler) أيضًا. إذا كان ذلك غير كافٍ، يرجى التواصل مع فريق حساب AWS الخاص بك أو [دعم AWS](https://aws.amazon.com/contact-us/) لمساعدتك في فهم التقارير والعمل نحو معالجة المشكلات.
5.  ما هي النتائج التي يبلغ بها Prowler عن SATv2؟
    | الفحص                                                                             | التخفيف                                                                                                                                                                                                                              |
    | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
    | التحقق مما إذا كانت عمليات استدعاء API لوظائف Lambda يتم تسجيلها بواسطة CloudTrail. | CloudTrail هو تكوين على مستوى حساب AWS. يجب تمكين CloudTrail بشكل مستقل عن SATv2.                                                                                                                                    |
    | تمكين حماية الإنهاء لمكدسات CloudFormation                           | يُقصد من SATv2 أن يتم تشغيله لنقطة زمنية ثم حذفه. إذا تم إنهاء المكدس، تظل النتائج محفوظة في حاوية S3.                                                                                        |
    | التحقق مما إذا كانت مجموعات سجلات CloudWatch محمية بواسطة AWS KMS.                          | يتم دائمًا تشفير بيانات مجموعة السجلات في CloudWatch Logs. افتراضيًا، تستخدم CloudWatch Logs التشفير من جانب الخادم للبيانات المسجلة في حالة الثبات. لم يتم تكوين مفتاح KMS المُدار من قبل العميل لتوفير التكاليف.                                   |
    | التحقق مما إذا كانت مجموعات سجلات CloudWatch لديها سياسة احتفاظ بعدد أيام محدد.          | تم تعيين الاحتفاظ بمجموعة السجلات إلى 7 أيام حسب التصميم. يبحث هذا الفحص عن مجموعات سجلات ذات احتفاظ أقل من عام.                                                                                                                        |
    | التحقق مما إذا كانت حاويات S3 قد تم تمكين تشفير KMS عليها.                                  | جميع حاويات Amazon S3 لديها تشفير تم تكوينه افتراضيًا، ويتم تشفير الكائنات تلقائيًا باستخدام التشفير من جانب الخادم مع مفاتيح مُدارة من Amazon S3 (SSE-S3). لم يتم تكوين مفتاح KMS المُدار من قبل العميل لتوفير التكاليف. |
    | التحقق مما إذا كان حذف MFA لحاوية S3 غير ممكّن.                                     | يمكن إعادة إنشاء نتائج تقييم Prowler ولا تتطلب حذف MFA.                                                                                                                                                            |
    | التحقق مما إذا كانت حاويات S3 قد تم تمكين قفل الكائن عليها                                      | يمكن إعادة إنشاء نتائج تقييم Prowler ولا تتطلب قفل كائن S3.                                                                                                                                                        |
    | التحقق مما إذا كانت حاويات S3 قد تم تمكين تسجيل وصول الخادم عليها                            | لا تتطلب نتائج تقييم Prowler تسجيل وصول الخادم.                                                                                                                                                                        |

## التنظيف
بعد تشغيل الحل، يجب عليك حذف مكدسات CloudFormation لإزالة الموارد التي لم تعد هناك حاجة إليها. ستبقى حاوية S3 التي تحتوي على نتائج فحص Prowler.

لإزالة حل تقييم الأمان من حسابك، اتبع الخطوات التالية.

1. انتقل إلى [وحدة تحكم AWS CloudFormation](https://console.aws.amazon.com/cloudformation) في الحساب الذي قمت بتشغيل الأداة منه (ProwlerAccountID).

2. في جزء التنقل، اختر **المكدسات**.

3. اختر مكدس **sat2-prowler**.

4. اختر **حذف**.

إذا قمت بنشر مجموعة مكدسات دور العضو لفحص حسابات متعددة، اتبع الخطوات التالية.

1. انتقل إلى [وحدة تحكم AWS CloudFormation](https://console.aws.amazon.com/cloudformation) في الحساب الذي أنشأت فيه مجموعة مكدسات دور العضو.

2. في جزء التنقل، اختر **مجموعات المكدسات**.

3. اختر مجموعة مكدسات **sat2-member-roles**.

4. اختر **إجراءات**، ثم **حذف المكدسات من مجموعة المكدسات**.

5. حدد نفس **معرّف OU الخاص بـ AWS** عند إنشاء مجموعة المكدسات.

6. بالنسبة لـ **تحديد المناطق**، اختر **إضافة جميع المناطق**.

7. اختر **التالي**، ثم **إرسال**.

بعد اكتمال التغيير، يمكنك حذف مجموعة المكدسات.

1. اختر مجموعة مكدسات **sat2-member-roles**.

2. اختر **إجراءات**، ثم **حذف مجموعة المكدسات**.

إذا كنت ترغب في إزالة حاوية Amazon S3 التي تحتوي على نتائج الفحص، اتبع الخطوات الواردة في [دليل مستخدم Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/delete-bucket.html) لحذف الكائنات والحاوية. إذا قمت بتشغيل الحل مرة أخرى، فسيتم إنشاء حاوية S3 جديدة لنتائجك.

## الأمان

راجع [المساهمة](https://github.com/awslabs/aws-security-assessment-solution/blob/main/CONTRIBUTING.md#security-issue-notifications) لمزيد من المعلومات.

## الترخيص

هذا المشروع مرخص بموجب ترخيص Apache-2.0.
تنزيل الأداة