במסמך הזה מתואר סוג של ממצא איום ב-Security Command Center. ממצאי האיומים נוצרים על ידי מזהי איומים כשהם מזהים איום פוטנציאלי במשאבי הענן שלכם. רשימה מלאה של ממצאי האיומים הזמינים מופיעה באינדקס של ממצאי האיומים.
סקירה כללית
כל ההרשאות במסד נתונים של PostgreSQL (או כל הפונקציות או הפרוצדורות במסד נתונים) הוענקו למשתמש אחד או יותר במסד הנתונים.
המקור של הממצא הזה הוא Event Threat Detection.
איך מגיבים
כדי להגיב לממצא הזה:
שלב 1: בדיקת פרטי הממצא
- פותחים את הממצא
Exfiltration: Cloud SQL Over-Privileged Grantכמו שמתואר בקטע בדיקת הממצאים. בכרטיסייה Summary (סיכום) בחלונית הפרטים של הממצא, בודקים את המידע בקטעים הבאים:
- מה זוהה, במיוחד השדות הבאים:
- השם המוצג של מסד הנתונים: השם של מסד הנתונים במכונת Cloud SQL PostgreSQL שהושפע.
- שם המשתמש במסד הנתונים: המשתמש ב-PostgreSQL שהעניק הרשאות עודפות.
- שאילתת מסד נתונים: שאילתת PostgreSQL שהופעלה והעניקה את ההרשאות.
- מקבלים של הרשאות במסד הנתונים: מקבלי ההרשאות הרחבות מדי.
- מקור המידע שהושפע, במיוחד השדות הבאים:
- השם המלא של המשאב: שם המשאב של מופע Cloud SQL PostgreSQL שהושפע.
- השם המלא של ההורה: שם המשאב של מופע Cloud SQL PostgreSQL.
- השם המלא של הפרויקט: הפרויקט Google Cloud שכולל את המכונה של Cloud SQL PostgreSQL.
- קישורים רלוונטיים, במיוחד השדות הבאים:
- Cloud Logging URI: קישור לרשומות ב-Logging.
- שיטת MITRE ATT&CK: קישור למסמכי התיעוד של MITRE ATT&CK.
- ממצאים קשורים: קישורים לממצאים קשורים.
- מה זוהה, במיוחד השדות הבאים:
כדי לראות את ה-JSON המלא של הממצא, לוחצים על הכרטיסייה JSON.
שלב 2: בדיקת ההרשאות במסד הנתונים
- מתחברים למסד הנתונים של PostgreSQL.
- רשימה והצגה של הרשאות גישה לפריטים הבאים:
שלב 3: בדיקת היומנים
- במסוף Google Cloud , לוחצים על הקישור ב-Cloud Logging URI (משלב 1) כדי לעבור אל Logs Explorer. הדף Logs Explorer כולל את כל היומנים שקשורים למופע הרלוונטי של Cloud SQL.
- בכלי Logs Explorer, בודקים את היומנים של PostgreSQL
pgaudit, שמתעדים שאילתות שהופעלו במסד הנתונים, באמצעות המסננים הבאים:protoPayload.request.database="var class="edit">database"
שלב 4: מחקר על שיטות תקיפה ותגובה
- כדאי לעיין בערך של מסגרת MITRE ATT&CK לגבי סוג הממצא הזה: Exfiltration Over Web Service (העברה לא מורשית של נתונים דרך שירות אינטרנט).
- כדי לקבוע אם יש צורך בפעולות נוספות לתיקון הבעיה, כדאי לשלב את תוצאות הבדיקה עם מחקר של MITRE.
שלב 5: הטמעת התגובה
תוכנית התגובה הבאה עשויה להתאים לממצא הזה, אבל היא עלולה גם להשפיע על הפעולות. חשוב לבדוק בקפידה את המידע שאספתם במהלך הבדיקה כדי להבין מהי הדרך הטובה ביותר לפתור את הבעיות.
- פונים לבעלים של המופע עם ההרשאות המוגזמות.
- מומלץ לבטל את כל ההרשאות של מקבלי ההרשאות שמפורטים במקבלים של הרשאות למסד הנתונים עד לסיום הבדיקה.
- כדי להגביל את הגישה למסד הנתונים (מתוך Database display name של Step 1), צריך לבטל הרשאות לא נחוצות מהמענקים (מתוך Database grantees של Step 1).
דוגמה למציאת JSON
הנה דוגמה ל-JSON של הממצא.
{ "finding": { "name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID", "parent": "organizations/ORGANIZATION_ID/sources/SOURCE_ID", "resource_name": "//cloudsql.googleapis.com/projects/PROJECT_ID/instances/INSTANCE_NAME", "state": "ACTIVE", "category": "Exfiltration: CloudSQL Over-Privileged Grant", "sourceProperties": { "sourceId": { "projectNumber": "PROJECT_NUMBER", "customerOrganizationNumber": "ORGANIZATION_ID" }, "detectionCategory": { "ruleName": "cloudsql_exfil", "subRuleName": "user_granted_all_permissions" }, "detectionPriority": "LOW", "affectedResources": [ { "gcpResourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER" }, { "gcpResourceName": "//cloudsql.googleapis.com/projects/PROJECT_ID/instances/INSTANCE_NAME" } ], "evidence": [{ "sourceLogId": { "projectId": "PROJECT_ID", "resourceContainer": "projects/PROJECT_ID", "timestamp": { "seconds": "0", "nanos": 0.0 }, "insertId": "INSERT_ID" } }], "findingId": "FINDING_ID", "contextUris": { "mitreUri": { "displayName": "MITRE Link", "url": "https://attack.mitre.org/techniques/T1567/002/" }, "cloudLoggingQueryUri": [{ "displayName": "Cloud Logging Query Link", "url": "LOGGING_LINK" }], "relatedFindingUri": { "displayName": "Related CloudSQL Exfiltration findings", "url": "RELATED_FINDINGS_LINK" } } }, "eventTime": "2022-01-19T21:36:07.901Z", "createTime": "2022-01-19T21:36:08.695Z", "severity": "LOW", "workflowState": "NEW", "canonicalName": "projects/PROJECT_NUMBER/sources/SOURCE_ID/findings/FINDING_ID" "mute": "UNDEFINED", "findingClass": "THREAT", "mitreAttack": { "primaryTactic": "EXFILTRATION", "primaryTechniques": ["EXFILTRATION_OVER_WEB_SERVICE"] }, "database": { "displayName": "DATABASE_NAME", "userName": "USER_NAME", "query": "QUERY", "grantees": [GRANTEE], }, "access": { "serviceName": "cloudsql.googleapis.com", "methodName": "cloudsql.instances.query" } }, "resource": { "name": "//cloudsql.googleapis.com/projects/PROJECT_ID/instances/INSTANCE_NAME", "projectName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER", "projectDisplayName": "PROJECT_ID", "parentName": "//cloudsql.googleapis.com/projects/PROJECT_NUMBER", "parentDisplayName": "PROJECT_ID", "type": "google.cloud.sql.Instance", "folders": [{ "resourceFolder": "//cloudresourcemanager.googleapis.com/folders/FOLDER_NUMBER", "resourceFolderDisplayName": "FOLDER_ID" }], "displayName": "INSTANCE_NAME" } }
המאמרים הבאים
- איך עובדים עם ממצאי איומים ב-Security Command Center
- אפשר לעיין באינדקס של ממצאי איומים.
- איך בודקים ממצא דרך מסוף Google Cloud .
- מידע על השירותים שמפיקים ממצאים לגבי איומים