איסוף יומנים של AWS Network Firewall
גרסת כלי הניתוח: 3.0
במאמר הזה מוסבר איך להטמיע יומנים של AWS Network Firewall ב-Google Security Operations. AWS Network Firewall הוא שירות מנוהל שמגן על ה-VPC מפני תנועה זדונית. שליחת יומני Network Firewall ל-Google SecOps מאפשרת לשפר את המעקב, הניתוח וזיהוי האיומים.
לפני שמתחילים
חשוב לוודא שמתקיימות דרישות הסף הבאות:
- מופע של Google SecOps
- גישה מיוחדת ל-AWS
איך מגדירים את Logging ל-AWS Network Firewall
- נכנסים ל-AWS Management Console.
- פותחים את מסוף Amazon VPC.
- בחלונית הניווט, בוחרים באפשרות Firewalls (חומות אש).
- בוחרים את שם חומת האש שרוצים לערוך.
- לוחצים על הכרטיסייה Firewall details.
- בקטע Logging, לוחצים על Edit.
- בוחרים את סוגי היומנים: Flow, Alert ו-TLS.
לכל סוג יומן שבוחרים, בוחרים באפשרות S3 בשדה 'סוג היעד'.
לוחצים על Save.
הגדרת פידים
יש שתי נקודות כניסה שונות להגדרת פידים בפלטפורמת Google SecOps:
- הגדרות SIEM > פידים > הוספת פיד חדש
- מרכז התוכן > חבילות תוכן > מתחילים
איך מגדירים את הפיד של AWS Network Firewall
- לוחצים על חבילת Amazon Cloud Platform.
- מאתרים את סוג היומן AWS Network Firewall.
מציינים את הערכים בשדות הבאים.
- סוג המקור: Amazon SQS V2
- Queue Name (שם התור): השם של תור ה-SQS שממנו ייקראו הנתונים
- S3 URI: מזהה ה-URI של הקטגוריה.
s3://your-log-bucket-name/- מחליפים את
your-log-bucket-nameבשם בפועל של קטגוריית ה-S3.
- מחליפים את
אפשרויות למחיקת מקורות: בוחרים את אפשרות המחיקה בהתאם להעדפות ההטמעה.
הגיל המקסימלי של הקובץ: כולל קבצים שעברו שינוי במספר הימים האחרון. ברירת המחדל היא 180 ימים.
SQS Queue Access Key ID (מזהה מפתח גישה לתור SQS): מפתח גישה לחשבון שהוא מחרוזת אלפאנומרית באורך 20 תווים.
מפתח גישה סודי לתור SQS: מפתח גישה לחשבון שהוא מחרוזת אלפאנומרית באורך 40 תווים.
אפשרויות מתקדמות
- שם הפיד: ערך שמאכלס מראש את השדה ומזהה את הפיד.
- מרחב שמות של נכס: מרחב השמות שמשויך לפיד.
- תוויות הטמעה: תוויות שנוספות לכל האירועים מהפיד הזה.
לוחצים על יצירת פיד.
למידע נוסף על הגדרת כמה פידים לסוגי יומנים שונים במשפחת המוצרים הזו, ראו הגדרת פידים לפי מוצר.
טבלת מיפוי UDM
| שדה ביומן | מיפוי UDM | היגיון |
|---|---|---|
availability_zone |
target.resource.attribute.cloud.availability_zone |
ממופה ישירות מהשדה availability_zone. |
event.app_proto |
network.application_protocol |
ממופה ישירות מהשדה event.app_proto, ומומר לאותיות רישיות אם הוא לא אחד מהערכים שצוינו (ikev2, tftp, failed, snmp, tls, ftp). פרוטוקול HTTP2 מוחלף בפרוטוקול HTTP. |
event.dest_ip |
target.ip |
ממופה ישירות מהשדה event.dest_ip. |
event.dest_port |
target.port |
מופה ישירות מהשדה event.dest_port, הומר למספר שלם. |
event.event_type |
additional.fields[event_type_label].key |
המפתח מקודד באופן קשיח כ-event_type. |
event.event_type |
additional.fields[event_type_label].value.string_value |
ממופה ישירות מהשדה event.event_type. |
event.flow_id |
network.session_id |
מופה ישירות מהשדה event.flow_id, והומר למחרוזת. |
event.netflow.age |
additional.fields[netflow_age_label].key |
המפתח מקודד כ-"netflow_age". |
event.netflow.age |
additional.fields[netflow_age_label].value.string_value |
מופה ישירות מהשדה event.netflow.age, והומר למחרוזת. |
event.netflow.bytes |
network.sent_bytes |
מופה ישירות מהשדה event.netflow.bytes, הומר למספר שלם לא מסומן. |
event.netflow.end |
additional.fields[netflow_end_label].key |
המפתח מקודד באופן קשיח כ-"netflow_end". |
event.netflow.end |
additional.fields[netflow_end_label].value.string_value |
ממופה ישירות מהשדה event.netflow.end. |
event.netflow.max_ttl |
additional.fields[netflow_max_ttl_label].key |
המפתח מקודד כ-"netflow_max_ttl". |
event.netflow.max_ttl |
additional.fields[netflow_max_ttl_label].value.string_value |
מופה ישירות מהשדה event.netflow.max_ttl, והומר למחרוזת. |
event.netflow.min_ttl |
additional.fields[netflow_min_ttl_label].key |
המפתח מקודד כ-"netflow_min_ttl". |
event.netflow.min_ttl |
additional.fields[netflow_min_ttl_label].value.string_value |
מופה ישירות מהשדה event.netflow.min_ttl, והומר למחרוזת. |
event.netflow.pkts |
network.sent_packets |
מופה ישירות מהשדה event.netflow.pkts, הומר למספר שלם. |
event.netflow.start |
additional.fields[netflow_start_label].key |
המפתח מקובע בתוך הקוד כ-"netflow_start". |
event.netflow.start |
additional.fields[netflow_start_label].value.string_value |
ממופה ישירות מהשדה event.netflow.start. |
event.proto |
network.ip_protocol |
ממופה ישירות מהשדה event.proto. אם הערך הוא IPv6-ICMP, הוא מוחלף ב-ICMP. |
event.src_ip |
principal.ip |
ממופה ישירות מהשדה event.src_ip. |
event.src_port |
principal.port |
ממופה ישירות מהשדה event.src_port, מומר למספר שלם. |
event.tcp.syn |
additional.fields[syn_label].key |
המפתח מקובע בתוך הקוד כ-"syn". |
event.tcp.syn |
additional.fields[syn_label].value.string_value |
מופה ישירות מהשדה event.tcp.syn, והומר למחרוזת. |
event.tcp.tcp_flags |
additional.fields[tcp_flags_label].key |
המפתח מקודד כ-"tcp_flags". |
event.tcp.tcp_flags |
additional.fields[tcp_flags_label].value.string_value |
ממופה ישירות מהשדה event.tcp.tcp_flags. |
event_timestamp |
metadata.event_timestamp.seconds |
ממופה ישירות מהשדה event_timestamp, מנותח כחותמת זמן. |
event_timestamp |
timestamp.seconds |
ממופה ישירות מהשדה event_timestamp, מנותח כחותמת זמן. |
firewall_name |
metadata.product_event_type |
ממופה ישירות מהשדה firewall_name. צריך להגדיר את הערך "NETWORK_CONNECTION" אם גם event.src_ip וגם event.dest_ip קיימים, אחרת צריך להגדיר את הערך "GENERIC_EVENT". מקודד באופן קשיח ל-AWS Network Firewall. מוגדר כ-'AWS' בקוד. |
יומן שינויים
צפייה ביומן השינויים של המנתח הזה
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.