איסוף יומנים של AWS Inspector

גרסת כלי הניתוח: 1.0

נתמך ב:

במאמר הזה מוסבר איך להטמיע יומנים של AWS Inspector ב-Google Security Operations באמצעות Amazon S3.

‫Amazon Inspector הוא שירות לניהול נקודות חולשה שמגלה באופן אוטומטי עומסי עבודה וסורק אותם באופן רציף כדי לזהות נקודות חולשה בתוכנה וחשיפה לא מכוונת של הרשת. הוא סורק מכונות Amazon EC2, קובצי אימג' של קונטיינרים ב-Amazon ECR ופונקציות של AWS Lambda, ומפיק ממצאים מפורטים עם ציוני חומרה והמלצות לתיקון. השילוב הזה משתמש בתכונת הייצוא המובנית של ממצאי Amazon Inspector כדי להעביר דוחות ממצאים בפורמט JSON לקטגוריית S3, ש-Google SecOps מעכלת באמצעות פיד Amazon S3 V2.

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

חשוב לוודא שיש לכם את הדברים הבאים:

  • מכונה של Google SecOps
  • גישה עם הרשאות ניהול ל-AWS Management Console עם הרשאות לניהול:
    • ‫Amazon Inspector (ממצאים, דוחות)
    • ‫Amazon S3 (קטגוריות, מדיניות קטגוריות)
    • ‫AWS KMS (כללי מדיניות של מפתחות)
    • ‫AWS IAM (תפקידים, כללי מדיניות, משתמשים)

הגדרת קטגוריית S3 לייצוא של ממצאים מ-Amazon Inspector

‫Amazon Inspector מצפין את דוחות הממצאים באמצעות מפתח AWS KMS לפני שהוא מאחסן אותם בקטגוריית S3. כדי לאפשר ל-Amazon Inspector גישה, צריך להגדיר גם את המדיניות של קטגוריית S3 וגם את המדיניות של מפתח KMS.

יצירה והגדרה של קטגוריית S3

  1. יוצרים קטגוריה ב-Amazon S3 לפי המדריך למשתמש בנושא יצירת קטגוריה.
  2. שומרים את השם והאזור של הקטגוריה לעיון בהמשך (לדוגמה, inspector-findings-to-secops).

  3. בוחרים את הקטגוריה שנוצרה במסוף Amazon S3 בכתובת https://console.aws.amazon.com/s3.

  4. לוחצים על הכרטיסייה הרשאות.

  5. בקטע Bucket policy, לוחצים על Edit.

  6. מוסיפים את ההצהרה הבאה למדיניות הקטגוריה (מחליפים את inspector-findings-to-secops בשם הקטגוריה, את 111122223333 במזהה החשבון ב-AWS ואת us-east-1 באזור ב-AWS):

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "allow-inspector",
                "Effect": "Allow",
                "Principal": {
                    "Service": "inspector2.amazonaws.com"
                },
                "Action": [
                    "s3:PutObject",
                    "s3:PutObjectAcl",
                    "s3:AbortMultipartUpload"
                ],
                "Resource": "arn:aws:s3:::inspector-findings-to-secops/*",
                "Condition": {
                    "StringEquals": {
                        "aws:SourceAccount": "111122223333"
                    },
                    "ArnLike": {
                        "aws:SourceArn": "arn:aws:inspector2:us-east-1:111122223333:report/*"
                    }
                }
            }
        ]
    }
    
  7. לוחצים על שמירת השינויים.

הגדרת מפתח AWS KMS

כדי להצפין דוחות ממצאים, ל-Amazon Inspector נדרש מפתח סימטרי של AWS KMS בניהול הלקוח, באותו אזור שבו נמצאת קטגוריית S3.

  1. פותחים את מסוף AWS KMS בכתובת https://console.aws.amazon.com/kms.
  2. בחלונית הניווט, בוחרים באפשרות מפתחות בניהול הלקוח.
  3. בוחרים את מפתח ה-KMS שרוצים להשתמש בו (או יוצרים מפתח הצפנה סימטרי חדש).
  4. בוחרים בכרטיסייה Key policy ולוחצים על Edit.
  5. מוסיפים את ההצהרה הבאה למדיניות המפתחות (מחליפים את 111122223333 במזהה החשבון ב-AWS ואת us-east-1 באזור ב-AWS):

    {
        "Sid": "Allow Amazon Inspector to use the key",
        "Effect": "Allow",
        "Principal": {
            "Service": "inspector2.amazonaws.com"
        },
        "Action": [
            "kms:Decrypt",
            "kms:GenerateDataKey*"
        ],
        "Resource": "*",
        "Condition": {
            "StringEquals": {
                "aws:SourceAccount": "111122223333"
            },
            "ArnLike": {
                "aws:SourceArn": "arn:aws:inspector2:us-east-1:111122223333:report/*"
            }
        }
    }
    
  6. לוחצים על שמירת השינויים.

ייצוא ממצאים של Amazon Inspector ל-S3

  1. נכנסים למסוף Amazon Inspector בכתובת https://console.aws.amazon.com/inspector/v2/home.
  2. בחלונית הניווט, עוברים אל ממצאים > כל הממצאים.
  3. אופציונלי: משתמשים בסרגל הסינון שמעל לטבלת הממצאים כדי לציין אילו ממצאים לכלול בדוח.

  4. לוחצים על ייצוא הממצאים.

  5. בקטע הגדרות ייצוא, בוחרים באפשרות JSON בשדה סוג קובץ לייצוא.

  6. בקטע Export location (מיקום הייצוא), בשדה S3 URI (מזהה משאב אחיד של S3), לוחצים על Browse S3 (עיון ב-S3) ובוחרים את קטגוריית S3 inspector-findings-to-secops.

  7. בשדה KMS key, בוחרים את מפתח AWS KMS שהגדרתם.

  8. לוחצים על ייצוא.

אוטומציה של ייצוא הממצאים באמצעות AWS CLI

כדי לייצא דוחות של ממצאים על בסיס קבוע, משתמשים בפקודה create-findings-report של AWS CLI. אפשר לתזמן את הפקודה הזו באמצעות Amazon EventBridge Scheduler או משימת cron.

  • פקודה לדוגמה:

    aws inspector2 create-findings-report \
        --report-format JSON \
        --s3-destination bucketName=inspector-findings-to-secops,keyPrefix=findings/,kmsKeyArn=arn:aws:kms:us-east-1:111122223333:key/your-kms-key-id
    

מידע נוסף זמין במאמר בנושא create-findings-report ב-AWS CLI.

הגדרת משתמש IAM ל-Google SecOps

כדי להטמיע את הממצאים המיוצאים, ל-Google SecOps צריך להיות משתמש IAM עם הרשאת קריאה לדלי S3.

  1. יוצרים משתמש לפי המדריך למשתמש: יצירת משתמש IAM.
  2. בוחרים את המשתמש שנוצר.
  3. לוחצים על הכרטיסייה פרטי כניסה לאבטחה.
  4. בקטע מפתחות גישה, לוחצים על יצירת מפתח גישה.
  5. בוחרים באפשרות שירות של צד שלישי בתור תרחיש שימוש.
  6. לוחצים על הבא.
    • אופציונלי: מוסיפים תג תיאור.
  7. לוחצים על Create access key (יצירת מפתח גישה).
  8. לוחצים על הורדת קובץ CSV כדי לשמור את מפתח הגישה ואת מפתח הגישה הסודי לעיון עתידי.
  9. לוחצים על סיום.
  10. לוחצים על הכרטיסייה הרשאות.
  11. בקטע Permissions policies, לוחצים על Add permissions.
  12. לוחצים על הוספת הרשאות.
  13. בוחרים באפשרות צירוף מדיניות ישירות.
  14. מחפשים את המדיניות AmazonS3FullAccess.
  15. בוחרים את המדיניות.
  16. לוחצים על הבא.
  17. לוחצים על הוספת הרשאות.

הגדרת פיד ב-Google SecOps להטמעת יומנים של AWS Inspector

  1. עוברים אל SIEM Settings > Feeds (הגדרות SIEM > פידים).
  2. לוחצים על הוספת פיד חדש.
  3. בדף הבא, לוחצים על הגדרת פיד יחיד.
  4. מזינים שם ייחודי בשם הפיד.
  5. בוחרים באפשרות Amazon S3 V2 בתור סוג המקור.
  6. בוחרים באפשרות AWS Inspector בתור סוג היומן.
  7. לוחצים על הבא ואז על שליחה.
  8. מציינים ערכים בשדות הבאים:

    • S3 URI: s3://inspector-findings-to-secops/findings/
    • אפשרות למחיקת מקור: בוחרים את אפשרות המחיקה לפי ההעדפה שלכם
    • גיל הקובץ המקסימלי: הכללת קבצים ששונו במספר הימים האחרונים (ברירת המחדל היא 180 ימים)
    • מזהה מפתח הגישה: מפתח הגישה של המשתמש עם גישה לקטגוריית S3
    • מפתח גישה סודי: מפתח סודי של משתמש עם גישה לקטגוריית S3
    • מרחב השמות של הנכס: מרחב השמות של הנכס
    • תוויות להוספה: התווית שתתווסף לאירועים מהפיד הזה
  9. לוחצים על הבא ואז על שליחה.

טבלת מיפוי UDM

שדה ביומן מיפוי UDM היגיון
duration_ms_label additional.fields ממוזג
evnt_app_class_label additional.fields ממוזג
evnt_cloud_application_class_label additional.fields ממוזג
evnt_cloud_sandbox_md5_label additional.fields ממוזג
evnt_cloudapp_rule_label additional.fields ממוזג
evnt_content_type_label additional.fields ממוזג
evnt_customer_label additional.fields ממוזג
evnt_department_label additional.fields ממוזג
evnt_location_label additional.fields ממוזג
evnt_lpclagg_label additional.fields ממוזג
evnt_lpcltype_label additional.fields ממוזג
evnt_network_service_label additional.fields ממוזג
evnt_tenant_label additional.fields ממוזג
evnt_url_category_label additional.fields ממוזג
exception_label additional.fields ממוזג
function_label additional.fields ממוזג
id_label additional.fields ממוזג
level_no_label additional.fields ממוזג
line_label additional.fields ממוזג
location_label additional.fields ממוזג
logger_field additional.fields ממוזג
msg_location_label additional.fields ממוזג
msg_record_functionName_label additional.fields ממוזג
msg_record_functionVersion_label additional.fields ממוזג
msg_record_initializationType_label additional.fields ממוזג
msg_record_instancId_label additional.fields ממוזג
msg_record_instanceMaxMemory_label additional.fields ממוזג
msg_record_phase_label additional.fields ממוזג
msg_service_label additional.fields ממוזג
msg_type_label additional.fields ממוזג
msg_xray_trace_id_label additional.fields ממוזג
protocol_label additional.fields ממוזג
record_version_label additional.fields ממוזג
repr_label additional.fields ממוזג
service_label additional.fields ממוזג
sourcetype_label additional.fields ממוזג
thread_name_label additional.fields ממוזג
type_label additional.fields ממוזג
xray_trace_id_label additional.fields ממוזג
evnt_device_hostname intermediary.hostname מיפוי ישיר
evnt_fwd_method_label intermediary.resource.attribute.labels ממוזג
desc_msg metadata.description מיפוי ישיר
message metadata.description מיפוי ישיר
msg metadata.description מיפוי ישיר
msg_desc_msg metadata.description מיפוי ישיר
msg_record_desc_msg metadata.description מיפוי ישיר
msg_text metadata.description מיפוי ישיר
msg.time metadata.event_timestamp ניתוח הכתובות שברשימה: ISO8601
repr_time metadata.event_timestamp ניתוח הכתובות שברשימה: ISO8601
timestamp metadata.event_timestamp ניתוח הכתובות שברשימה: ISO8601
has_host metadata.event_type מיפוי: true → STATUS_UPDATE
has_user metadata.event_type מיפוי: true ← USER_COMMUNICATION, true ← USER_UNCATEGORIZED
msg_record_module metadata.product_event_type מיפוי ישיר
id_1 metadata.product_log_id מיפוי ישיר
evnt_bytes_in network.received_bytes מיפוי ישיר
evnt_bytes_out network.sent_bytes מיפוי ישיר
evnt_app_name principal.application מיפוי ישיר
msg_record_process_name principal.application מיפוי ישיר
evnt_device_app_version_label principal.asset.attribute.labels ממוזג
evnt_ssl_policy_label principal.asset.attribute.labels ממוזג
evnt_server_ip principal.asset.ip ממוזג
evnt_src_ip principal.asset.ip ממוזג
evnt_src_translated_ip principal.asset.ip ממוזג
msg_record_file_path principal.file.full_path מיפוי ישיר
msg_record_file_name principal.file.names ממוזג
evnt_hostname principal.hostname מיפוי ישיר
host principal.hostname מיפוי ישיר
evnt_server_ip principal.ip ממוזג
evnt_src_ip principal.ip ממוזג
evnt_src_translated_ip principal.ip ממוזג
evnt_os principal.platform מופו: Windows ← WINDOWS, Linux ← LINUX
evnt_src_port principal.port מיפוי ישיר
port_number principal.port מיפוי ישיר
msg_record_process_id principal.process.pid מיפוי ישיר
cmd_status_label principal.resource.attribute.labels ממוזג
evnt_format_label principal.resource.attribute.labels ממוזג
evnt_os_label principal.resource.attribute.labels ממוזג
msg_record_runtimeVersionArn_label principal.resource.attribute.labels ממוזג
msg_record_runtimeVersion_label principal.resource.attribute.labels ממוזג
record_requestId_labels principal.resource.attribute.labels ממוזג
requestId_labels principal.resource.attribute.labels ממוזג
msg_record_name principal.resource.name מיפוי ישיר
id principal.resource.product_object_id מיפוי ישיר
evnt_url principal.url מיפוי ישיר
evnt_device_owner principal.user.user_display_name מיפוי ישיר
evnt_user principal.user.userid מיפוי ישיר
msg_extra_desc_msg_body_account_id principal.user.userid מיפוי ישיר
evnt_action security_result.action מיפוי: allow → security_result_action
security_result_action security_result.action ממוזג
security_result_category_details security_result.category_details ממוזג
security_result_url_super_category security_result.category_details ממוזג
elapsed_time_label security_result.detection_fields ממוזג
evnt_session_count_label security_result.detection_fields ממוזג
evnt_ssl_decrypted_label security_result.detection_fields ממוזג
evnt_url_class_label security_result.detection_fields ממוזג
level_icon_label security_result.detection_fields ממוזג
level security_result.severity מיפוי: INFO ← INFORMATIONAL, ‏ WARNING ← MEDIUM
msg_level security_result.severity מיפוי: INFO ← INFORMATIONAL, ‏ WARNING ← MEDIUM
evnt_dest_ip target.ip ממוזג
evnt_dest_country target.location.country_or_region מיפוי ישיר
evnt_dest_port target.port מיפוי ישיר
dst_url target.url מיפוי ישיר
לא רלוונטי metadata.event_type קבוע: USER_COMMUNICATION
לא רלוונטי metadata.product_name קבוע: AWS Inspector
לא רלוונטי metadata.vendor_name קבוע: AWS Inspector
לא רלוונטי network.ip_protocol קבוע: UDP
לא רלוונטי principal.platform קבוע: WINDOWS
לא רלוונטי security_result.detection_fields קבוע: client_tunnel_ip_label
לא רלוונטי security_result.severity קבוע: INFORMATIONAL

יומן שינויים

צפייה ביומן השינויים של המנתח הזה

הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.