Microsoft Defender 포털에서 컨테이너 위협 조사 및 대응
중요
이 문서의 일부 정보는 상업적으로 출시되기 전에 실질적으로 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보와 관련하여 명시되거나 묵시적 보증을 하지 않습니다.
이제 보안 작업은 거의 실시간으로 컨테이너 관련 경고를 조사하고 응답할 수 있으며, Microsoft Defender 포털에서 클라우드 네이티브 응답 작업 및 조사 로그의 통합을 통해 관련 활동을 검색할 수 있습니다. 또한 공격 경로의 가용성은 분석가가 잠재적인 위반을 방지하기 위해 중요한 보안 문제를 즉시 조사하고 해결하는 데 도움이 될 수 있습니다.
조직에서 AKS(Azure Kubernetes Service), GKE(Google Kubernetes Engine), 광고 EKS(Amazon Elastic Kubernetes Service)와 같은 플랫폼에서 컨테이너 및 Kubernetes를 사용함에 따라 공격 표면이 확장되어 보안 문제가 증가합니다. 컨테이너는 위협 행위자가 대상으로 지정하고 악의적인 용도로 사용할 수도 있습니다.
SOC(보안 운영 센터) 분석가는 이제 거의 실시간 경고로 컨테이너 위협을 쉽게 추적하고 컨테이너 Pod를 격리하거나 종료하여 이러한 위협에 즉시 대응할 수 있습니다. 이 통합을 통해 분석가는 클릭으로 환경의 컨테이너 공격을 즉시 완화할 수 있습니다.
그런 다음 분석가는 인시던트 그래프 내에서 관련 활동을 헌팅할 수 있는 기능을 사용하여 공격의 전체 scope 조사할 수 있습니다. 또한 인시던트 그래프에서 잠재적인 공격 경로의 가용성과 함께 예방 작업을 추가로 적용할 수 있습니다. 공격 경로의 정보를 사용하면 보안 팀이 경로를 검사하고 가능한 위반을 방지할 수 있습니다. 또한 컨테이너 위협 및 공격과 관련된 위협 분석 보고서를 분석가가 더 많은 정보를 얻고 컨테이너 공격 대응 및 방지를 위한 권장 사항을 적용할 수 있습니다.
필수 구성 요소
AKS, EKS 및 GKE 플랫폼의 사용자는 다음 라이선스를 사용하여 Microsoft Defender 포털에서 클라우드 응답 작업, 클라우드 관련 조사 로그 및 공격 경로를 활용할 수 있습니다.
필수 라이선스 | 작업 |
---|---|
컨테이너에 대한 Microsoft Defender | 컨테이너 관련 경고 보기 고급 헌팅 격리 Pod 종결 Pod에서 조사할 컨테이너 관련 데이터 보기 |
클라우드 보안 태세 관리를 위한 Microsoft Defender | 인시던트 그래프에서 공격 경로 보기 |
Microsoft Security Copilot | 단계별 응답을 보고 적용하여 컨테이너 위협을 조사하고 수정합니다. |
Microsoft Defender 포털의 클라우드 응답 작업에는 컨테이너에 대한 다음 Microsoft Defender 필요합니다.
- Defender 센서
- Kubernetes API 액세스
이러한 구성 요소에 대한 자세한 내용은 컨테이너 구성 요소에 대한 Microsoft Defender 구성을 참조하세요.
네트워크 정책 요구 사항
Pod 격리 응답 작업은 Kubernetes 클러스터 버전 1.27 이상을 지원합니다. 다음 네트워크 플러그 인도 필요합니다.
네트워크 플러그 인 | 최소 버전 필요 |
---|---|
Azure-NPM | 1.5.34 |
옥양목 | 3.24.1 |
실륨(Cilium) | 1.13.1 |
AWS 노드 | 1.15.1 |
Pod 격리 응답 작업에는 Kubernetes 클러스터에 대한 네트워크 정책 적용자가 필요합니다. 다음 설명서에서는 플랫폼에 따라 네트워크 정책을 설치하고 검사 방법에 대한 구체적인 단계를 제공합니다.
- Azure Kubernetes Service: AKS에서 네트워크 정책을 사용하여 Pod 간 트래픽 보호
- Google Kubernetes 엔진: 네트워크 정책을 사용하여 Pod와 서비스 간의 통신 제어
- Amazon Kubernetes 엔진: Kubernetes 네트워크 정책을 사용하여 Pod 트래픽 제한
네트워크 플러그 인이 지원되는지 확인하려면 플랫폼의 Cloud Shell 액세스하고 문제 해결 섹션에서 네트워크 플러그 인을 검사 단계를 수행합니다.
종료 Pod 응답 동작은 네트워크 정책의 존재와 관계없이 작동합니다.
권한
응답 작업을 수행하려면 사용자는 Microsoft Defender XDR 통합 역할 기반 액세스 제어에서 클라우드용 Microsoft Defender 대한 다음 권한이 있어야 합니다.
사용 권한 이름 | 수준 |
---|---|
경고 | 관리 |
응답 | 관리 |
이러한 권한에 대한 자세한 내용은 MICROSOFT DEFENDER XDR RBAC(통합 역할 기반 액세스 제어)의 사용 권한을 참조하세요.
컨테이너 위협 조사
Microsoft Defender 포털에서 컨테이너 위협을 조사하려면 다음을 수행합니다.
- 왼쪽 탐색 메뉴에서 조사 & 응답 > 인시던트 및 경고를 선택하여 인시던트 또는 경고 큐를 엽니다.
- 큐에서 필터를 선택하고 서비스 원본 아래의 컨테이너에 대한 클라우드 > Microsoft Defender Microsoft Defender 선택합니다.
- 인시던트 그래프에서 조사해야 하는 Pod/서비스/클러스터 엔터티를 선택합니다. Kubernetes 서비스 세부 정보, Kubernetes Pod 세부 정보, Kubernetes 클러스터 세부 정보 또는 컨테이너 레지스트리 세부 정보를 선택하여 서비스, Pod 또는 레지스트리에 대한 관련 정보를 확인합니다.
분석가 는 위협 분석 보고서를 사용하여 전문가 Microsoft 보안 연구원의 위협 인텔리전스를 활용하여 컨테이너를 악용하는 활성 위협 행위자 및 캠페인, 컨테이너에 영향을 줄 수 있는 새로운 공격 기술 및 컨테이너에 영향을 주는 널리 퍼진 위협에 대해 알아볼 수 있습니다.
위협 인텔리전스 > 위협 분석에서 위협 분석 보고서에 액세스합니다. 인시던트 쪽 창의 관련 위협에서 위협 분석 보고서 보기를 선택하여 인시던트 페이지에서 특정 보고서를 열 수도 있습니다.
위협 분석 보고서에는 분석가가 해당 환경을 평가하고 적용할 수 있는 관련 완화, 복구 및 방지 방법도 포함되어 있습니다. 위협 분석 보고서의 정보를 사용하면 SOC 팀이 컨테이너 공격으로부터 환경을 방어하고 보호하는 데 도움이 됩니다. 컨테이너 공격에 대한 분석가 보고서의 예는 다음과 같습니다.
컨테이너 위협에 대응
Pod가 손상되거나 악의적인 것으로 확인되면 Pod를 격리 하거나 종료 할 수 있습니다. 인시던트 그래프에서 Pod를 선택한 다음 작업 으로 이동하여 사용 가능한 응답 작업을 확인합니다. 엔터티 쪽 창에서 이러한 응답 작업을 찾을 수도 있습니다.
조사가 완료되면 격리 작업에서 릴리스를 사용하여 격리에서 Pod를 해제할 수 있습니다. 이 옵션은 격리된 Pod의 측면 창에 나타납니다.
모든 응답 작업의 세부 정보는 알림 센터에서 볼 수 있습니다. 알림 센터 페이지에서 검사할 응답 작업을 선택하여 수행된 엔터티, 작업이 수행된 시기와 같은 작업에 대한 자세한 정보를 보고 작업에 대한 주석을 봅니다. 격리된 Pod의 경우 격리 작업으로부터의 릴리스 는 알림 센터 세부 정보 창에서도 사용할 수 있습니다.
컨테이너 관련 활동 헌팅
컨테이너 공격의 전체 scope 확인하려면 인시던트 그래프에서 사용할 수 있는 Go 사냥 작업을 사용하여 조사를 심화할 수 있습니다. 인시던트 그래프에서 컨테이너 관련 인시던트와 관련된 모든 프로세스 이벤트 및 활동을 즉시 볼 수 있습니다.
고급 헌팅 페이지에서 CloudProcessEvents 및 CloudAuditEvents 테이블을 사용하여 컨테이너 관련 활동에 대한 검색을 확장할 수 있습니다.
CloudProcessEvents 테이블에는 Azure Kubernetes Service, Amazon Elastic Kubernetes Service 및 Google Kubernetes Engine과 같은 다중 클라우드 호스팅 환경의 프로세스 이벤트에 대한 정보가 포함되어 있습니다.
CloudAuditEvents 테이블에는 클라우드용 Microsoft Defender 보호되는 클라우드 플랫폼의 클라우드 감사 이벤트가 포함되어 있습니다. Kubernetes 관련 이벤트에 대한 정보를 보유하는 Kubeaudit 로그도 포함됩니다.
문제 해결
다음 섹션에서는 컨테이너 위협을 조사하고 대응할 때 발생할 수 있는 문제를 해결합니다.
Pod 격리 작업을 사용할 수 없음
Pod 격리 작업이 회색으로 표시되면 이 작업을 수행하는 데 필요한 권한이 있는지 확인해야 합니다. 사용 권한 섹션을 참조하여 올바른 권한이 있는지 검사 유효성을 검사합니다.
자세한 내용은 Microsoft Defender XDR RBAC(통합 역할 기반 액세스 제어)의 권한을 참조하세요.
Pod 격리 작업이 실패했습니다.
- Kubernetes 클러스터 버전을 확인합니다. Pod 격리 작업은 버전 1.27 이상에서 Kubernetes 클러스터를 지원합니다.
- 필요한 네트워크 플러그 인을 사용하고 있으며 지원되는 최소 버전과 일치하는지 확인합니다. 플러그 인을 검사 플랫폼의 Cloud Shell 액세스하고 명령을 실행하여 네트워크 플러그 인을 검사.
- 대상 Pod가 유효하거나 활성 상태인지 확인합니다.
플랫폼에 따라 다음 단계를 수행하여 Cloud Shell 액세스하고 네트워크 플러그 인을 검사 방법을 알아봅니다.
Microsoft Azure에서
Azure Portal 로그인한 다음 클러스터로 이동합니다.
필수 정보 위에서 연결 단추를 선택하고 지침을 따릅니다.
Cloud Shell 브라우저 아래쪽에 열립니다. 명령줄 인터페이스에서 다음 명령을 실행하여 네트워크 플러그 인을 검사.
kubectl get Pods --all-namespaces -o json | jq -r '.items[].metadata.labels["k8s-app"]' | uniq | grep -E 'azure-npm|calico-node|cilium|aws-node' | head -n 1
결과는 네트워크 정책 요구 사항에서 지정된 플러그 인을 멘션 합니다. 빈 줄은 지원되는 플러그 인이 설치되지 않음을 의미합니다.
Google Cloud Platform에서
Google Cloud Portal에서 클러스터를 탐색합니다.
클러스터 이름 위에 있는 연결을 선택합니다. 표시되는 작은 창에서 다음 명령을 복사하여 로컬 터미널에서 실행합니다.
kubectl get Pods --all-namespaces -o json | jq -r '.items[].metadata.labels["k8s-app"]' | uniq | grep -E 'azure-npm|calico-node|cilium|aws-node' | head -n 1
Cloud Shell 실행을 선택하여 브라우저 아래쪽에서 열리는 셸 세션을 실행할 수도 있습니다. 인터페이스에서 명령을 복사하여 네트워크 플러그 인을 검사 수 있습니다.
결과는 네트워크 정책 요구 사항에서 지정된 플러그 인을 멘션 합니다. 빈 줄은 지원되는 플러그 인이 설치되지 않음을 의미합니다.
Amazon Web Services에서
AWS 클라우드 포털에서 클러스터로 이동합니다.
오른쪽 위 모서리에서 CloudShell 을 선택합니다. Cloud Shell 세션이 브라우저 아래쪽에 열리며, AWS 리소스를 관리하는 명령줄 인터페이스를 제공합니다.
다음 명령을 실행하여 클러스터에 연결합니다.
aws eks --region <cluster region> update-kubeconfig --name <cluster name>**
참고
Calico 및 Cilium 플러그 인에 대해 aws-node가 삭제되거나 비활성화되었는지 확인합니다.
Pod 종료 작업이 실패했습니다.
대상 Pod의 상태가 활성 상태인지 유효한지 확인해야 합니다. Pod가 활성 상태인지 검사 Cloud Shell 다음 명령을 실행합니다.
kubectl get pod <pod-name>