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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/aws-samples/drs-malware-scan
ماسحات الثغرات الأمنيةتحليل البرمجيات الخبيثةأمن السحابةاستخبارات التهديداتالاستجابة للحوادث
GitHubaws-samples/drs-malware-scan

drs-malware-scan

قم بإجراء فحص للبرامج الضارة قائم على الملفات على خوادمك المحلية باستخدام AWS

عرض المستودع
14225منذ 2 سنواتلم تتم المراجعة بعد
الموقع الإلكتروني

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة

تحليل فحص البرامج الضارة للخوادم المحلية باستخدام خدمات AWS

التحديات في اكتشاف البرامج الضارة في البيئة المحلية

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

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

كيفية استخدام خدمات AWS لمعالجة هذه التحديات

يستفيد الحل من AWS Elastic Disaster Recovery (AWS DRS) و Amazon GuardDuty و AWS Security Hub لمعالجة تحديات اكتشاف البرامج الضارة للخوادم المحلية.

توفر هذه المجموعة من الخدمات طريقة فعالة من حيث التكلفة لمراقبة الخوادم المحلية باستمرار بحثاً عن البرامج الضارة دون التأثير على الأداء. كما تساعد في تحديد نقاط الاستعادة الآمنة في الوقت المناسب للنسخ الاحتياطية للاستعادة من خلال تحديد الجدول الزمني للاختراقات عبر تحليلات التهديدات المركزية.

  • AWS Elastic Disaster Recovery (AWS DRS) يقلل من وقت التوقف وفقدان البيانات من خلال استعادة سريعة وموثوقة للتطبيقات المحلية والسحابية باستخدام تخزين ميسور التكلفة وحوسبة صغيرة واستعادة نقطة زمنية.

  • Amazon GuardDuty هي خدمة كشف التهديدات التي تراقب حسابات وأعباء العمل في AWS باستمرار بحثاً عن الأنشطة الضارة وتقدم نتائج أمنية مفصلة للرؤية والعلاج.

  • AWS Security Hub هي خدمة إدارة وضع الأمان السحابي (CSPM) التي تجري فحوصات أفضل الممارسات الأمنية، وتجمع التنبيهات، وتتيح العلاج الآلي.

الهندسة المعمارية

sample

وصف الحل

يفترض حل فحص البرامج الضارة أن الخوادم المحلية يتم بالفعل نسخها باستخدام AWS DRS، وأن Amazon GuardDuty و AWS Security Hub مفعلان. ستنشر حزمة CDK في هذا المستودع فقط المربعات الموسومة بـ DRS Malware Scan في مخطط الهندسة المعمارية.

  1. يقوم AWS DRS بنسخ الخوادم المصدر من البيئة المحلية إلى AWS (أو من أي مزود سحابي لهذه المسألة). لمزيد من التفاصيل حول إعداد AWS DRS، يرجى اتباع دليل البدء السريع.
  2. Amazon GuardDuty مفعل بالفعل.
  3. AWS Security Hub مفعل بالفعل.
  4. يتم تشغيل حل فحص البرامج الضارة بواسطة قاعدة مجدولة في Amazon EventBridge (بادئة DrsMalwareScanStack-ScheduleScanRule). يمكنك ضبط تردد الفحص حسب الحاجة (مثل مرة في اليوم، أسبوع، إلخ).
  5. تقوم القاعدة المجدولة في Amazon EventBridge بتشغيل دالة Lambda Submit Orders (بادئة DrsMalwareScanStack-SubmitOrders) التي تجمع الخوادم المصدر المراد فحصها من جدول DynamoDB Source Servers.
  6. توضع الطلبات في قائمة انتظار SQS FIFO المسماة Scan Orders (بادئة DrsMalwareScanStack-ScanOrdersfifo). تُستخدم قائمة الانتظار لتسلسل طلبات الفحص المرتبطة بنفس مثيل DRS، مما يمنع حالة السباق.
  7. تلتقط دالة Lambda Process Order طلب فحص برامج ضارة من قائمة الانتظار وتثريه، مما يُعد عملية فحص البرامج الضارة القادمة. على سبيل المثال، تُدخل معرف مثيل DRS المنسوخ المرتبط بالخادم المصدر DRS المقدم في الطلب. مخرجات Process Order هي أوامر فحص برامج ضارة تحتوي على جميع المعلومات اللازمة لاستدعاء فحص برامج GuardDuty الضارة.
  8. تُتتبع عمليات فحص البرامج الضارة باستخدام جدول DRSVolumeAnnotationsDDBTable على مستوى الحجم، مما يوفر قدرات إعداد التقارير.
  9. تُدرج أوامر فحص البرامج الضارة في قائمة انتظار SQS FIFO Scan Commands (بادئة DrsMalwareScanStack-ScanCommandsfifo) لزيادة المرونة.
  10. تُرسل دالة Process Commands أوامر الفحص في قائمة الانتظار بمعدل أقصى أمر واحد في الثانية لتجنب الاختناق في واجهة API. تُشغل وظيفة فحص البرامج الضارة عند الطلب المقدمة من Amazon GuardDuty.
  11. يمكن مراقبة تنفيذ مهمة Amazon GuardDuty للبرامج الضارة عند الطلب من خدمة Amazon GuardDuty.
  12. يتم توجيه نتيجة مهمة فحص البرامج الضارة إلى سجلات Amazon CloudWatch.
  13. تتلقى دالة Lambda Subscription Filter نتيجة الفحص وتتتبع النتيجة باستخدام DynamoDB (الخطوة رقم 14).
  14. يتتبع جدول DynamoDB DRS Instance Annotations حالة مهمة فحص البرامج الضارة على مستوى المثيل.
  15. تنشر حزمة CDK المسماة ScanReportStack دالة Lambda Scan Report (بادئة ScanReportStack-ScanReport) لملء دلو Amazon S3 بالبادئة scanreportstack-scanreportbucket.
  16. يجمع AWS Security Hub النتائج ويربطها من Amazon GuardDuty.
  17. يتم التقاط حدث نتيجة Security Hub بواسطة قاعدة EventBridge (بادئة DrsMalwareScanStack-SecurityHubAnnotationsRule).
  18. تولد دالة Lambda Security Hub Annotations (بادئة DrsMalwareScanStack-SecurityHubAnnotation) ملاحظات إضافية (تعليقات توضيحية) للنتيجة مع معلومات سياقية حول الخادم المصدر المتأثر. يمكن رؤية هذه المعلومات الإضافية في قسم الملاحظات داخل نتيجة Security Hub.
  19. ستعتمد الأنشطة المتابعة على عملية الاستجابة للحوادث المعتمدة. على سبيل المثال، بناءً على تاريخ الإصابة، يمكن استخدام AWS DRS لإجراء استعادة نقطة زمنية باستخدام لقطة قبل تاريخ الإصابة بالبرامج الضارة.
  20. في سيناريو متعدد الحسابات، يمكن نشر هذا الحل مباشرة على حساب AWS الذي يستضيف حل AWS DRS. سيتم إرسال نتائج Amazon GuardDuty تلقائياً إلى حساب الأمان المركزي.

الاستخدام

المتطلبات الأساسية

  • حساب AWS.

  • تم تكوين Amazon Elastic Disaster Recovery (DRS) مع وجود خادم مصدر واحد على الأقل في حالة مزامنة. إذا لم يكن الأمر كذلك، فيرجى مراجعة هذه الوثائق. يجب أن يأخذ تكوين النسخ المتماثل في الاعتبار تشفير EBS باستخدام مفتاح مُدار مخصص (CMK) من AWS Key Management Service (AWS KMS). لا يدعم Amazon GuardDuty Malware Protection مفتاح AWS المُدار الافتراضي لـ EBS.

  • صلاحيات IAM لنشر مكونات هذا الحل.

  • تفعيل Amazon GuardDuty. إذا لم يكن الأمر كذلك، فيرجى مراجعة هذه الوثائق.

  • تفعيل Amazon Security Hub. إذا لم يكن الأمر كذلك، فيرجى مراجعة هذه الوثائق.

    تحذير
    حالياً، لا يدعم فحص برامج Amazon GuardDuty الضارة أحجام EBS المشفرة بمفاتيح مُدارة بواسطة EBS. إذا كنت ترغب في استخدام هذا الحل لفحص خوادمك المحلية (أو من سحابة أخرى) المنسوخة باستخدام DRS، فأنت بحاجة إلى إعداد نسخ DRS باستخدام مفتاح التشفير الخاص بك في KMS. إذا كنت تستخدم حالياً مفاتيح مُدارة بواسطة EBS مع خوادمك المنسوخة، يمكنك تغيير إعدادات التشفير لاستخدام مفتاح KMS الخاص بك في وحدة تحكم DRS.

النشر

  1. أنشئ بيئة Cloud9 مع صورة Ubuntu (على الأقل t3.small للحصول على أداء أفضل) في حساب AWS الخاص بك. افتح بيئة Cloud9 الخاصة بك وانسخ الكود في هذا المستودع. ملاحظة: Amazon Linux 2 لديه node v16 الذي لم يعد مدعوماً منذ 2023-09-11.

    root@kitploit:~
    git clone https://github.com/aws-samples/drs-malware-scan
    
    root@kitploit:~
    cd drs-malware-scan
    
    root@kitploit:~
    sh check_loggroup.sh
    
  2. انشر حزمة CDK عن طريق تشغيل الأمر التالي في محطة Cloud9 وتأكيد النشر.

    root@kitploit:~
    npm install
    
    root@kitploit:~
    cdk bootstrap
    
    root@kitploit:~
    cdk deploy --all
    

    ملاحظة
    يتكون الحل من 2 حزم:

    • DrsMalwareScanStack: ينشر جميع الموارد اللازمة لميزة فحص البرامج الضارة. هذه الحزمة إلزامية. إذا كنت ترغب في نشر هذه الحزمة فقط، يمكنك تشغيل cdk deploy DrsMalwareScanStack.
    • ScanReportStack: ينشر الموارد اللازمة لإعداد التقارير (Amazon Lambda و Amazon S3). هذه الحزمة اختيارية. إذا كنت ترغب في نشر هذه الحزمة فقط، يمكنك تشغيل cdk deploy ScanReportStack.

    إذا كنت ترغب في نشر كلتا الحزمتين، يمكنك تشغيل cdk deploy --all.

التهيئة

  1. تأكد من أن الخادم (الخوادم) المصدر لـ DRS تقوم بالنسخ المتماثل باستمرار وفي حالة نسخ متماثل سليمة. هذا مطلوب بسبب قيود في واجهة برمجة تطبيقات GuardDuty: في وقت كتابة هذا التقرير، لا توجد واجهة برمجة تطبيقات AWS عامة لفحص لقطات DRS. الطريقة الوحيدة لإجراء فحص البرامج الضارة على بيانات الخادم (الخوادم) المصدر لـ DRS هي إجراء فحص على خادم (خوادم) النسخ المتماثل (مثيلات Amazon EC2) المُدارة بواسطة AWS DRS. إذا لم يكن النسخ المتماثل قيد التشغيل في حالة سليمة، فقد لا يكتمل فحص البرامج الضارة لـ DRS بنجاح. يجب عليك تأكيد ReadyforRecovery=Ready.

  2. حدد الخوادم المصدر المراد فحصها. من بين جميع الخوادم التي يتم نسخها باستخدام AWS DRS، تحتاج إلى تحديد قائمة الخوادم المرشحة للفحص. من وحدة تحكم AWS DRS، انسخ أسماء الخوادم المصدر التي ترغب في أن يقوم الحل بفحصها والصقها في محرر نصوص. سيتم استخدام هذا في الخطوة التالية.

        sample

  1. قم بتحديث جدول DynamoDB. يتم تخزين قائمة الخوادم المراد فحصها في جدول DynamoDB تم إنشاؤه بواسطة حزمة CDK (بادئة DrsMalwareScanStack-SourceServersDDBTable). يجب عليك إنشاء عناصر DynamoDB لكل خادم مصدر يتم نسخه بواسطة AWS DRS. للقيام بذلك، يرجى الذهاب إلى خدمة Amazon DynamoDB واتباع هذه الخطوات:

        sample

  1. جدولة مهمة فحص البرامج الضارة. يمكنك الذهاب إلى خدمة Amazon Eventbridge وتعديل القاعدة الحالية التي أنشأتها الحزمة. قم بتعديل القاعدة بالبادئة DrsMalwareScanStack-ScheduleScanRule، واضبط تردد فحص تحليل البرامج الضارة. أيضاً هذه القاعدة معطلة افتراضياً، يرجى تمكينها.

        sample

  1. تحقق من أن Amazon GuardDuty قام بتشغيل عملية فحص برامج ضارة لتأكيد أن الحل يعمل كما هو متوقع، يمكنك التحقق في وحدة تحكم Amazon GuardDuty -> Malware scans. بعد بضع ثوانٍ من وقت الجدولة، يجب أن ترى مهمة مع ScanStatus = Running. إذا لم يكن الأمر كذلك، يرجى مراجعة قسم استكشاف الأخطاء وإصلاحها أدناه.

        sample

  1. تحقق من AWS SecurityHub بحثاً عن نتائج محتملة للبرامج الضارة على الخوادم المحلية يتيح لك تكامل Amazon GuardDuty مع Security Hub إرسال النتائج من GuardDuty إلى Security Hub.
    • يعرض Security Hub النتائج فقط، لذلك لن يتم عرض مهام فحص البرامج الضارة ذات ScanResult=Clean في وحدة تحكم Security Hub (فقط تلك ذات ScanResult=Infected).
    • داخل وحدة تحكم AWS Security Hub، يمكنك الانتقال إلى Findings وتطبيق عامل تصفية حسب ProductName=GuardDuty (كما هو موضح في الرسم المتحرك أدناه).
    • يضيف الحل تعليقات توضيحية إلى قسم الملاحظات في النتيجة، مع تمييز اسم الخادم المحلي المصاب.
    • يتكامل Security Hub مع Amazon Eventbridge لتسهيل أتمتة أنشطة الاستجابة والعلاج، مثل إرسال بريد إلكتروني إلى SOC، الإبلاغ عن الحادث في قناة slack، إلخ. يمكنك مراجعة هذا الرابط لمزيد من التفاصيل.

        sample

  1. اختياري: تحقق من ملف تقرير فحص البرامج الضارة على S3. في حال قمت بنشر حزمة ScanReportStack، يمكنك جدولة تشغيل تقرير بوتيرة تناسب احتياجاتك. سيستخرج التقرير محتوى جدول DynamoDB DRSVolumeAnnotationsDDBTable ويكتبه في دلو Amazon S3 الذي أنشأته الحزمة (بادئة scanreportstack-scanreportbucket). يتم استبدال هذا التقرير (ويتراكم) في كل مرة يتم فيها تشغيل القاعدة.

    • قم بتمكين قاعدة Amazon Eventbridge وضبط الجدول الزمني لتشغيل التقرير: قم بتعديل القاعدة بالبادئة ScanReportStack-ScanReportRule، لتعيين تردد فحص تحليل البرامج الضارة وقائمة الخادم (الخوادم) المصدر لـ DRS المراد تحليلها. أيضاً هذه القاعدة معطلة افتراضياً، يرجى تمكينها.

           sample

    • للتحقق من التقرير، يمكنك الاستعلام عن ملف csv في دلو Amazon S3 (بادئة scanreportstack-scanreportbucket)

           sample

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

استكشاف الأخطاء وإصلاحها

تقوم جميع دوال Lambda بتوجيه السجلات إلى Amazon CloudWatch. يمكنك التحقق من تنفيذ كل دالة عن طريق فحص مجموعات السجلات المناسبة في CloudWatch لكل دالة، ابحث عن النمط /aws/lambda/DrsMalwareScanStack-*.

ستعتمد مدة عملية فحص البرامج الضارة على عدد الخوادم/الأحجام المراد فحصها (وحجمها). عندما يجد Amazon GuardDuty برامج ضارة، فإنه ينشئ نتيجة في SecurityHub: يعترض الحل هذا الحدث ويقوم بتشغيل دالة Lambda $StackName-SecurityHubAnnotations لتعزيز نتيجة SecurityHub بملاحظة تحتوي على اسم (أسماء) الخادم (الخوادم) المصدر لـ DRS المصابة بالبرامج الضارة.

يمكن مراقبة قوائم انتظار SQS FIFO باستخدام مقاييس Messages available و Message in flight من وحدة تحكم AWS SQS.

يتتبع جدول DynamoDB لتعليقات حجم DRS حالة كل عملية فحص برامج ضارة.

لدى Amazon GuardDuty أسباب موثقة لتخطي عمليات الفحص. لمزيد من المعلومات، يرجى مراجعة أسباب تخطي المورد أثناء فحص البرامج الضارة.

من أجل تحليل السجلات من عمليات فحص Amazon GuardDuty للبرامج الضارة، يمكنك التحقق من /aws/guardduty/malware-scan-events في مجموعة سجلات Amazon CloudWatch. فترة الاحتفاظ الافتراضية لمجموعة السجلات هذه هي 90 يوماً، وبعد ذلك يتم حذف أحداث السجل تلقائياً.

التنظيف

  1. قم بتشغيل الأوامر التالية في المحطة الطرفية:

    root@kitploit:~
    cdk destroy --all
    
  2. (اختياري) احذف مجموعات سجلات CloudWatch المرتبطة بدوال Lambda.

تحليل تقدير تكلفة AWS

لغرض هذا التحليل، افترضنا سيناريو افتراضياً لاتخاذه كمثال. تستند تقديرات التكلفة التالية إلى الخدمات الموجودة في منطقة شمال فرجينيا (us-east-1).

السيناريو المقدر:

  • 2 خوادم مصدر للنسخ المتماثل (DR) (إجمالي التخزين: 100 جيجابايت - 4 أقراص)
  • 3 تيرابايت فحص برامج ضارة/شهر
  • 30 يوماً من فترة الاحتفاظ بلقطات EBS
  • فحص برامج ضارة يومي
التكلفة الشهريةإجمالي التكلفة لمدة 12 شهراً
171.22 دولاراً أمريكياً2,054.74 دولاراً أمريكياً

تفصيل الخدمات:

اسم الخدمةالوصفالتكلفة الشهرية (دولار أمريكي)
AWS Elastic Disaster Recovery2 خوادم مصدر / 1 خادم نسخ متماثل / 4 أقراص / 100 جيجابايت / 30 يوماً من فترة الاحتفاظ بلقطات EBS71.41
Amazon GuardDuty3 تيرابايت فحص برامج ضارة/شهر94.56
Amazon DynamoDB100 ميجابايت 1 قراءة/ثانية 1 كتابة/ثانية3.65
AWS Security Hub1 حساب / 100 فحص أمان / 1000 نتيجة تم استيعابها0.10
AWS EventBridge1 مليون حدث مخصص1.00
Amazon Cloudwatch1 جيجابايت تم استيعابها/شهر0.50
AWS Lambda5 دوال Lambda ARM - 128 ميجابايت / 10 ثوانٍ0.00
Amazon SQS2 SQS FIFO0.00
الإجمالي171.22

ملاحظة الأرقام المقدمة هنا هي تقديرات تستند إلى الافتراضات المذكورة أعلاه، والمستمدة من حاسبة تسعير AWS. لمزيد من التفاصيل، يرجى مراجعة حاسبة التسعير هذه كمرجع. يمكنك تعديل تكوين الخدمات في الحاسبة المشار إليها لإجراء تقديرك الخاص. هذا التقدير لا يشمل الضرائب المحتملة أو الرسوم الإضافية التي قد تكون قابلة للتطبيق. من المهم تذكر أن الرسوم الفعلية يمكن أن تختلف بناءً على الاستخدام وأي خدمات إضافية غير مشمولة في هذا التحليل. للبيئات الحرجة، يُنصح بتضمين خطة دعم الأعمال (لم تؤخذ في الاعتبار في التقدير)

الأمان

راجع المساهمة لمزيد من المعلومات.

المؤلفون

  • Rodrigo Monge
  • Thierry Francois
  • Diego Pérez Holguín
  • Leandro Santi

الترخيص

هذا الكود النموذجي مرخص بموجب رخصة MIT-0. راجع ملف LICENSE.

تنزيل الأداة