VM Threat Detection์ด VPC ์„œ๋น„์Šค ์ œ์–ด ๊ฒฝ๊ณ„์— ์•ก์„ธ์Šคํ•˜๋„๋ก ํ—ˆ์šฉ

์ด ๋ฌธ์„œ์—์„œ๋Š” ๊ฐ€์ƒ ๋จธ์‹  ์œ„ํ˜‘ ๊ฐ์ง€๊ฐ€ VPC ์„œ๋น„์Šค ์ œ์–ด ๊ฒฝ๊ณ„์—์„œ VM์„ ๊ฒ€์‚ฌํ•  ์ˆ˜ ์žˆ๋„๋ก ์ธ๊ทธ๋ ˆ์Šค ๋ฐ ์ด๊ทธ๋ ˆ์Šค ๊ทœ์น™์„ ์ถ”๊ฐ€ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์กฐ์ง์—์„œ VPC ์„œ๋น„์Šค ์ œ์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ VM ์œ„ํ˜‘ ๊ฐ์ง€์—์„œ ๊ฒ€์‚ฌํ•  ํ”„๋กœ์ ํŠธ์˜ ์„œ๋น„์Šค๋ฅผ ์ œํ•œํ•˜๋Š” ๊ฒฝ์šฐ ์ด ์ž‘์—…์„ ์‹คํ–‰ํ•˜์„ธ์š”. VM Threat Detection์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ VM Threat Detection ๊ฐœ์š”๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”.

์‹œ์ž‘ํ•˜๊ธฐ ์ „์—

Make sure that you have the following role or roles on the organization: Access Context Manager Editor (roles/accesscontextmanager.policyEditor).

Check for the roles

  1. In the Google Cloud console, go to the IAM page.

    Go to IAM
  2. Select the organization.
  3. In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.

  4. For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.

Grant the roles

  1. In the Google Cloud console, go to the IAM page.

    IAM์œผ๋กœ ์ด๋™
  2. ์กฐ์ง์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  3. ์•ก์„ธ์Šค ๊ถŒํ•œ ๋ถ€์—ฌ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  4. ์ƒˆ ์ฃผ ๊ตฌ์„ฑ์› ํ•„๋“œ์— ์‚ฌ์šฉ์ž ์‹๋ณ„์ž๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ Google ๊ณ„์ •์˜ ์ด๋ฉ”์ผ ์ฃผ์†Œ์ž…๋‹ˆ๋‹ค.

  5. ์—ญํ•  ์„ ํƒ ๋ชฉ๋ก์—์„œ ์—ญํ• ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  6. ์—ญํ• ์„ ์ถ”๊ฐ€๋กœ ๋ถ€์—ฌํ•˜๋ ค๋ฉด ๋‹ค๋ฅธ ์—ญํ•  ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•˜๊ณ  ๊ฐ ์—ญํ• ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
  7. ์ €์žฅ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  8. ์ด๊ทธ๋ ˆ์Šค ๋ฐ ์ธ๊ทธ๋ ˆ์Šค ๊ทœ์น™ ๋งŒ๋“ค๊ธฐ

    VM Threat Detection์ด VPC ์„œ๋น„์Šค ์ œ์–ด ๊ฒฝ๊ณ„์˜ VM์„ ์Šค์บ”ํ•˜๋„๋ก ํ—ˆ์šฉํ•˜๋ ค๋ฉด ํ•ด๋‹น ๊ฒฝ๊ณ„์— ํ•„์š”ํ•œ ์ด๊ทธ๋ ˆ์Šค ๋ฐ ์ธ๊ทธ๋ ˆ์Šค ๊ทœ์น™์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”. VM Threat Detection์œผ๋กœ ์Šค์บ”ํ•˜๋ ค๋Š” ๊ฐ ๊ฒฝ๊ณ„์— ๋Œ€ํ•ด ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

    ์ž์„ธํ•œ ๋‚ด์šฉ์€ VPC ์„œ๋น„์Šค ์ œ์–ด ๋ฌธ์„œ์˜ ์„œ๋น„์Šค ๊ฒฝ๊ณ„์— ๋Œ€ํ•œ ์ธ๊ทธ๋ ˆ์Šค ๋ฐ ์ด๊ทธ๋ ˆ์Šค ์ •์ฑ… ์—…๋ฐ์ดํŠธ๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”.

    ์ฝ˜์†”

    1. Google Cloud ์ฝ˜์†”์—์„œ VPC ์„œ๋น„์Šค ์ œ์–ด ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

      VPC ์„œ๋น„์Šค ์ œ์–ด๋กœ ์ด๋™

    2. ์กฐ์ง ๋˜๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
    3. ์กฐ์ง์„ ์„ ํƒํ•œ ๊ฒฝ์šฐ ์•ก์„ธ์Šค ์ •์ฑ… ์„ ํƒ์„ ํด๋ฆญํ•œ ๋‹ค์Œ ์—…๋ฐ์ดํŠธํ•˜๋ ค๋Š” ๊ฒฝ๊ณ„์™€ ์—ฐ๊ฒฐ๋œ ์•ก์„ธ์Šค ์ •์ฑ…์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
    4. ์—…๋ฐ์ดํŠธํ•˜๋ ค๋Š” ๊ฒฝ๊ณ„์˜ ์ด๋ฆ„์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

      ์ˆ˜์ •ํ•ด์•ผ ํ•˜๋Š” ์„œ๋น„์Šค ๊ฒฝ๊ณ„๋ฅผ ์ฐพ์œผ๋ ค๋ฉด RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER ์œ„๋ฐ˜์„ ํ‘œ์‹œํ•˜๋Š” ํ•ญ๋ชฉ์˜ ๋กœ๊ทธ๋ฅผ ํ™•์ธํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ํ•ญ๋ชฉ์—์„œ servicePerimeterName ํ•„๋“œ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

      accessPolicies/ACCESS_POLICY_ID/servicePerimeters/SERVICE_PERIMETER_NAME
    5. ๊ฒฝ๊ณ„ ์ˆ˜์ •์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
    6. ์ด๊ทธ๋ ˆ์Šค ์ •์ฑ…์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
    7. ์ด๊ทธ๋ ˆ์Šค ๊ทœ์น™ ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
    8. FROM ์„น์…˜์—์„œ ๋‹ค์Œ ์„ธ๋ถ€์ •๋ณด๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

      1. ID์—์„œ ID ๋ฐ ๊ทธ๋ฃน ์„ ํƒ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
      2. ID ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
      3. Security Center ์„œ๋น„์Šค ์—์ด์ „ํŠธ์˜ ์ด๋ฉ”์ผ ์ฃผ์†Œ๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. ์„œ๋น„์Šค ์—์ด์ „ํŠธ ์ฃผ์†Œ์˜ ํ˜•์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

        service-org-ORGANIZATION_ID@security-center-api.iam.gserviceaccount.com

        ORGANIZATION_ID๋ฅผ ์กฐ์ง ID๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.

      4. ์„œ๋น„์Šค ์—์ด์ „ํŠธ๋ฅผ ์„ ํƒํ•˜๊ฑฐ๋‚˜ Enter ํ‚ค๋ฅผ ๋ˆ„๋ฅธ ํ›„ ID ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
    9. TO ์„น์…˜์—์„œ ๋‹ค์Œ ์„ธ๋ถ€์ •๋ณด๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

      1. ํ”„๋กœ์ ํŠธ์— ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
      2. ์ž‘์—… ๋˜๋Š” IAM ์—ญํ• ์—์„œ ์ž‘์—… ์„ ํƒ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
      3. ์ž‘์—… ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•œ ํ›„ ๋‹ค์Œ ์ž‘์—…์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

        • compute.googleapis.com ์„œ๋น„์Šค๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
          1. ๋ฉ”์„œ๋“œ ์„ ํƒ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
          2. DisksService.Insert ๋ฉ”์„œ๋“œ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

          3. ์„ ํƒํ•œ ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
    10. ์ธ๊ทธ๋ ˆ์Šค ์ •์ฑ…์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
    11. ์ธ๊ทธ๋ ˆ์Šค ๊ทœ์น™ ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
    12. FROM ์„น์…˜์—์„œ ๋‹ค์Œ ์„ธ๋ถ€์ •๋ณด๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

      1. ID์—์„œ ID ๋ฐ ๊ทธ๋ฃน ์„ ํƒ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
      2. ID ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
      3. Security Center ์„œ๋น„์Šค ์—์ด์ „ํŠธ์˜ ์ด๋ฉ”์ผ ์ฃผ์†Œ๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. ์„œ๋น„์Šค ์—์ด์ „ํŠธ ์ฃผ์†Œ์˜ ํ˜•์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

        service-org-ORGANIZATION_ID@security-center-api.iam.gserviceaccount.com

        ORGANIZATION_ID๋ฅผ ์กฐ์ง ID๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.

      4. ์„œ๋น„์Šค ์—์ด์ „ํŠธ๋ฅผ ์„ ํƒํ•˜๊ฑฐ๋‚˜ Enter ํ‚ค๋ฅผ ๋ˆ„๋ฅธ ํ›„ ID ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
      5. ์†Œ์Šค์—์„œ ๋ชจ๋“  ์†Œ์Šค๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
    13. TO ์„น์…˜์—์„œ ๋‹ค์Œ ์„ธ๋ถ€์ •๋ณด๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

      1. ํ”„๋กœ์ ํŠธ์— ๋ชจ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
      2. ์ž‘์—… ๋˜๋Š” IAM ์—ญํ• ์—์„œ ์ž‘์—… ์„ ํƒ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
      3. ์ž‘์—… ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•œ ํ›„ ๋‹ค์Œ ์ž‘์—…์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

        • compute.googleapis.com ์„œ๋น„์Šค๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
          1. ๋ฉ”์„œ๋“œ ์„ ํƒ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
          2. ๋‹ค์Œ ๋ฐฉ๋ฒ•์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

            • DisksService.Insert
            • InstancesService.AggregatedList
            • InstancesService.List
          3. ์„ ํƒํ•œ ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
    14. ์ €์žฅ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    gcloud

    1. ํ• ๋‹น๋Ÿ‰ ํ”„๋กœ์ ํŠธ๊ฐ€ ์•„์ง ์„ค์ •๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. Access Context Manager API๊ฐ€ ์‚ฌ์šฉ ์„ค์ •๋œ ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

      gcloud config set billing/quota_project QUOTA_PROJECT_ID

      QUOTA_PROJECT_ID๋ฅผ ๊ฒฐ์ œ ๋ฐ ํ• ๋‹น๋Ÿ‰์— ์‚ฌ์šฉํ•˜๋ ค๋Š” ํ”„๋กœ์ ํŠธ์˜ ID๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.

    2. ๋‹ค์Œ ์ฝ˜ํ…์ธ ๋กœ egress-rule.yaml๋ผ๋Š” ํŒŒ์ผ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

      - egressFrom:
          identities:
          - serviceAccount:service-org-ORGANIZATION_ID@security-center-api.iam.gserviceaccount.com
        egressTo:
          operations:
          - serviceName: compute.googleapis.com
            methodSelectors:
            - method: DisksService.Insert
          resources:
          - '*'

      ORGANIZATION_ID๋ฅผ ์กฐ์ง ID๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.

    3. ๋‹ค์Œ ์ฝ˜ํ…์ธ ๋กœ ingress-rule.yaml๋ผ๋Š” ํŒŒ์ผ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

      - ingressFrom:
          identities:
          - serviceAccount:service-org-ORGANIZATION_ID@security-center-api.iam.gserviceaccount.com
          sources:
          - accessLevel: '*'
        ingressTo:
          operations:
          - serviceName: compute.googleapis.com
            methodSelectors:
            - method: DisksService.Insert
            - method: InstancesService.AggregatedList
            - method: InstancesService.List
          resources:
          - '*'

      ORGANIZATION_ID๋ฅผ ์กฐ์ง ID๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.

    4. ๊ฒฝ๊ณ„์— ์ด๊ทธ๋ ˆ์Šค ๊ทœ์น™์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

      gcloud access-context-manager perimeters update PERIMETER_NAME \
          --set-egress-policies=egress-rule.yaml

      ๋‹ค์Œ์„ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.

      • PERIMETER_NAME: ๊ฒฝ๊ณ„์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด accessPolicies/1234567890/servicePerimeters/example_perimeter์ž…๋‹ˆ๋‹ค.

        ์ˆ˜์ •ํ•ด์•ผ ํ•˜๋Š” ์„œ๋น„์Šค ๊ฒฝ๊ณ„๋ฅผ ์ฐพ์œผ๋ ค๋ฉด RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER ์œ„๋ฐ˜์„ ํ‘œ์‹œํ•˜๋Š” ํ•ญ๋ชฉ์˜ ๋กœ๊ทธ๋ฅผ ํ™•์ธํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ํ•ญ๋ชฉ์—์„œ servicePerimeterName ํ•„๋“œ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

        accessPolicies/ACCESS_POLICY_ID/servicePerimeters/SERVICE_PERIMETER_NAME
    5. ๊ฒฝ๊ณ„์— ์ธ๊ทธ๋ ˆ์Šค ๊ทœ์น™์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

      gcloud access-context-manager perimeters update PERIMETER_NAME \
          --set-ingress-policies=ingress-rule.yaml

      ๋‹ค์Œ์„ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.

      • PERIMETER_NAME: ๊ฒฝ๊ณ„์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด accessPolicies/1234567890/servicePerimeters/example_perimeter์ž…๋‹ˆ๋‹ค.

        ์ˆ˜์ •ํ•ด์•ผ ํ•˜๋Š” ์„œ๋น„์Šค ๊ฒฝ๊ณ„๋ฅผ ์ฐพ์œผ๋ ค๋ฉด RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER ์œ„๋ฐ˜์„ ํ‘œ์‹œํ•˜๋Š” ํ•ญ๋ชฉ์˜ ๋กœ๊ทธ๋ฅผ ํ™•์ธํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ํ•ญ๋ชฉ์—์„œ servicePerimeterName ํ•„๋“œ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

        accessPolicies/ACCESS_POLICY_ID/servicePerimeters/SERVICE_PERIMETER_NAME

    ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์ธ๊ทธ๋ ˆ์Šค ๋ฐ ์ด๊ทธ๋ ˆ์Šค ๊ทœ์น™์„ ์ฐธ์กฐํ•˜์„ธ์š”.

    ๋‹ค์Œ ๋‹จ๊ณ„