악성 URL 관찰

이 문서에서는 Security Command Center의 위협 발견 항목 유형에 대해 설명합니다. 위협 발견 항목은 위협 감지기가 클라우드 리소스에서 잠재적인 위협을 감지할 때 생성됩니다. 사용 가능한 위협 발견 항목의 전체 목록은 위협 발견 항목 색인을 참고하세요.

개요

Container Threat Detection이 실행 가능한 프로세스의 인수 목록에서 악의적인 URL을 관찰했습니다. 공격자가 악의적인 URL을 통해 멀웨어 또는 악성 라이브러리를 로드할 수 있습니다.

대응 방법

이 발견 항목에 대응하려면 다음을 수행하세요.

1단계: 발견 항목 세부정보 검토하기

  1. 발견 항목 검토의 지시에 따라 Malicious URL Observed 발견 항목을 엽니다. 발견 항목의 세부정보 패널의 요약 탭이 열립니다.

  2. 요약 탭에서 다음 섹션의 정보를 검토합니다.

    • 특히 다음 필드를 포함하는 감지된 항목:
      • URI: 관찰된 악성 URI입니다.
      • 추가된 바이너리: 악성 URL이 포함된 인수가 수신된 프로세스 바이너리의 전체 경로입니다.
      • 인수: 프로세스 바이너리를 호출할 때 제공되는 인수
      • 환경 변수: 프로세스 바이너리가 호출되었을 때 적용된 환경 변수입니다.
      • 컨테이너: 컨테이너 이름입니다.
      • Kubernetes 포드: 포드 이름 및 네임스페이스입니다.
    • 특히 다음 필드를 포함하는 영향을 받는 리소스:
      • 리소스 표시 이름: 영향을 받는 리소스의 이름
      • 리소스 전체 이름: 클러스터의 전체 리소스 이름 전체 리소스 이름에는 다음 정보가 포함됩니다.
        • 클러스터를 포함하는 프로젝트: projects/PROJECT_ID
        • 클러스터가 있는 위치: zone/ZONE 또는 locations/LOCATION
        • 클러스터의 이름: projects/CLUSTER_NAME
    • 특히 다음 필드를 포함하는 관련 링크:
      • VirusTotal 표시기: VirusTotal 분석 페이지 링크
  3. JSON 탭의 sourceProperties 속성에서 VM_Instance_Name 속성 값을 확인합니다.

2단계: 클러스터 및 노드 검토하기

  1. Google Cloud 콘솔에서 Kubernetes 클러스터 페이지로 이동합니다.

    Kubernetes 클러스터로 이동

  2. 필요한 경우 Google Cloud 콘솔 툴바에서 리소스 전체 이름(resource.name)에 표시되는 프로젝트를 선택합니다. 프로젝트 이름은 전체 리소스 이름에서 /projects/ 다음에 표시됩니다.

  3. 발견 항목 요약의 리소스 표시 이름(resource.display_name)에서 확인한 클러스터 이름을 클릭합니다. 클러스터 페이지가 열립니다.

  4. **클러스터 세부정보 페이지의 메타데이터 섹션에서 위협 해결에 도움이 될 수 있는 사용자 정의 정보(예: 클러스터 소유자 식별)를 확인합니다.

  5. 노드 탭을 클릭합니다.

  6. 나열된 노드에서 앞의 발견 항목 JSON에서 확인한 VM_Instance_Name 값과 일치하는 노드를 선택합니다.

  7. 주석 섹션의 노드 세부정보 페이지의 세부정보 탭에서 container.googleapis.com/instance_id 주석 값을 확인합니다.

3단계: 포드 검토하기

  1. Google Cloud 콘솔에서 Kubernetes 워크로드 페이지로 이동합니다.

    Kubernetes 워크로드로 이동

  2. 필요한 경우 Google Cloud 콘솔 툴바에서 발견 항목 요약의 클러스터 리소스 전체 이름(resource.name)에서 기록한 프로젝트를 선택합니다.

  3. 시스템 워크로드 표시를 클릭합니다.

  4. 발견 항목 요약의 리소스 전체 이름(resource.name)에 기록한 클러스터 이름과 필요한 경우 기록한 포드 네임스페이스(kubernetes.pods.ns)를 기준으로 워크로드 목록을 필터링합니다.

  5. 앞의 발견 항목 JSON에서 확인한 VM_Instance_Name 속성 값과 일치하는 워크로드 이름을 클릭합니다. 포드 세부정보 페이지가 열립니다.

  6. 포드 세부정보 페이지에서 위협 해결에 도움이 되는 포드에 대한 모든 정보를 기록합니다.

4단계: 로그 확인하기

  1. Google Cloud 콘솔에서 로그 탐색기로 이동합니다.

    로그 탐색기로 이동

  2. 필요한 경우 Google Cloud 콘솔 툴바에서 리소스 전체 이름(resource.name)에 표시되는 프로젝트를 선택합니다.

  3. 기간 선택을 원하는 기간으로 설정합니다.

  4. 로드되는 페이지에서 다음을 수행합니다.

    1. 다음 필터를 사용하여 포드(kubernetes.pods.name)의 포드 로그를 찾습니다.
      • resource.type="k8s_container"
      • resource.labels.project_id="PROJECT_ID"
      • resource.labels.location="LOCATION"
      • resource.labels.cluster_name="CLUSTER_NAME"
      • resource.labels.namespace_name="NAMESPACE_NAME"
      • resource.labels.pod_name="POD_NAME"
    2. 다음 필터를 사용하여 클러스터 감사 로그를 찾습니다.
      • logName="projects/PROJECT_NAME/logs/cloudaudit.googleapis.com%2Factivity"
      • resource.type="k8s_cluster"
      • resource.labels.project_id="PROJECT_ID"
      • resource.labels.location="LOCATION_OR_ZONE"
      • resource.labels.cluster_name="CLUSTER_NAME/var>"
      • POD_NAME
    3. 다음 필터를 사용하여 GKE 노드 콘솔 로그를 찾습니다.
      • resource.type="gce_instance"
      • resource.labels.instance_id="INSTANCE_ID"

5단계: 실행 중인 컨테이너 조사하기

컨테이너가 계속 실행 중이면 컨테이너 환경을 직접 조사할 수 있습니다.

  1. Google Cloud 콘솔에서 Kubernetes 클러스터 페이지로 이동합니다.

    Kubernetes 클러스터로 이동

  2. resource.labels.cluster_name에 표시된 클러스터의 이름을 클릭합니다.

  3. 클러스터 페이지에서 연결을 클릭한 후 Cloud Shell에서 실행을 클릭합니다.

    Cloud Shell이 터미널에서 클러스터에 대한 명령어를 시작하고 추가합니다.

  4. Enter 키를 누르고 Cloud Shell 승인 대화상자가 나타나면 승인을 클릭합니다.

  5. 다음 명령어를 실행하여 컨테이너 환경에 연결합니다.

      kubectl exec --namespace=POD_NAMESPACE -ti POD_NAME -c CONTAINER_NAME -- /bin/sh
    

    CONTAINER_NAME을 이전 발견 항목 요약에서 확인한 컨테이너 이름으로 바꿉니다.

    이 명령어를 실행하려면 컨테이너의 셸이 /bin/sh에 설치되어 있어야 합니다.

6단계: 공격 및 대응 방법 조사하기

  1. 세이프 브라우징 사이트 상태를 확인하여 URL이 악성으로 분류된 이유를 자세히 알아봅니다.
  2. 이 발견 항목 유형 인그레스 도구 전송의 MITRE ATT&CK 프레임워크 항목을 검토합니다.
  3. VirusTotal 표시기에서 링크를 클릭하여 VirusTotal에서 악성으로 표시된 바이너리의 SHA-256 해시 값을 확인합니다. VirusTotal은 Alphabet 소유 서비스로 잠재적 악성 파일, URL, 도메인 및 IP 주소에 관한 컨텍스트를 제공합니다.
  4. 대응 계획을 개발하려면 조사 결과를 MITRE 연구 및 VirusTotal 분석과 결합합니다.

7단계: 대응 구현하기

다음의 응답 계획이 이 발견 항목에 적합할 수 있지만 작업에도 영향을 줄 수 있습니다. 조사에서 수집한 정보를 신중하게 평가하여 발견 항목을 해결할 최선의 방법을 결정해야 합니다.

  • 침해된 컨테이너가 있는 프로젝트 소유자에게 문의하세요.
  • 침해된 컨테이너를 중지 또는 삭제하고 새 컨테이너로 바꿉니다.

다음 단계