מתקפת Brute Force: SSH

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

סקירה כללית

זיהוי של ניסיון מוצלח לכניסה בכוח ל-SSH במארח.

המקור של הממצא הזה הוא Event Threat Detection.

איך מגיבים

כדי להגיב לממצא הזה:

שלב 1: בדיקת פרטי הממצא

  1. פותחים ממצא Brute Force: SSH כמו שמתואר במאמר בדיקת ממצאים.
  2. בכרטיסייה Summary (סיכום) בחלונית הפרטים של הממצא, בודקים את המידע בקטעים הבאים:

    • מה זוהה, במיוחד השדות הבאים:

      • כתובת ה-IP של המתקשר: כתובת ה-IP שממנה בוצעה המתקפה.
      • שם משתמש: החשבון שאליו התבצעה הכניסה.
    • מקור המידע שהושפע

    • קישורים רלוונטיים, במיוחד השדות הבאים:

      • Cloud Logging URI: קישור לרשומות ב-Logging.
      • שיטת MITRE ATT&CK: קישור למסמכי התיעוד של MITRE ATT&CK.
      • ממצאים קשורים: קישורים לממצאים קשורים.
  3. לוחצים על הכרטיסייה JSON.

  4. שימו לב לשדות הבאים ב-JSON.

    • sourceProperties:
      • evidence:
        • sourceLogId: מזהה הפרויקט וחותמת הזמן לזיהוי רשומת היומן
        • projectId: הפרויקט שמכיל את הממצא
      • properties:
        • attempts:
        • Attempts: מספר ניסיונות ההתחברות
          • username: החשבון שהתבצעה בו התחברות
          • vmName: השם של המכונה הווירטואלית
          • authResult: תוצאת האימות של SSH

שלב 2: בדיקת ההרשאות וההגדרות

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

    כניסה ללוח הבקרה

  2. בוחרים את הפרויקט שצוין ב-projectId.

  3. עוברים לכרטיס משאבים ולוחצים על Compute Engine.

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

  5. בחלונית הניווט, לוחצים על VPC Network (רשת VPC) ואז על Firewall (חומת אש). הסרה או השבתה של כללי חומת אש מתירנים מדי ביציאה 22.

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

  1. במסוף Google Cloud , לוחצים על הקישור ב-Cloud Logging URI כדי לעבור אל Logs Explorer.
  2. בדף שנטען, מחפשים יומני זרימה של VPC שקשורים לכתובת ה-IP שמופיעה בשורה Principal email בכרטיסייה Summary בפרטי הממצא, באמצעות המסנן הבא:
    • logName="projects/projectId/logs/syslog"
    • labels."compute.googleapis.com/resource_name"="vmName"

שלב 4: מחקר על שיטות תקיפה ותגובה

  1. מעיינים בערך של מסגרת MITRE ATT&CK לגבי סוג הממצא הזה: חשבונות תקפים: חשבונות מקומיים.
  2. כדי לעיין בממצאים קשורים, לוחצים על הקישור ממצאים קשורים בשורה ממצאים קשורים בכרטיסייה סיכום של פרטי הממצא. ממצאים קשורים הם ממצאים מאותו סוג, שמתייחסים לאותו מופע ולאותה רשת.
  3. כדי לפתח תוכנית תגובה, משלבים את תוצאות החקירה עם מחקר של MITRE.

שלב 5: הטמעת התגובה

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

  • פונים לבעלים של הפרויקט עם ניסיון הכניסה הכוחני המוצלח.
  • בודקים את המופע שעלול להיות בסיכון ומסירים כל תוכנה זדונית שנמצאה. כדי לסייע בזיהוי ובהסרה, כדאי להשתמש בפתרון לזיהוי נקודות קצה ותגובה.
  • מומלץ להשבית את הגישה ל-SSH למכונה הווירטואלית. מידע על השבתת מפתחות SSH זמין במאמר הגבלת מפתחות SSH ממכונות וירטואליות. השלב הזה עלול לשבש את הגישה המורשית למכונה הווירטואלית, לכן כדאי לשקול את הצרכים של הארגון לפני שממשיכים.
  • אפשר להשתמש באימות SSH רק עם מפתחות מורשים.
  • כדי לחסום את כתובות ה-IP הזדוניות, מעדכנים את כללי חומת האש או משתמשים ב-Cloud Armor. העלויות של Cloud Armor יכולות להיות משמעותיות, בהתאם לנפח הנתונים. מידע נוסף מפורט במדריך התמחור של Cloud Armor.

    כדי להפעיל את Cloud Armor במסוף Google Cloud , נכנסים לדף Integrated Services.

    כניסה לדף Integrated Services

דוגמה למציאת JSON

הנה דוגמה ל-JSON של הממצא.

{
    "finding": {
      "name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID",
      "parent": "organizations/ORGANIZATION_ID/sources/SOURCE_ID",
      "resourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER",
      "state": "ACTIVE",
      "category": "Brute Force: SSH",
      "sourceProperties": {
        "evidence": [
          {
            "sourceLogId": {
              "projectId": "PROJECT_ID",
              "timestamp": {
                "nanos": 0.0,
                "seconds": "65"
              },
              "insertId": "INSERT_ID",
              "resourceContainer": "projects/PROJECT_ID"
            }
          }
        ],
        "properties": {
          "projectId": "PROJECT_ID",
          "zone": "us-west1-a",
          "instanceId": "INSTANCE_ID",
          "attempts": [
            {
              "sourceIp": "SOURCE_IP_ADDRESS",
              "username": "PROJECT_ID",
              "vmName": "INSTANCE_ID",
              "authResult": "SUCCESS"
            },
            {
              "sourceIp": "SOURCE_IP_ADDRESS",
              "username": "PROJECT_ID",
              "vmName": "INSTANCE_ID",
              "authResult": "FAIL"
            },
            {
              "sourceIp": "SOURCE_IP_ADDRESS",
              "username": "PROJECT_ID",
              "vmName": "INSTANCE_ID",
              "authResult": "FAIL"
            }
          ]
        },
        "detectionPriority": "HIGH",
        "sourceId": {
          "projectNumber": "PROJECT_NUMBER",
          "customerOrganizationNumber": "ORGANIZATION_ID"
        },
        "contextUris": {
          "mitreUri": {
            "displayName": "MITRE Link",
            "url": "https://attack.mitre.org/techniques/T1078/003/"
          }
        },
        "detectionCategory": {
          "technique": "brute_force",
          "indicator": "flow_log",
          "ruleName": "ssh_brute_force"
        },
        "affectedResources": [
          {
            "gcpResourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER"
          }
        ]
      },
      "severity": "HIGH",
      "eventTime": "1970-01-01T00:00:00Z",
      "createTime": "1970-01-01T00:00:00Z"
    }
 }

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