הפעלת זיהוי איומים במכונות וירטואליות ב-AWS

בדף הזה מוסבר איך להגדיר את התכונה 'זיהוי איומים במכונות וירטואליות' ואיך להשתמש בה כדי לסרוק לאיתור תוכנות זדוניות בדיסקים הקבועים של מכונות וירטואליות (VM) ב-Amazon Elastic Compute Cloud ‏(EC2).

כדי להפעיל את התכונה 'זיהוי איומים במכונות וירטואליות' ב-AWS, צריך ליצור תפקיד AWS IAM בפלטפורמת AWS, להפעיל את התכונה 'זיהוי איומים במכונות וירטואליות' ב-AWS ב-Security Command Center, ואז לפרוס תבנית CloudFormation ב-AWS.

לפני שמתחילים

כדי להפעיל את התכונה 'זיהוי איומים במכונות וירטואליות' לשימוש עם AWS, אתם צריכים הרשאות IAM מסוימות, וצריך לקשר את Security Command Center ל-AWS.

תפקידים והרשאות

כדי להשלים את ההגדרה של זיהוי איומים במכונות וירטואליות ב-AWS, צריך לקבל תפקידים עם ההרשאות הנדרשות ב-Google Cloud וב-AWS.

Google Cloud roles

Make sure that you have the following role or roles on the organization: Security Center Admin Editor (roles/securitycenter.adminEditor)

Check for the roles

  1. In the Google Cloud console, go to the IAM page.

    Go to IAM
  2. Select the organization.
  3. In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.

  4. For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.

Grant the roles

  1. In the Google Cloud console, go to the IAM page.

    כניסה לדף IAM
  2. בוחרים את הארגון.
  3. לוחצים על ‎ Grant access.
  4. בשדה New principals, מזינים את מזהה המשתמש. ‫ בדרך כלל מזהה המשתמש הוא כתובת האימייל של חשבון Google.

  5. לוחצים על בחירת תפקיד ומחפשים את התפקיד.
  6. כדי לתת עוד תפקידים, לוחצים על Add another role ומוסיפים את כולם.
  7. לוחצים על Save.
  8. תפקידים ב-AWS

    ב-Amazon Web Services‏ (AWS), משתמש עם הרשאת אדמין ב-AWS צריך ליצור את חשבון AWS שנדרש להפעלת הסריקות. תקצו את התפקיד הזה בהמשך, כשמתקינים את תבנית CloudFormation ב-AWS.

    • כדי ליצור תפקיד לזיהוי איומים במכונות וירטואליות ב-AWS, פועלים לפי השלבים במאמר בנושא יצירת תפקיד לשירות AWS (מסוף).

      שימו לב לנקודות הבאות:

      • בקטע שירות או תרחיש לדוגמה, בוחרים באפשרות lambda.
      • מוסיפים את מדיניות ההרשאות הבאה:
        • AmazonSSMManagedInstanceCore
        • AWSLambdaBasicExecutionRole
        • AWSLambdaVPCAccessExecutionRole
      • שומרים את המדיניות ופותחים אותה מחדש. לוחצים על Add Permission (הוספת הרשאה) > Create Inline policy (יצירת מדיניות מוטמעת).
      • יוצרים מדיניות הרשאות לתפקיד ב-AWS:
        1. פועלים לפי ההוראות לשינוי ולהעתקה של מדיניות ההרשאות: מדיניות תפקידים להערכת נקודות חולשה ב-AWS ולזיהוי איומים ב-VM.
        2. מזינים את המדיניות בעורך ה-JSON ב-AWS.
      • כדי להגדיר יחסי אמון, מוסיפים את רשומת ה-JSON הבאה לכל מערך הצהרות קיים:

        {
          "Version": "2012-10-17",
          "Statement": [
            {
              "Sid": "Statement1 or replace with a unique statementId",
              "Effect": "Allow",
              "Principal": {
                "Service": "cloudformation.amazonaws.com"
              },
              "Action": "sts:AssumeRole"
            }
          ]
        }
        

    אישור ש-Security Command Center מחובר ל-AWS

    כדי להשתמש בתכונה 'זיהוי איומים במכונות וירטואליות', צריך ליצור מחבר AWS, וכך לתת גישה למלאי משאבי AWS שמתוחזק על ידי מאגר משאבי הענן.

    אם עדיין לא נוצר חיבור, תצטרכו להגדיר חיבור כשמפעילים את התכונה 'זיהוי איומים במכונות וירטואליות' ב-AWS.

    כדי להגדיר חיבור, יוצרים מחבר AWS.

    הפעלת זיהוי איומים במכונות וירטואליות ב-AWS ב-Security Command Center

    צריך להפעיל את התכונה 'זיהוי איומים במכונות וירטואליות ב-AWS' Google Cloud ברמת הארגון.

    המסוף

    1. במסוף Google Cloud , נכנסים לדף הפעלת שירות זיהוי איומים במכונות וירטואליות.

      כניסה לדף Service Enablement

    2. בוחרים את הארגון.

    3. לוחצים על הכרטיסייה Amazon Web Services.

    4. בקטע Service Enablement, בשדה Status, בוחרים באפשרות Enable.

    5. בקטע AWS connector (מחבר AWS), מוודאים שהסטטוס הוא AWS Connector added (מחבר AWS נוסף).

      אם הסטטוס הוא לא נוסף מחבר AWS, לוחצים על הוספת מחבר AWS. לפני שעוברים לשלב הבא, צריך להשלים את השלבים במאמר קישור ל-AWS לצורך הגדרה ואיסוף נתונים של משאבים.

    gcloud

    הפקודה gcloud scc manage services update מעדכנת את הסטטוס של שירות או מודול ב-Security Command Center.

    לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:

    • ORGANIZATION_ID: המזהה המספרי של הארגון
    • NEW_STATE: ENABLED כדי להפעיל את התכונה 'זיהוי איומים במכונות וירטואליות' ב-AWS; ‫DISABLED כדי להשבית את התכונה 'זיהוי איומים במכונות וירטואליות' ב-AWS

    מריצים את הפקודה gcloud scc manage services update:

    ‫Linux,‏ macOS או Cloud Shell

    gcloud scc manage services update vm-threat-detection-aws \
        --organization=ORGANIZATION_ID \
        --enablement-state=NEW_STATE

    ‏Windows (PowerShell)

    gcloud scc manage services update vm-threat-detection-aws `
        --organization=ORGANIZATION_ID `
        --enablement-state=NEW_STATE

    Windows‏ (cmd.exe)

    gcloud scc manage services update vm-threat-detection-aws ^
        --organization=ORGANIZATION_ID ^
        --enablement-state=NEW_STATE

    אמורים לקבל תגובה שדומה לזו:

    effectiveEnablementState: ENABLED
    intendedEnablementState: ENABLED
    modules:
      MALWARE_DISK_SCAN_YARA_AWS:
        effectiveEnablementState: ENABLED
        intendedEnablementState: ENABLED
    name: organizations/1234567890/locations/global/securityCenterServices/vm-threat-detection-aws
    updateTime: '2025-03-21T18:45:52.033110465Z'
    

    REST

    השיטה של Security Command Center Management API organizations.locations.securityCenterServices.patch מעדכנת את המצב של שירות או מודול של Security Command Center.

    לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

    • QUOTA_PROJECT: מזהה הפרויקט שישמש לחיוב ולמעקב אחר מכסות
    • ORGANIZATION_ID: המזהה המספרי של הארגון
    • NEW_STATE: ENABLED כדי להפעיל את התכונה 'זיהוי איומים במכונות וירטואליות' ב-AWS; ‫DISABLED כדי להשבית את התכונה 'זיהוי איומים במכונות וירטואליות' ב-AWS

    ה-method של ה-HTTP וכתובת ה-URL:

    PATCH https://securitycentermanagement.googleapis.com/v1/organizations/ORGANIZATION_ID/locations/global/securityCenterServices/vm-threat-detection-aws?updateMask=intendedEnablementState

    תוכן בקשת JSON:

    {
      "intendedEnablementState": "NEW_STATE"
    }
    

    כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

    אתם אמורים לקבל תגובת JSON שדומה לזו:

    {
      "name": "organizations/1234567890/locations/global/securityCenterServices/vm-threat-detection-aws",
      "intendedEnablementState": "ENABLED",
      "effectiveEnablementState": "ENABLED",
      "modules": {
        "MALWARE_DISK_SCAN_YARA_AWS": {
          "intendedEnablementState": "ENABLED",
          "effectiveEnablementState": "ENABLED"
        }
      },
      "updateTime": "2025-03-21T18:45:52.033110465Z"
    }
    

    אם כבר הפעלתם את השירות 'הערכת נקודות חולשה ב-AWS' ופרסתם את תבנית CloudFormation כחלק מהתכונה הזו, סיימתם את ההגדרה של 'זיהוי איומים במכונות וירטואליות ב-AWS'.

    אחרת, צריך לחכות שש שעות ואז לבצע את המשימה הבאה: הורדה של תבנית CloudFormation.

    הורדת תבנית CloudFormation

    מבצעים את המשימה הזו לפחות שש שעות אחרי הפעלת התכונה 'זיהוי איומים במכונות וירטואליות' ב-AWS.

    1. במסוף Google Cloud , נכנסים לדף הפעלת שירות זיהוי איומים במכונות וירטואליות.

      כניסה לדף Service Enablement

    2. בוחרים את הארגון.

    3. לוחצים על הכרטיסייה Amazon Web Services.

    4. בקטע Deploy CloudFormation template (פריסת תבנית CloudFormation), לוחצים על Download CloudFormation template (הורדת תבנית CloudFormation). תבנית JSON תורד לתחנת העבודה שלכם. צריך לפרוס את התבנית בכל חשבון AWS שרוצים לסרוק.

    פריסת תבנית AWS CloudFormation

    פורסים את תבנית CloudFormation לפחות שש שעות אחרי יצירת מחבר AWS.

    מידע מפורט על פריסת תבנית CloudFormation מופיע במאמר יצירת מחסנית ממסוף CloudFormation במסמכי התיעוד של AWS.

    חשוב לזכור את הדברים הבאים: * אחרי העלאת תבנית CloudFormation, צריך להזין שם ייחודי למערך. לא משנים פרמטרים אחרים בתבנית. * באפשרות Permissions (הרשאות) באפשרויות של ה-stack, בוחרים את תפקיד ה-AWS שיצרתם קודם. * אחרי שפורסים את תבנית CloudFormation, לוקח כמה דקות עד שהמערך מתחיל לפעול.

    סטטוס הפריסה מוצג במסוף AWS. אם פריסת תבנית CloudFormation נכשלת, אפשר להיעזר במאמר בנושא פתרון בעיות.

    אחרי שהסריקות מתחילות לפעול, אם מזוהים איומים, הממצאים המתאימים נוצרים ומוצגים בדף Findings ב-Security Command Center במסוף Google Cloud . מידע נוסף זמין במאמר בדיקת הממצאים במסוףGoogle Cloud .

    ניהול מודולים

    בקטע הזה מוסבר איך להפעיל או להשבית מודולים ואיך לראות את ההגדרות שלהם.

    הפעלה או השבתה של מודול

    אחרי שמפעילים או משביתים מודול, יכול להיות שיעברו עד שעה עד שהשינויים ייכנסו לתוקף.

    מידע על כל הממצאים בנושא איומים ב-VM Threat Detection ועל המודולים שמפיקים אותם זמין במאמר ממצאים בנושא איומים.

    המסוף

    אם התכונה 'זיהוי איומים במכונה וירטואלית' עבור AWS מופעלת, אפשר להגדיר את מצב ההפעלה של המודולים הנפרדים שלה ברמת הארגון.

    1. נכנסים לדף Modules במסוף Google Cloud .

      מעבר אל 'מודולים'

    2. בוחרים את הארגון.

    3. בכרטיסייה Modules (מודולים), בעמודה Status (סטטוס), בוחרים את הסטטוס הנוכחי של המודול שרוצים להפעיל או להשבית, ואז בוחרים באחת מהאפשרויות הבאות:

      • הפעלה: הפעלת המודול.
      • השבתה: השבתת המודול.

    gcloud

    הפקודה gcloud scc manage services update מעדכנת את הסטטוס של שירות או מודול ב-Security Command Center.

    לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:

    • RESOURCE_TYPE: סוג המשאב לעדכון (organization,‏ folder או project)
    • RESOURCE_ID: המזהה המספרי של הארגון, התיקייה או הפרויקט שרוצים לעדכן. בפרויקטים אפשר להשתמש גם במזהה הפרויקט האלפאנומרי.
    • MODULE_NAME: השם של המודול שרוצים להפעיל או להשבית. ערכים תקינים מפורטים במאמר בנושא ממצאים של איומים שתומכים ב-AWS
    • NEW_STATE: ENABLED כדי להפעיל את המודול, DISABLED כדי להשבית את המודול או INHERITED כדי להגדיר את סטטוס ההפעלה של משאב האב (תקף רק לפרויקטים ולתיקיות)

    שומרים את התוכן הבא בקובץ בשם request.json:

    {
      "MODULE_NAME": {
        "intendedEnablementState": "NEW_STATE"
      }
    }

    מריצים את הפקודה gcloud scc manage services update:

    ‫Linux,‏ macOS או Cloud Shell

    gcloud scc manage services update vm-threat-detection-aws \
        --RESOURCE_TYPE=RESOURCE_ID \
        --module-config-file=request.json

    ‏Windows (PowerShell)

    gcloud scc manage services update vm-threat-detection-aws `
        --RESOURCE_TYPE=RESOURCE_ID `
        --module-config-file=request.json

    Windows‏ (cmd.exe)

    gcloud scc manage services update vm-threat-detection-aws ^
        --RESOURCE_TYPE=RESOURCE_ID ^
        --module-config-file=request.json

    אמורים לקבל תגובה שדומה לזו:

    effectiveEnablementState: ENABLED
    intendedEnablementState: ENABLED
    modules:
      MALWARE_DISK_SCAN_YARA_AWS:
        effectiveEnablementState: ENABLED
        intendedEnablementState: ENABLED
    name: organizations/1234567890/locations/global/securityCenterServices/vm-threat-detection-aws
    updateTime: '2025-03-21T18:45:52.033110465Z'
    

    REST

    השיטה של Security Command Center Management API RESOURCE_TYPE.locations.securityCenterServices.patch מעדכנת את המצב של שירות או מודול של Security Command Center.

    לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

    • RESOURCE_TYPE: סוג המשאב לעדכון (organizations,‏ folders או projects)
    • QUOTA_PROJECT: מזהה הפרויקט שישמש לחיוב ולמעקב אחר מכסות
    • RESOURCE_ID: המזהה המספרי של הארגון, התיקייה או הפרויקט שרוצים לעדכן. בפרויקטים אפשר להשתמש גם במזהה הפרויקט האלפאנומרי.
    • MODULE_NAME: השם של המודול שרוצים להפעיל או להשבית. ערכים תקינים מפורטים במאמר בנושא ממצאים של איומים שתומכים ב-AWS
    • NEW_STATE: ENABLED כדי להפעיל את המודול, DISABLED כדי להשבית את המודול או INHERITED כדי להגדיר את סטטוס ההפעלה של משאב האב (תקף רק לפרויקטים ולתיקיות)

    ה-method של ה-HTTP וכתובת ה-URL:

    PATCH https://securitycentermanagement.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/securityCenterServices/vm-threat-detection-aws?updateMask=modules

    תוכן בקשת JSON:

    {
      "modules": {
        "MODULE_NAME": {
          "intendedEnablementState": "NEW_STATE"
        }
      }
    }
    

    כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

    אתם אמורים לקבל תגובת JSON שדומה לזו:

    {
      "name": "organizations/1234567890/locations/global/securityCenterServices/vm-threat-detection-aws",
      "intendedEnablementState": "ENABLED",
      "effectiveEnablementState": "ENABLED",
      "modules": {
        "MALWARE_DISK_SCAN_YARA_AWS": {
          "intendedEnablementState": "ENABLED",
          "effectiveEnablementState": "ENABLED"
        }
      },
      "updateTime": "2025-03-21T18:45:52.033110465Z"
    }
    

    הצגת ההגדרות של VM Threat Detection עבור מודולים של AWS

    מידע על כל הממצאים של איומים ב-VM ועל המודולים שיוצרים אותם זמין במאמר ממצאים של איומים.

    המסוף

    Google Cloud במסוף אפשר לראות את ההגדרות של מודולים של זיהוי איומים במכונות וירטואליות ברמת הארגון.

    1. נכנסים לדף Modules במסוף Google Cloud .

      מעבר אל 'מודולים'

    2. בוחרים את הארגון.

    gcloud

    הפקודה gcloud scc manage services describe מחזירה את הסטטוס של שירות או מודול של Security Command Center.

    לפני השימוש בנתוני הפקודה הבאים, צריך להחליף את הנתונים הבאים:

    • ORGANIZATION_ID: המזהה המספרי של הארגון שרוצים לקבל

    מריצים את הפקודה gcloud scc manage services describe:

    ‫Linux,‏ macOS או Cloud Shell

    gcloud scc manage services describe vm-threat-detection-aws \
        --organization=ORGANIZATION_ID

    ‏Windows (PowerShell)

    gcloud scc manage services describe vm-threat-detection-aws `
        --organization=ORGANIZATION_ID

    Windows‏ (cmd.exe)

    gcloud scc manage services describe vm-threat-detection-aws ^
        --organization=ORGANIZATION_ID

    אמורים לקבל תגובה שדומה לזו:

    effectiveEnablementState: ENABLED
    intendedEnablementState: ENABLED
    modules:
      MALWARE_DISK_SCAN_YARA_AWS:
        effectiveEnablementState: ENABLED
        intendedEnablementState: ENABLED
    name: organizations/1234567890/locations/global/securityCenterServices/vm-threat-detection-aws
    updateTime: '2025-03-21T18:45:52.033110465Z'
    

    REST

    ה-method organizations.locations.securityCenterServices.get של Security Command Center Management API מחזירה את הסטטוס של שירות או מודול של Security Command Center.

    לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

    • QUOTA_PROJECT: מזהה הפרויקט שישמש לחיוב ולמעקב אחר מכסות
    • ORGANIZATION_ID: המזהה המספרי של הארגון שרוצים לקבל

    ה-method של ה-HTTP וכתובת ה-URL:

    GET https://securitycentermanagement.googleapis.com/v1/organizations/ORGANIZATION_ID/locations/global/securityCenterServices/vm-threat-detection-aws

    כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

    אתם אמורים לקבל תגובת JSON שדומה לזו:

    {
      "name": "organizations/1234567890/locations/global/securityCenterServices/vm-threat-detection-aws",
      "intendedEnablementState": "ENABLED",
      "effectiveEnablementState": "ENABLED",
      "modules": {
        "MALWARE_DISK_SCAN_YARA_AWS": {
          "intendedEnablementState": "ENABLED",
          "effectiveEnablementState": "ENABLED"
        }
      },
      "updateTime": "2025-03-21T18:45:52.033110465Z"
    }
    

    פתרון בעיות

    אם הפעלתם את שירות זיהוי האיומים במכונה הווירטואלית, אבל הסריקות לא פועלות, כדאי לבדוק את הדברים הבאים:

    • בודקים שהחיבור ל-AWS מוגדר בצורה תקינה.
    • מוודאים שסטאק התבנית של CloudFormation נפרס במלואו. הסטטוס שלו בחשבון AWS צריך להיות CREATION_COMPLETE.

    המאמרים הבאים