
قم بإجراء فحص للبرامج الضارة قائم على الملفات على خوادمك المحلية باستخدام 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) التي تجري فحوصات أفضل الممارسات الأمنية، وتجمع التنبيهات، وتتيح العلاج الآلي.

يفترض حل فحص البرامج الضارة أن الخوادم المحلية يتم بالفعل نسخها باستخدام AWS DRS، وأن Amazon GuardDuty و AWS Security Hub مفعلان. ستنشر حزمة CDK في هذا المستودع فقط المربعات الموسومة بـ DRS Malware Scan في مخطط الهندسة المعمارية.
حساب 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.
أنشئ بيئة Cloud9 مع صورة Ubuntu (على الأقل t3.small للحصول على أداء أفضل) في حساب AWS الخاص بك. افتح بيئة Cloud9 الخاصة بك وانسخ الكود في هذا المستودع. ملاحظة: Amazon Linux 2 لديه node v16 الذي لم يعد مدعوماً منذ 2023-09-11.
git clone https://github.com/aws-samples/drs-malware-scan
cd drs-malware-scan
sh check_loggroup.sh
انشر حزمة CDK عن طريق تشغيل الأمر التالي في محطة Cloud9 وتأكيد النشر.
npm install
cdk bootstrap
cdk deploy --all
ملاحظة
يتكون الحل من 2 حزم:
cdk deploy DrsMalwareScanStack.cdk deploy ScanReportStack.إذا كنت ترغب في نشر كلتا الحزمتين، يمكنك تشغيل cdk deploy --all.
تأكد من أن الخادم (الخوادم) المصدر لـ DRS تقوم بالنسخ المتماثل باستمرار وفي حالة نسخ متماثل سليمة. هذا مطلوب بسبب قيود في واجهة برمجة تطبيقات GuardDuty: في وقت كتابة هذا التقرير، لا توجد واجهة برمجة تطبيقات AWS عامة لفحص لقطات DRS. الطريقة الوحيدة لإجراء فحص البرامج الضارة على بيانات الخادم (الخوادم) المصدر لـ DRS هي إجراء فحص على خادم (خوادم) النسخ المتماثل (مثيلات Amazon EC2) المُدارة بواسطة AWS DRS. إذا لم يكن النسخ المتماثل قيد التشغيل في حالة سليمة، فقد لا يكتمل فحص البرامج الضارة لـ DRS بنجاح. يجب عليك تأكيد ReadyforRecovery=Ready.
حدد الخوادم المصدر المراد فحصها. من بين جميع الخوادم التي يتم نسخها باستخدام AWS DRS، تحتاج إلى تحديد قائمة الخوادم المرشحة للفحص. من وحدة تحكم AWS DRS، انسخ أسماء الخوادم المصدر التي ترغب في أن يقوم الحل بفحصها والصقها في محرر نصوص. سيتم استخدام هذا في الخطوة التالية.





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


اختياري: لتكوين متعدد الحسابات في حال كان لديك حساب أمان مخصص لمركزية جميع النتائج الأمنية كجزء من استراتيجية متعددة الحسابات، سيعمل هذا الحل أيضاً. يمكن لفريق الأمان إجراء نفس التحليل عبر حساب الأمان، حيث يتم نسخ نتائج 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 يوماً، وبعد ذلك يتم حذف أحداث السجل تلقائياً.
قم بتشغيل الأوامر التالية في المحطة الطرفية:
cdk destroy --all
(اختياري) احذف مجموعات سجلات CloudWatch المرتبطة بدوال Lambda.
لغرض هذا التحليل، افترضنا سيناريو افتراضياً لاتخاذه كمثال. تستند تقديرات التكلفة التالية إلى الخدمات الموجودة في منطقة شمال فرجينيا (us-east-1).
| التكلفة الشهرية | إجمالي التكلفة لمدة 12 شهراً |
|---|---|
| 171.22 دولاراً أمريكياً | 2,054.74 دولاراً أمريكياً |
| اسم الخدمة | الوصف | التكلفة الشهرية (دولار أمريكي) |
|---|---|---|
| AWS Elastic Disaster Recovery | 2 خوادم مصدر / 1 خادم نسخ متماثل / 4 أقراص / 100 جيجابايت / 30 يوماً من فترة الاحتفاظ بلقطات EBS | 71.41 |
| Amazon GuardDuty | 3 تيرابايت فحص برامج ضارة/شهر | 94.56 |
| Amazon DynamoDB | 100 ميجابايت 1 قراءة/ثانية 1 كتابة/ثانية | 3.65 |
| AWS Security Hub | 1 حساب / 100 فحص أمان / 1000 نتيجة تم استيعابها | 0.10 |
| AWS EventBridge | 1 مليون حدث مخصص | 1.00 |
| Amazon Cloudwatch | 1 جيجابايت تم استيعابها/شهر | 0.50 |
| AWS Lambda | 5 دوال Lambda ARM - 128 ميجابايت / 10 ثوانٍ | 0.00 |
| Amazon SQS | 2 SQS FIFO | 0.00 |
| الإجمالي | 171.22 |
ملاحظة الأرقام المقدمة هنا هي تقديرات تستند إلى الافتراضات المذكورة أعلاه، والمستمدة من حاسبة تسعير AWS. لمزيد من التفاصيل، يرجى مراجعة حاسبة التسعير هذه كمرجع. يمكنك تعديل تكوين الخدمات في الحاسبة المشار إليها لإجراء تقديرك الخاص. هذا التقدير لا يشمل الضرائب المحتملة أو الرسوم الإضافية التي قد تكون قابلة للتطبيق. من المهم تذكر أن الرسوم الفعلية يمكن أن تختلف بناءً على الاستخدام وأي خدمات إضافية غير مشمولة في هذا التحليل. للبيئات الحرجة، يُنصح بتضمين خطة دعم الأعمال (لم تؤخذ في الاعتبار في التقدير)
راجع المساهمة لمزيد من المعلومات.
هذا الكود النموذجي مرخص بموجب رخصة MIT-0. راجع ملف LICENSE.