איסוף יומנים של AWS Redshift
גרסת המנתח: 1.0
במסמך הזה מוסבר איך להטמיע יומני AWS Redshift ב-Google Security Operations באמצעות Amazon S3.
Amazon Redshift הוא שירות מנוהל של מחסן נתונים בענן (data warehouse) בקנה מידה של פטה-בייט מבית Amazon Web Services. הוא מאפשר הרצת שאילתות וניתוחים מהירים במערכי נתונים גדולים באמצעות כלים מבוססי-SQL ואפליקציות לבינה עסקית. יומני Amazon Redshift מתעדים את הפעילות במסד הנתונים, כולל ניסיונות אימות, חיבורים, ניתוקים, שינויים בהגדרות המשתמשים ושאילתות שמופעלות במסד הנתונים. השילוב הזה משתמש בתכונת רישום הביקורת המקורית של Amazon Redshift כדי להעביר קובצי יומן לקטגוריה של S3, ש-Google SecOps מעכלת אותם באמצעות פיד Amazon S3 V2.
לפני שמתחילים
חשוב לוודא שיש לכם את הדברים הבאים:
- מופע של Google SecOps
- גישה עם הרשאות מיוחדות ל-AWS Management Console עם הרשאות לניהול:
- Amazon Redshift (אשכולות, קבוצות פרמטרים)
- Amazon S3 (קטגוריות, כללי מדיניות של קטגוריות)
- AWS IAM (משתמשים, כללי מדיניות)
הגדרת קטגוריית S3 לרישום ביומן ביקורת של Amazon Redshift
Amazon Redshift מעלה קבצים של יומני ביקורת לקטגוריית S3. צריך להגדיר את מדיניות קטגוריית S3 כדי לאפשר לשירות Amazon Redshift לכתוב קובצי יומן.
יצירה והגדרה של קטגוריית S3
- יוצרים קטגוריה של Amazon S3 לפי המדריך למשתמש: יצירת קטגוריה.
שומרים את השם והאזור של הקטגוריה לעיון בהמשך (לדוגמה,
redshift-audit-logs-to-secops).בוחרים את הקטגוריה שנוצרה במסוף Amazon S3 בכתובת https://console.aws.amazon.com/s3.
לוחצים על הכרטיסייה הרשאות.
בקטע Bucket policy, לוחצים על Edit.
מוסיפים את מדיניות הקטגוריה הבאה (מחליפים את
redshift-audit-logs-to-secopsבשם הקטגוריה):{ "Version": "2012-10-17", "Statement": [ { "Sid": "Put bucket policy needed for audit logging", "Effect": "Allow", "Principal": { "Service": "redshift.amazonaws.com" }, "Action": [ "s3:PutObject", "s3:GetBucketAcl" ], "Resource": [ "arn:aws:s3:::redshift-audit-logs-to-secops", "arn:aws:s3:::redshift-audit-logs-to-secops/*" ] } ] }לוחצים על שמירת השינויים.
הפעלת הפרמטר של יומן פעילות המשתמש
יומן החיבורים ויומן המשתמשים נשמרים אוטומטית כשיומן הביקורת מופעל. כדי לתעד גם את יומן פעילות המשתמש (שמתעד כל שאילתה לפני שהיא מופעלת במסד הנתונים), צריך להפעיל את פרמטר מסד הנתונים enable_user_activity_logging.
- נכנסים אל מסוף Amazon Redshift בכתובת https://console.aws.amazon.com/redshiftv2/.
- בתפריט הניווט, עוברים אל הגדרות > ניהול עומסי עבודה.
- בוחרים את קבוצת הפרמטרים שמשויכת לאשכול.
- לוחצים על הכרטיסייה פרמטרים.
- לוחצים על עריכת פרמטרים.
- מגדירים את ערך הפרמטר enable_user_activity_logging ל-true.
לוחצים על Save.
הפעלת רישום ביומן ביקורת של Amazon Redshift ב-S3
- נכנסים אל מסוף Amazon Redshift בכתובת https://console.aws.amazon.com/redshiftv2/.
- בתפריט הניווט, לוחצים על Clusters (אשכולות) ובוחרים את האשכול שרוצים להגדיר.
- לוחצים על הכרטיסייה מאפיינים.
- בחלונית Database configurations, לוחצים על Edit ואז על Edit audit logging.
- בדף עריכת רישום ביומן ביקורת, לוחצים על הפעלה.
- בקטע Log destination (יעד היומן), בוחרים באפשרות S3 bucket (קטגוריית S3).
- בשדה S3 bucket, בוחרים את הקטגוריה שהגדרתם (לדוגמה,
redshift-audit-logs-to-secops). - אופציונלי: מזינים קידומת מפתח S3 כדי לארגן את קובצי היומן בתוך הקטגוריה (לדוגמה,
audit-logs/). - בוחרים את היומנים שרוצים לייצא:
- יומן חיבורים – ניסיונות אימות, חיבורים וניתוקים
- יומן משתמשים – שינויים בהגדרות של משתמשים במסד הנתונים
- יומן פעילות המשתמשים – כל שאילתה לפני שהיא מופעלת במסד הנתונים
- לוחצים על שמירת השינויים.
מידע נוסף זמין במאמר בנושא יומני ביקורת של מסדי נתונים במדריך לניהול Amazon Redshift.
הגדרת משתמש IAM ל-Google SecOps
כדי להטמיע את יומני הביקורת שיוצאו, Google SecOps צריך משתמש IAM עם הרשאת קריאה לקטגוריית S3.
- יוצרים משתמש לפי המדריך למשתמש: יצירת משתמש IAM.
- בוחרים את המשתמש שנוצר.
- לוחצים על הכרטיסייה פרטי כניסה לאבטחה.
- בקטע מפתחות גישה, לוחצים על יצירת מפתח גישה.
- בוחרים באפשרות שירות של צד שלישי בתור תרחיש שימוש.
- לוחצים על הבא.
- אופציונלי: מוסיפים תג תיאור.
- לוחצים על יצירת מפתח גישה.
- לוחצים על הורדת קובץ CSV כדי לשמור את מפתח הגישה ואת מפתח הגישה הסודי לעיון עתידי.
- לוחצים על סיום.
- לוחצים על הכרטיסייה הרשאות.
- בקטע Permissions policies, לוחצים על Add permissions.
- לוחצים על הוספת הרשאות.
- בוחרים באפשרות צירוף מדיניות ישירות.
- מחפשים את המדיניות AmazonS3FullAccess.
- בוחרים את המדיניות.
- לוחצים על הבא.
- לוחצים על הוספת הרשאות.
הגדרת פיד ב-Google SecOps להטמעה של יומנים מ-AWS Redshift
- עוברים אל SIEM Settings > Feeds.
- לוחצים על הוספת פיד חדש.
- בדף הבא, לוחצים על הגדרת פיד יחיד.
- מזינים שם ייחודי בשם הפיד.
- בוחרים באפשרות Amazon S3 V2 בתור סוג המקור.
- בוחרים באפשרות AWS Redshift בתור Log type.
- לוחצים על הבא ואז על שליחה.
מציינים ערכים בשדות הבאים:
- S3 URI:
s3://redshift-audit-logs-to-secops/audit-logs/ - אפשרות מחיקת המקור: בוחרים את אפשרות המחיקה הרצויה.
- הגיל המקסימלי של הקובץ: כולל קבצים ששונו במספר הימים האחרון (ברירת המחדל היא 180 ימים)
- מזהה מפתח הגישה: מפתח הגישה של המשתמש עם גישה לקטגוריית S3
- מפתח גישה סודי: מפתח סודי של משתמש עם גישה לקטגוריית S3
- מרחב השמות של הנכס: מרחב השמות של הנכס
- תוויות הטמעה: התווית שתתווסף לאירועים מהפיד הזה
- S3 URI:
לוחצים על הבא ואז על שליחה.
טבלת מיפוי UDM
| שדה ביומן | מיפוי UDM | היגיון |
|---|---|---|
func_label |
additional.fields |
ממוזג |
lpclagg_label |
additional.fields |
ממוזג |
lpcltype_label |
additional.fields |
ממוזג |
msg |
metadata.description |
מיפוי ישיר |
has_principal |
metadata.event_type |
מיפוי: true → STATUS_UPDATE |
has_target_resource |
metadata.event_type |
מיפוי: true → USER_RESOURCE_ACCESS |
has_user |
metadata.event_type |
מופה: true ← USER_UNCATEGORIZED |
column1 |
metadata.product_event_type |
מיפוי ישיר |
requestID |
metadata.product_log_id |
מיפוי ישיר |
column20 |
network.application_protocol_version |
מיפוי ישיר |
column9 |
network.session_duration.seconds |
שינוי שם/מיפוי |
column21 |
network.session_id |
מיפוי ישיר |
xid |
network.session_id |
מיפוי ישיר |
column11 |
network.tls.cipher |
מיפוי ישיר |
column10 |
network.tls.version |
מיפוי ישיר |
column16 |
principal.application |
מיפוי ישיר |
column3 |
principal.asset.ip |
ממוזג |
log_event.src_ip |
principal.asset.ip |
ממוזג |
column3 |
principal.hostname |
מיפוי ישיר |
column3 |
principal.ip |
ממוזג |
log_event.src_ip |
principal.ip |
ממוזג |
region |
principal.location.name |
מיפוי ישיר |
column17 |
principal.platform_version |
מיפוי ישיר |
column4 |
principal.port |
מיפוי ישיר |
column5 |
principal.process.pid |
מיפוי ישיר |
pid |
principal.process.pid |
מיפוי ישיר |
accountID |
principal.user.userid |
מיפוי ישיר |
user_id |
principal.user.userid |
מיפוי ישיר |
authmethod_label |
security_result.detection_fields |
ממוזג |
compression_label |
security_result.detection_fields |
ממוזג |
driver_version_label |
security_result.detection_fields |
ממוזג |
iamauthguid_label |
security_result.detection_fields |
ממוזג |
mtu_label |
security_result.detection_fields |
ממוזג |
plugin_name_label |
security_result.detection_fields |
ממוזג |
ssl_compression_label |
security_result.detection_fields |
ממוזג |
ssl_expansion_label |
security_result.detection_fields |
ממוזג |
level |
security_result.severity |
מיפוי: (?i)Info ← INFORMATIONAL, (?i)Error ← ERROR, (?i)Warning ← MEDIUM |
file |
target.file.full_path |
מיפוי ישיר |
expected_bucket_label |
target.resource.attribute.labels |
ממוזג |
expected_s3_prefix_label |
target.resource.attribute.labels |
ממוזג |
sql_query_label |
target.resource.attribute.labels |
ממוזג |
time_zone_label |
target.resource.attribute.labels |
ממוזג |
ClusterIdentifier |
target.resource.name |
מיפוי ישיר |
column6 |
target.resource.name |
מיפוי ישיר |
db |
target.resource.name |
מיפוי ישיר |
column7 |
target.user.user_display_name |
מיפוי ישיר |
user |
target.user.user_display_name |
מיפוי ישיר |
| לא רלוונטי | metadata.event_type |
קבוע: USER_RESOURCE_ACCESS |
| לא רלוונטי | security_result.severity |
קבוע: INFORMATIONAL |
| לא רלוונטי | target.resource.type |
קבוע: DATABASE |
יומן שינויים
צפייה ביומן השינויים של המנתח הזה
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.