Microsoft 클라우드 보안 벤치마크 규정 준수 기본 제공 이니셔티브에 대한 세부 정보
다음 문서에서는 Azure Policy 규정 준수 기본 제공 이니셔티브 정의가 Microsoft 클라우드 보안 벤치마크의 규정 준수 도메인 및 컨트롤에 매핑되는 방법을 자세히 설명합니다. 이 규정 준수 표준에 대한 자세한 정보는 Microsoft 클라우드 보안 벤치마크를 참조하세요. 소유권을 이해하려면 정책 유형과 클라우드에서의 공동 책임을 검토합니다.
다음은 Microsoft 클라우드 보안 벤치마크 제어에 대한 매핑입니다. 여러 컨트롤이 Azure Policy 이니셔티브 정의를 사용하여 구현됩니다. 전체 이니셔티브 정의를 검토하려면 Azure Portal에서 정책을 열고 정의 페이지를 선택합니다. 그런 다음, Microsoft 클라우드 보안 벤치마크 규정 준수 기본 제공 이니셔티브 정의를 찾아서 선택합니다.
Important
아래의 각 컨트롤은 하나 이상의 Azure Policy 정의와 연결되어 있습니다. 이러한 정책은 컨트롤을 사용한 규정 준수 평가에 도움이 될 수 있지만, 컨트롤과 하나 이상의 정책 간에 일대일 또는 완벽한 일치 관계가 없는 경우도 많습니다. 따라서 Azure Policy의 규정 준수는 정책 정의 자체만 가리킬 뿐, 컨트롤의 모든 요구 사항을 완벽하게 준수한다는 것은 아닙니다. 또한 규정 준수 표준에는 현재 Azure Policy 정의에서 처리되지 않은 컨트롤이 포함되어 있습니다. 따라서 Azure Policy의 규정 준수는 전반적인 규정 준수 상태를 부분적으로 표시할 뿐입니다. 이 규정 준수 표준에 대한 규정 준수 도메인, 컨트롤, Azure Policy 정의 간의 연결은 시간이 지나면 변경될 수 있습니다. 변경 기록을 보려면 GitHub 커밋 기록을 참조하세요.
네트워크 보안
네트워크 구분 경계 설정
ID: Microsoft 클라우드 보안 벤치마크 NS-1 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
가상 머신과 연결된 네트워크 보안 그룹에서 모든 네트워크 포트를 제한해야 함 | Azure Security Center에서 네트워크 보안 그룹의 인바운드 규칙 중 일부가 너무 관대하다는 사실을 식별했습니다. 인바운드 규칙에서 '모두' 또는 '인터넷' 범위에서 들어오는 액세스를 허용해서는 안 됩니다. 그러면 리소스가 공격자의 표적이 될 수 있습니다. | AuditIfNotExists, 사용 안 함 | 3.0.0 |
네트워크 보안 그룹을 사용하여 인터넷 연결 가상 머신을 보호해야 함 | NSG(네트워크 보안 그룹)를 통해 가상 머신에 대한 액세스를 제한하여 잠재적인 위협으로부터 가상 머신을 보호합니다. https://aka.ms/nsg-doc에서 NSG를 통한 트래픽 제어에 대해 자세히 알아보기 | AuditIfNotExists, 사용 안 함 | 3.0.0 |
네트워크 보안 그룹을 사용하여 비인터넷 연결 가상 머신을 보호해야 함 | NSG(네트워크 보안 그룹)를 통해 액세스를 제한하여 잠재적인 위협으로부터 비인터넷 연결 가상 머신을 보호합니다. https://aka.ms/nsg-doc에서 NSG를 통한 트래픽 제어에 대해 자세히 알아보기 | AuditIfNotExists, 사용 안 함 | 3.0.0 |
서브넷을 네트워크 보안 그룹과 연결해야 합니다. | NSG(네트워크 보안 그룹)를 통해 VM에 대한 액세스를 제한하여 잠재적인 위협으로부터 서브넷을 보호합니다. NSG는 서브넷에 대한 네트워크 트래픽을 허용 또는 거부하는 ACL(액세스 제어 목록) 규칙의 목록을 포함합니다. | AuditIfNotExists, 사용 안 함 | 3.0.0 |
네트워크 제어를 사용하여 클라우드 서비스 보호
ID: Microsoft 클라우드 보안 벤치마크 NS-2 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
[사용되지 않음]: Cognitive Services에서 프라이빗 링크를 사용해야 함 | Azure Private Link를 사용하면 원본 또는 대상에 공용 IP 주소가 없어도 가상 네트워크를 Azure 서비스에 연결할 수 있습니다. Private Link 플랫폼은 Azure 백본 네트워크를 통해 소비자와 서비스 간의 연결을 처리합니다. 프라이빗 엔드포인트를 Cognitive Services에 매핑하면 데이터 유출 가능성이 줄어듭니다. https://go.microsoft.com/fwlink/?linkid=2129800에서 프라이빗 링크에 대해 자세히 알아보세요. | 감사, 사용 안 함 | 3.0.1-deprecated |
[미리 보기]: 스토리지 계정 공용 액세스가 허용되지 않아야 함 | Azure Storage의 컨테이너 및 BLOB에 대한 익명 공용 읽기 액세스는 데이터를 공유하는 편리한 방법이지만 보안 위험이 있을 수도 있습니다. 원치 않는 익명 액세스로 인해 발생하는 데이터 위반을 방지하기 위해 Microsoft는 시나리오에 필요한 경우가 아니면 스토리지 계정에 대한 공개 액세스를 방지하는 것이 좋습니다 | 감사, 거부, 사용 안 함 | 3.1.0-preview |
API Management 서비스에서 가상 네트워크를 사용해야 함 | Azure Virtual Network 배포는 향상된 보안, 격리를 제공하며, 액세스를 제어하는 인터넷 라우팅이 불가능한 네트워크에 API Management 서비스를 배치할 수 있습니다. 그런 다음, 다양한 VPN 기술을 사용하여 이러한 네트워크를 온-프레미스 네트워크에 연결할 수 있으며, 이를 통해 네트워크 및/또는 온-프레미스 내에서 백 엔드 서비스에 액세스할 수 있습니다. 개발자 포털 및 API 게이트웨이를 인터넷에서 또는 가상 네트워크 내에서만 액세스할 수 있게 구성할 수 있습니다. | 감사, 거부, 사용 안 함 | 1.0.2 |
API Management에서 서비스 구성 엔드포인트에 대한 공용 네트워크 액세스를 사용하지 않도록 설정해야 함 | API Management 서비스의 보안을 개선하려면 직접 액세스 관리 API, Git 구성 관리 엔드포인트 또는 자체 호스트 게이트웨이 구성 엔드포인트와 같은 서비스 구성 엔드포인트에 대한 연결을 제한합니다. | AuditIfNotExists, 사용 안 함 | 1.0.1 |
App Configuration은 프라이빗 링크를 사용해야 함 | Azure Private Link를 통해 원본 또는 대상의 공용 IP 주소가 없어도 Azure 서비스에 가상 네트워크를 연결할 수 있습니다. 프라이빗 링크 플랫폼은 Azure 백본 네트워크를 통해 소비자와 서비스 간의 연결을 처리합니다. 전체 서비스가 아닌 앱 구성 인스턴스에 프라이빗 엔드포인트를 매핑하면 데이터 유출 위험으로부터 보호받을 수 있습니다. https://aka.ms/appconfig/private-endpoint에서 자세히 알아보세요. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
권한 있는 IP 범위는 Kubernetes Services에 정의되어야 함 | 특정 범위의 IP 주소에만 API 액세스 권한을 부여하여 Kubernetes Service Management API에 대한 액세스를 제한합니다. 허용된 네트워크의 애플리케이션만 클러스터에 액세스할 수 있도록 인증된 IP 범위에 대한 액세스를 제한하는 것이 좋습니다. | 감사, 사용 안 함 | 2.0.1 |
Azure AI 서비스 리소스는 네트워크 액세스를 제한해야 함 | 네트워크 액세스를 제한하면 허용된 네트워크만 서비스에 액세스할 수 있도록 할 수 있습니다. 이는 허용된 네트워크의 애플리케이션만 Azure AI 서비스에 액세스할 수 있도록 네트워크 규칙을 구성하여 달성할 수 있습니다. | 감사, 거부, 사용 안 함 | 3.2.0 |
Azure AI 서비스 리소스는 Azure Private Link를 사용해야 함 | Azure Private Link를 통해 원본 또는 대상의 공용 IP 주소가 없어도 Azure 서비스에 가상 네트워크를 연결할 수 있습니다. Private Link 플랫폼은 Azure 백본 네트워크를 통해 소비자와 서비스 간의 연결을 처리하는 방식으로 데이터 유출 위험을 줄입니다. https://aka.ms/AzurePrivateLink/Overview에서 프라이빗 링크에 대해 자세히 알아보세요. | 감사, 사용 안 함 | 1.0.0 |
Azure Cache for Redis는 프라이빗 링크를 사용해야 함 | 프라이빗 엔드포인트를 사용하면 원본 또는 대상의 공용 IP 주소가 없어도 Azure 서비스에 가상 네트워크를 연결할 수 있습니다. 프라이빗 엔드포인트를 Azure Cache for Redis 인스턴스에 매핑하면 데이터 누출 위험이 줄어듭니다. https://docs.microsoft.com/azure/azure-cache-for-redis/cache-private-link에서 자세히 알아보세요. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Azure Cosmos DB 계정에 방화벽 규칙이 있어야 함 | 권한 없는 원본의 트래픽을 방지하기 위해 Azure Cosmos DB 계정에 방화벽 규칙을 정의해야 합니다. 가상 네트워크 필터를 사용하도록 정의된 IP 규칙이 하나 이상 있는 계정은 규정을 준수하는 것으로 간주됩니다. 퍼블릭 액세스를 비활성화한 계정도 규정을 준수하는 것으로 간주됩니다. | 감사, 거부, 사용 안 함 | 2.1.0 |
Azure Cosmos DB는 공용 네트워크 액세스를 사용하지 않도록 설정해야 함 | 공용 네트워크 액세스를 사용하지 않도록 설정하면 CosmosDB 계정이 공용 인터넷에 노출되지 않도록 하여 보안이 향상됩니다. 프라이빗 엔드포인트를 만들면 CosmosDB 계정의 노출을 제한할 수 있습니다. https://docs.microsoft.com/azure/cosmos-db/how-to-configure-private-endpoints#blocking-public-network-access-during-account-creation에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.0.0 |
Azure Databricks 클러스터는 공용 IP를 사용하지 않도록 설정해야 함 | Azure Databricks 작업 영역에서 클러스터의 공용 IP를 사용하지 않도록 설정하면 클러스터가 공용 인터넷에 노출되지 않도록 하여 보안이 강화됩니다. https://learn.microsoft.com/azure/databricks/security/secure-cluster-connectivity에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.0.1 |
Azure Databricks 작업 영역은 가상 네트워크에 있어야 함 | Azure Virtual Network는 Azure Databricks 작업 영역 및 서브넷에 대한 향상된 보안 및 격리뿐만 아니라 서브넷, 액세스 제어 정책, 액세스를 추가로 제한하는 기타 기능을 제공합니다. https://docs.microsoft.com/azure/databricks/administration-guide/cloud-configurations/azure/vnet-inject에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.0.2 |
Azure Databricks 작업 영역은 공용 네트워크 액세스를 사용하지 않도록 설정해야 함 | 공용 네트워크 액세스를 사용하지 않도록 설정하면 리소스가 공용 인터넷에 노출되지 않도록 하여 보안이 향상됩니다. 대신 프라이빗 엔드포인트를 만들어 리소스 노출을 제어할 수 있습니다. https://learn.microsoft.com/azure/databricks/administration-guide/cloud-configurations/azure/private-link에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.0.1 |
Azure Databricks 작업 영역은 프라이빗 링크를 사용해야 함 | Azure Private Link를 사용하면 원본 또는 대상에 공용 IP 주소가 없어도 가상 네트워크를 Azure 서비스에 연결할 수 있습니다. Private Link 플랫폼은 Azure 백본 네트워크를 통해 소비자와 서비스 간의 연결을 처리합니다. 프라이빗 엔드포인트를 Azure Databricks 작업 영역에 매핑하면 데이터 유출 위험을 줄일 수 있습니다. https://aka.ms/adbpe에서 프라이빗 링크에 대해 자세히 알아보세요. | 감사, 사용 안 함 | 1.0.2 |
Azure Event Grid 도메인은 프라이빗 링크를 사용해야 함 | Azure Private Link를 통해 원본 또는 대상의 공용 IP 주소가 없어도 Azure 서비스에 가상 네트워크를 연결할 수 있습니다. Private Link 플랫폼은 Azure 백본 네트워크를 통해 소비자와 서비스 간의 연결을 처리합니다. 전체 서비스가 아닌 Event Grid 도메인에 프라이빗 엔드포인트를 매핑하면 데이터 유출 위험으로부터 보호받을 수 있습니다. https://aka.ms/privateendpoints에서 자세히 알아보세요. | 감사, 사용 안 함 | 1.0.2 |
Azure Event Grid 토픽은 프라이빗 링크를 사용해야 함 | Azure Private Link를 통해 원본 또는 대상의 공용 IP 주소가 없어도 Azure 서비스에 가상 네트워크를 연결할 수 있습니다. Private Link 플랫폼은 Azure 백본 네트워크를 통해 소비자와 서비스 간의 연결을 처리합니다. 전체 서비스가 아닌 Event Grid 토픽에 프라이빗 엔드포인트를 매핑하면 데이터 유출 위험으로부터 보호받을 수 있습니다. https://aka.ms/privateendpoints에서 자세히 알아보세요. | 감사, 사용 안 함 | 1.0.2 |
Azure Key Vault에는 방화벽이 활성화되어 있어야 합니다. | 키 자격 증명 모음이 기본적으로 공용 IP에 액세스할 수 없도록 키 자격 증명 모음 방화벽을 사용하도록 설정합니다. 필요에 따라, 특정 IP 범위를 구성하여 해당 네트워크에 대한 액세스를 제한할 수 있습니다. https://docs.microsoft.com/azure/key-vault/general/network-security에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 3.2.1 |
Azure Key Vault에서 프라이빗 링크를 사용해야 함 | Azure Private Link를 사용하면 원본 또는 대상에 공용 IP 주소가 없어도 가상 네트워크를 Azure 서비스에 연결할 수 있습니다. Private Link 플랫폼은 Azure 백본 네트워크를 통해 소비자와 서비스 간의 연결을 처리합니다. 프라이빗 엔드포인트를 키 자격 증명 모음에 매핑하면 데이터 유출 위험을 줄일 수 있습니다. https://aka.ms/akvprivatelink에서 프라이빗 링크에 대해 자세히 알아보세요. | [parameters('audit_effect')] | 1.2.1 |
Azure Machine Learning 컴퓨팅은 가상 네트워크에 있어야 합니다. | Azure Virtual Network는 Azure Machine Learning 컴퓨팅 클러스터 및 인스턴스에 대한 강화된 보안 및 격리는 물론 서브넷, 액세스 제어 정책 및 액세스를 추가로 제한하는 기타 기능을 제공합니다. 컴퓨팅이 가상 네트워크로 구성된 경우 공개적으로 주소를 지정할 수 없으며 가상 네트워크 내의 가상 머신 및 애플리케이션에서만 액세스할 수 있습니다. | 감사, 사용 안 함 | 1.0.1 |
Azure Machine Learning 작업 영역은 공용 네트워크 액세스를 사용하지 않도록 설정해야 함 | 공용 네트워크 액세스를 사용하지 않도록 설정하면 Machine Learning 작업 영역이 공용 인터넷에 노출되지 않으므로 보안이 강화됩니다. 대신 프라이빗 엔드포인트를 만들어 작업 영역의 노출을 제어할 수 있습니다. 자세한 내용은 https://learn.microsoft.com/azure/machine-learning/how-to-configure-private-link?view=azureml-api-2&tabs=azure-portal을 참조하세요. | 감사, 거부, 사용 안 함 | 2.0.1 |
Azure Machine Learning 작업 영역은 프라이빗 링크를 사용해야 함 | Azure Private Link를 통해 원본 또는 대상의 공용 IP 주소가 없어도 Azure 서비스에 가상 네트워크를 연결할 수 있습니다. Private Link 플랫폼은 Azure 백본 네트워크를 통해 소비자와 서비스 간의 연결을 처리합니다. 프라이빗 엔드포인트를 Azure Machine Learning 작업 영역에 매핑하면 데이터 유출 위험이 줄어듭니다. https://docs.microsoft.com/azure/machine-learning/how-to-configure-private-link에서 프라이빗 링크에 대해 자세히 알아보세요. | 감사, 사용 안 함 | 1.0.0 |
Azure SignalR Service는 프라이빗 링크를 사용해야 함 | Azure Private Link를 통해 원본 또는 대상의 공용 IP 주소가 없어도 Azure 서비스에 가상 네트워크를 연결할 수 있습니다. 프라이빗 링크 플랫폼은 Azure 백본 네트워크를 통해 소비자와 서비스 간의 연결을 처리합니다. 프라이빗 엔드포인트를 전체 서비스가 아닌 Azure SignalR Service 리소스에 매핑하면 데이터 유출 위험을 줄일 수 있습니다. https://aka.ms/asrs/privatelink에서 프라이빗 링크에 대해 자세히 알아보세요. | 감사, 사용 안 함 | 1.0.0 |
Azure Spring Cloud는 네트워크 주입을 사용해야 함 | Azure Spring Cloud 인스턴스는 다음과 같은 용도로 가상 네트워크 주입을 사용해야 합니다. 1. Azure Spring Cloud를 인터넷에서 격리합니다. 2. Azure Spring Cloud를 사용하여 온-프레미스 데이터 센터의 시스템 또는 다른 가상 네트워크의 Azure 서비스와 상호 작용할 수 있습니다. 3. 고객이 Azure Spring Cloud에 대한 인바운드 및 아웃바운드 네트워크 통신을 제어할 수 있습니다. | 감사, 사용 안 함, 거부 | 1.2.0 |
Azure SQL Managed Instance에서 공용 네트워크 액세스를 사용하지 않도록 설정해야 함 | Azure SQL Managed Instance에서 공용 네트워크 액세스(퍼블릭 엔드포인트)를 사용하지 않도록 설정하면 가상 네트워크 또는 프라이빗 엔드포인트 내에서만 액세스할 수 있도록 보장함으로써 보안이 향상됩니다. 공용 네트워크 액세스에 대해 자세히 알아보려면 https://aka.ms/mi-public-endpoint를 참조하세요. | 감사, 거부, 사용 안 함 | 1.0.0 |
컨테이너 레지스트리는 무제한 네트워크 액세스를 허용하지 않아야 함 | 기본적으로 Azure Container Registry는 모든 네트워크에 있는 호스트로부터의 인터넷 연결을 수락합니다. 잠재적인 위협으로부터 레지스트리를 보호하려면 특정 프라이빗 엔드포인트, 공용 IP 주소 또는 주소 범위에서만 액세스를 허용합니다. 레지스트리에 네트워크 규칙이 구성되어 있지 않으면 비정상 리소스에 나타납니다. Container Registry 네트워크 규칙에 대한 자세한 내용은 https://aka.ms/acr/privatelink, https://aka.ms/acr/portal/public-network 및 https://aka.ms/acr/vnet을 참조하세요. | 감사, 거부, 사용 안 함 | 2.0.0 |
컨테이너 레지스트리는 프라이빗 링크를 사용해야 함 | Azure Private Link를 통해 원본 또는 대상의 공용 IP 주소가 없어도 Azure 서비스에 가상 네트워크를 연결할 수 있습니다. 프라이빗 링크 플랫폼은 Azure 백본 네트워크를 통해 소비자와 서비스 간의 연결을 처리합니다. 전체 서비스 대신 프라이빗 엔드포인트를 컨테이너 레지스트리에 매핑하면 데이터 유출 위험으로부터 보호받을 수 있습니다. https://aka.ms/acr/private-link에서 자세히 알아보세요. | 감사, 사용 안 함 | 1.0.1 |
CosmosDB 계정은 프라이빗 링크를 사용해야 함 | Azure Private Link를 통해 원본 또는 대상의 공용 IP 주소가 없어도 Azure 서비스에 가상 네트워크를 연결할 수 있습니다. Private Link 플랫폼은 Azure 백본 네트워크를 통해 소비자와 서비스 간의 연결을 처리합니다. 프라이빗 엔드포인트를 CosmosDB 계정에 매핑하면 데이터 유출 위험이 줄어듭니다. https://docs.microsoft.com/azure/cosmos-db/how-to-configure-private-endpoints에서 프라이빗 링크에 대해 자세히 알아보세요. | 감사, 사용 안 함 | 1.0.0 |
Azure SQL Database에서 프라이빗 엔드포인트 연결을 사용하도록 설정해야 함 | 프라이빗 엔드포인트 연결은 Azure SQL Database에 대한 프라이빗 연결을 사용하도록 설정하여 보안 통신을 강화합니다. | 감사, 사용 안 함 | 1.1.0 |
프라이빗 엔드포인트를 MariaDB 서버에서 사용할 수 있어야 합니다. | 프라이빗 엔드포인트 연결은 Azure Database for MariaDB에 대한 프라이빗 연결을 사용하도록 설정하여 보안 통신을 강화합니다. 알려진 네트워크에서 들어오는 트래픽에만 액세스할 수 있고 Azure 내부를 비롯한 다른 IP 주소의 액세스를 차단하도록 프라이빗 엔드포인트 연결을 구성합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
프라이빗 엔드포인트를 MySQL 서버에서 사용할 수 있어야 합니다. | 프라이빗 엔드포인트 연결은 Azure Database for MySQL에 대한 프라이빗 연결을 사용하도록 설정하여 보안 통신을 강화합니다. 알려진 네트워크에서 들어오는 트래픽에만 액세스할 수 있고 Azure 내부를 비롯한 다른 IP 주소의 액세스를 차단하도록 프라이빗 엔드포인트 연결을 구성합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
프라이빗 엔드포인트를 PostgreSQL 서버에서 사용할 수 있어야 합니다. | 프라이빗 엔드포인트 연결은 Azure Database for PostgreSQL에 대한 프라이빗 연결을 사용하도록 설정하여 보안 통신을 강화합니다. 알려진 네트워크에서 들어오는 트래픽에만 액세스할 수 있고 Azure 내부를 비롯한 다른 IP 주소의 액세스를 차단하도록 프라이빗 엔드포인트 연결을 구성합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
Azure SQL Database에서 공용 네트워크 액세스를 사용하지 않도록 설정해야 함 | 공용 네트워크 액세스 속성을 사용하지 않도록 설정하면 프라이빗 엔드포인트에서만 Azure SQL Database에 액세스할 수 있도록 하여 보안이 향상됩니다. 이 구성은 IP 또는 가상 네트워크 기반 방화벽 규칙과 일치하는 모든 로그인을 거부합니다. | 감사, 거부, 사용 안 함 | 1.1.0 |
MariaDB 서버에 대해 공용 네트워크 액세스를 사용하지 않도록 설정해야 합니다. | 공용 네트워크 액세스 속성을 사용하지 않도록 설정하여 보안을 강화하고 프라이빗 엔드포인트에서만 Azure Database for MariaDB에 액세스할 수 있도록 합니다. 이 구성은 Azure IP 범위를 벗어나는 공용 주소 공간의 액세스를 엄격하게 차단하고, IP 또는 가상 네트워크 기반 방화벽 규칙에 부합하는 모든 로그인을 거부합니다. | 감사, 거부, 사용 안 함 | 2.0.0 |
MySQL 서버에 대해 공용 네트워크 액세스를 사용하지 않도록 설정해야 합니다. | 공용 네트워크 액세스 속성을 사용하지 않도록 설정하여 보안을 강화하고 프라이빗 엔드포인트에서만 Azure Database for MySQL에 액세스할 수 있도록 합니다. 이 구성은 Azure IP 범위를 벗어나는 공용 주소 공간의 액세스를 엄격하게 차단하고, IP 또는 가상 네트워크 기반 방화벽 규칙에 부합하는 모든 로그인을 거부합니다. | 감사, 거부, 사용 안 함 | 2.0.0 |
PostgreSQL 서버에 대해 공용 네트워크 액세스를 사용하지 않도록 설정해야 합니다. | 공용 네트워크 액세스 속성을 사용하지 않도록 설정하여 보안을 강화하고 프라이빗 엔드포인트에서만 Azure Database for PostgreSQL에 액세스할 수 있도록 합니다. 이 구성은 Azure IP 범위를 벗어나는 공용 주소 공간에서의 액세스를 사용하지 않도록 설정하고, IP 또는 가상 네트워크 기반 방화벽 규칙과 일치하는 모든 로그인을 거부합니다. | 감사, 거부, 사용 안 함 | 2.0.1 |
스토리지 계정은 네트워크 액세스를 제한해야 함 | 스토리지 계정에 대한 네트워크 액세스가 제한되어야 합니다. 허용되는 네트워크의 애플리케이션만 스토리지 계정에 액세스할 수 있도록 네트워크 규칙을 구성합니다. 특정 인터넷 또는 온-프레미스 클라이언트의 연결을 허용하기 위해 특정 Azure 가상 네트워크 또는 공용 인터넷 IP 주소 범위의 트래픽에 대한 액세스 권한을 부여할 수 있습니다. | 감사, 거부, 사용 안 함 | 1.1.1 |
스토리지 계정은 가상 네트워크 규칙을 사용하여 네트워크 액세스를 제한해야 함 | IP 기반 필터링 대신 기본 방법으로 가상 네트워크 규칙을 사용하여 잠재적인 위협으로부터 스토리지 계정을 보호합니다. IP 기반 필터링을 사용하지 않도록 설정하면 공용 IP에서 스토리지 계정에 액세스할 수 없습니다. | 감사, 거부, 사용 안 함 | 1.0.1 |
스토리지 계정은 프라이빗 링크를 사용해야 함 | Azure Private Link를 통해 원본 또는 대상의 공용 IP 주소가 없어도 Azure 서비스에 가상 네트워크를 연결할 수 있습니다. Private Link 플랫폼은 Azure 백본 네트워크를 통해 소비자와 서비스 간의 연결을 처리합니다. 프라이빗 엔드포인트를 스토리지 계정에 매핑하면 데이터 유출 위험이 줄어듭니다. https://aka.ms/azureprivatelinkoverview에서 프라이빗 링크에 대해 자세히 알아보세요. | AuditIfNotExists, 사용 안 함 | 2.0.0 |
VM Image Builder 템플릿은 프라이빗 링크를 사용해야 함 | Azure Private Link를 통해 원본 또는 대상의 공용 IP 주소가 없어도 Azure 서비스에 가상 네트워크를 연결할 수 있습니다. Private Link 플랫폼은 Azure 백본 네트워크를 통해 소비자와 서비스 간의 연결을 처리합니다. 프라이빗 엔드포인트를 VM Image Builder에 매핑하여 리소스를 구성하면 데이터 누출 위험이 줄어듭니다. https://docs.microsoft.com/azure/virtual-machines/linux/image-builder-networking#deploy-using-an-existing-vnet에서 프라이빗 링크에 대해 자세히 알아보세요. | 감사, 사용 안 함, 거부 | 1.1.0 |
엔터프라이즈 네트워크의 에지에 방화벽 배포
ID: Microsoft 클라우드 보안 벤치마크 NS-3 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
[미리 보기]: 모든 인터넷 트래픽은 배포된 Azure Firewall을 통해 라우팅되어야 함 | Azure Security Center에서 일부 서브넷이 차세대 방화벽으로 보호되지 않는 것으로 확인되었습니다. Azure Firewall 또는 지원되는 차세대 방화벽으로 액세스를 제한하여 잠재적인 위협으로부터 서브넷을 보호합니다. | AuditIfNotExists, 사용 안 함 | 3.0.0-preview |
가상 머신에서 IP 전달을 사용하지 않도록 설정해야 함 | 가상 머신의 NIC에서 IP 전달을 사용하도록 설정하면 머신이 다른 대상으로 주소가 지정된 트래픽을 수신할 수 있습니다. IP 전달은 거의 필요하지 않으므로(예: VM을 네트워크 가상 어플라이언스로 사용하는 경우), 네트워크 보안 팀에서 검토해야 합니다. | AuditIfNotExists, 사용 안 함 | 3.0.0 |
가상 머신의 관리 포트는 Just-In-Time 네트워크 액세스 제어로 보호해야 함 | 가능한 네트워크 JIT(Just In Time) 액세스는 Azure Security Center에서 권장 사항으로 모니터링됩니다. | AuditIfNotExists, 사용 안 함 | 3.0.0 |
가상 머신에서 관리 포트를 닫아야 합니다. | 열려 있는 원격 관리 포트는 위험도가 높은 인터넷 기반 공격에 VM을 노출시킵니다. 이러한 공격은 자격 증명을 무차별적으로 대입하여 머신에 대한 관리자 액세스 권한을 획득하려고 시도합니다. | AuditIfNotExists, 사용 안 함 | 3.0.0 |
DDoS Protection 배포
ID: Microsoft 클라우드 보안 벤치마크 NS-5 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
Azure DDoS Protection을 사용하도록 설정해야 함 | 공용 IP를 사용하는 애플리케이션 게이트웨이의 일부인 서브넷이 포함된 모든 가상 네트워크에 DDoS 보호를 사용하도록 설정해야 합니다. | AuditIfNotExists, 사용 안 함 | 3.0.1 |
웹 애플리케이션 방화벽 배포
ID: Microsoft 클라우드 보안 벤치마크 NS-6 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
Azure Front Door 진입점에 대해 Azure Web Application Firewall을 사용하도록 설정해야 함 | 들어오는 트래픽의 추가 검사를 위해 공용 웹 애플리케이션 앞에 Azure WAF(웹 애플리케이션 방화벽)를 배포합니다. WAF(웹 애플리케이션 방화벽)는 SQL 삽입, 교차 사이트 스크립팅, 로컬 및 원격 파일 실행과 같은 일반적인 악용과 취약성으로부터 웹 애플리케이션을 중앙 집중식으로 보호합니다. 사용자 지정 규칙을 통해 국가, IP 주소 범위 및 기타 http 매개 변수별로 웹 애플리케이션에 대한 액세스를 제한할 수도 있습니다. | 감사, 거부, 사용 안 함 | 1.0.2 |
Application Gateway에 WAF(웹 애플리케이션 방화벽)를 사용하도록 설정해야 함 | 들어오는 트래픽의 추가 검사를 위해 공용 웹 애플리케이션 앞에 Azure WAF(웹 애플리케이션 방화벽)를 배포합니다. WAF(웹 애플리케이션 방화벽)는 SQL 삽입, 교차 사이트 스크립팅, 로컬 및 원격 파일 실행과 같은 일반적인 악용과 취약성으로부터 웹 애플리케이션을 중앙 집중식으로 보호합니다. 사용자 지정 규칙을 통해 국가, IP 주소 범위 및 기타 http 매개 변수별로 웹 애플리케이션에 대한 액세스를 제한할 수도 있습니다. | 감사, 거부, 사용 안 함 | 2.0.0 |
안전하지 않은 서비스와 프로토콜을 검색 및 사용하지 않도록 설정
ID: Microsoft 클라우드 보안 벤치마크 NS-8 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
App Service 앱은 최신 TLS 버전을 사용해야 함 | 주기적으로 보안 결함이나 추가 기능 및 속도 향상을 위해 TLS용 최신 버전이 릴리스됩니다. 보안 픽스(있는 경우) 및/또는 최신 버전의 새로운 기능을 활용하려면 App Service 앱용 최신 TLS 버전으로 업그레이드합니다. | AuditIfNotExists, 사용 안 함 | 2.1.0 |
함수 앱은 최신 TLS 버전을 사용해야 함 | 주기적으로 보안 결함이나 추가 기능 및 속도 향상을 위해 TLS용 최신 버전이 릴리스됩니다. 보안 픽스(있는 경우) 및/또는 최신 버전의 새로운 기능을 활용하려면 기능 앱용 최신 TLS 버전으로 업그레이드합니다. | AuditIfNotExists, 사용 안 함 | 2.1.0 |
ID 관리
중앙 ID 및 인증 시스템 사용
ID: Microsoft 클라우드 보안 벤치마크 IM-1 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
[미리 보기]: Azure MySQL 유연한 서버에 Microsoft Entra 전용 인증이 사용하도록 설정되어 있어야 합니다. | 로컬 인증 방법을 사용하지 않도록 설정하고 Microsoft Entra 인증만 허용하면 Microsoft Entra ID를 통해서만 Azure PostgreSQL 유연한 서버에 액세스할 수 있으므로 보안이 개선됩니다. | 감사, 사용 안 함 | 1.0.0 - 미리 보기 |
PostgreSQL 서버에 대해 Microsoft Entra 관리자를 프로비전해야 합니다. | Microsoft Entra 인증을 사용하도록 설정하기 위해 PostgreSQL 서버에 대한 Microsoft Entra 관리자 프로비전을 감사합니다. Microsoft Entra 인증을 사용하면 데이터베이스 사용자 및 기타 Microsoft 서비스의 권한을 간편하게 관리하고 ID를 한 곳에서 집중적으로 관리할 수 있습니다. | AuditIfNotExists, 사용 안 함 | 1.0.1 |
SQL 서버에 대해 Azure Active Directory 관리자를 프로비저닝해야 합니다. | SQL 서버에 대한 Azure Active Directory 관리자 프로비전을 감사하여 Azure AD 인증을 활성화합니다. Azure AD 인증을 사용하면 데이터베이스 사용자 및 기타 Microsoft 서비스의 권한을 간편하게 관리하고 ID를 한 곳에서 집중적으로 관리할 수 있습니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Azure AI 서비스 리소스에는 키 액세스가 사용하지 않도록 설정되어야 함(로컬 인증 사용하지 않도록 설정) | 보안을 위해 키 액세스(로컬 인증)를 사용하지 않도록 설정하는 것이 좋습니다. 일반적으로 개발/테스트에 사용되는 Azure OpenAI Studio에는 키 액세스가 필요하며 키 액세스가 사용하지 않도록 설정되면 작동하지 않습니다. 사용하지 않도록 설정한 후에는 Microsoft Entra ID가 유일한 액세스 방법이 되어 최소 권한 원칙을 유지하고 세부적인 제어를 허용합니다. https://aka.ms/AI/auth에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.1.0 |
Azure Machine Learning 컴퓨팅에는 로컬 인증 방법이 사용하지 않도록 설정되어야 합니다. | 로컬 인증 방법을 사용하지 않도록 설정하면 Machine Learning 컴퓨팅에서 인증에만 Azure Active Directory ID를 요구하도록 하여 보안이 향상됩니다. https://aka.ms/azure-ml-aad-policy에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 2.1.0 |
Azure SQL Database에는 Microsoft Entra 전용 인증이 사용하도록 설정되어 있어야 합니다. | Microsoft Entra 전용 인증을 사용하려면 Azure SQL 논리 서버가 필요합니다. 이 정책은 로컬 인증이 사용하도록 설정된 상태에서 서버가 만들어지는 것을 차단하지 않습니다. 만든 후 리소스에 대한 로컬 인증이 사용하도록 설정되지 않도록 차단합니다. 두 가지를 모두 요구하는 대신 'Microsoft Entra 전용 인증' 이니셔티브를 사용하는 것이 좋습니다. https://aka.ms/adonlycreate에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.0.0 |
Azure SQL Database는 만드는 동안 Microsoft Entra 전용 인증을 사용하도록 설정해야 합니다. | Microsoft Entra 전용 인증을 사용하여 Azure SQL 논리 서버를 만들어야 합니다. 이 정책은 만든 후 리소스에 대한 로컬 인증이 다시 사용하도록 설정되는 것을 차단하지 않습니다. 두 가지를 모두 요구하는 대신 'Microsoft Entra 전용 인증' 이니셔티브를 사용하는 것이 좋습니다. https://aka.ms/adonlycreate에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.2.0 |
Azure SQL Managed Instance에는 Microsoft Entra 전용 인증이 사용하도록 설정되어 있어야 합니다. | Microsoft Entra 전용 인증을 사용하려면 Azure SQL Managed Instance가 필요합니다. 이 정책은 로컬 인증이 사용하도록 설정된 상태에서 Azure SQL Managed Instance가 만들어지는 것을 차단하지 않습니다. 만든 후 리소스에 대한 로컬 인증이 사용하도록 설정되지 않도록 차단합니다. 두 가지를 모두 요구하는 대신 'Microsoft Entra 전용 인증' 이니셔티브를 사용하는 것이 좋습니다. https://aka.ms/adonlycreate에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.0.0 |
Azure SQL Managed Instance는 만드는 동안 Microsoft Entra 전용 인증을 사용하도록 설정해야 합니다. | Microsoft Entra 전용 인증을 사용하여 Azure SQL Managed Instance를 만들어야 합니다. 이 정책은 만든 후 리소스에 대한 로컬 인증이 다시 사용하도록 설정되는 것을 차단하지 않습니다. 두 가지를 모두 요구하는 대신 'Microsoft Entra 전용 인증' 이니셔티브를 사용하는 것이 좋습니다. https://aka.ms/adonlycreate에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.2.0 |
Cosmos DB 데이터베이스 계정은 로컬 인증 방법을 사용하지 않도록 설정해야 합니다 | 로컬 인증 방법을 사용하지 않도록 설정하면 Cosmos DB 데이터베이스 계정에 인증을 위해 Azure Active Directory ID가 독점적으로 필요하도록 하여 보안이 향상됩니다. https://docs.microsoft.com/azure/cosmos-db/how-to-setup-rbac#disable-local-auth에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.1.0 |
Service Fabric 클러스터는 클라이언트 인증에 대해서만 Azure Active Directory를 사용해야 함 | Service Fabric에서 Azure Active Directory를 통한 클라이언트 인증의 사용만 감사 | 감사, 거부, 사용 안 함 | 1.1.0 |
스토리지 계정은 공유 키 액세스를 차단해야 함 | 스토리지 계정에 대한 요청을 권한 부여하는 Azure AD(Azure Active Directory)의 감사 요구 사항입니다. 기본적으로 요청은 Azure Active Directory 자격 증명을 사용하거나 공유 키 권한 부여를 위한 계정 액세스 키를 사용하여 권한을 부여할 수 있습니다. 이러한 두 가지 유형의 권한 부여 중 Azure AD는 공유 키보다 뛰어난 보안과 사용 편의성을 제공하며 Microsoft에서 권장합니다. | 감사, 거부, 사용 안 함 | 2.0.0 |
Synapse 작업 영역에는 Microsoft Entra 전용 인증이 사용하도록 설정되어 있어야 합니다. | Microsoft Entra 전용 인증을 사용하려면 Synapse 작업 영역이 필요합니다. 이 정책은 로컬 인증이 사용하도록 설정된 작업 영역이 만들어지는 것을 차단하지 않습니다. 만든 후 리소스에 대한 로컬 인증이 사용하도록 설정되지 않도록 차단합니다. 두 가지를 모두 요구하는 대신 'Microsoft Entra 전용 인증' 이니셔티브를 사용하는 것이 좋습니다. https://aka.ms/Synapse에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.0.0 |
Synapse 작업 영역은 작업 영역을 만드는 동안 인증을 위해 Microsoft Entra ID만 사용해야 합니다. | Microsoft Entra 전용 인증을 사용하여 Synapse 작업 영역을 만들어야 합니다. 이 정책은 만든 후 리소스에 대한 로컬 인증이 다시 사용하도록 설정되는 것을 차단하지 않습니다. 두 가지를 모두 요구하는 대신 'Microsoft Entra 전용 인증' 이니셔티브를 사용하는 것이 좋습니다. https://aka.ms/Synapse에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.2.0 |
VPN 게이트웨이는 지점 및 사이트 간 사용자에 대해 Azure AD(Azure Active Directory) 인증만 사용해야 함 | 로컬 인증 방법을 사용하지 않도록 설정하면 VPN Gateway가 인증에 Azure Active Directory ID만 사용하도록 하여 보안이 향상됩니다. https://docs.microsoft.com/azure/vpn-gateway/openvpn-azure-ad-tenant에서 Azure AD 인증에 대해 자세히 알아봅니다. | 감사, 거부, 사용 안 함 | 1.0.0 |
안전하게 자동으로 애플리케이션 ID 관리
ID: Microsoft 클라우드 보안 벤치마크 IM-3 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
App Service 앱에서 관리 ID를 사용해야 함 | 인증 보안 강화를 위해 관리 ID 사용 | AuditIfNotExists, 사용 안 함 | 3.0.0 |
함수 앱에서 관리 ID를 사용해야 함 | 인증 보안 강화를 위해 관리 ID 사용 | AuditIfNotExists, 사용 안 함 | 3.0.0 |
가상 머신의 게스트 구성 확장은 시스템이 할당한 관리 ID를 사용하여 배포해야 함 | 게스트 구성 확장에는 시스템이 할당한 관리 ID가 필요합니다. 게스트 구성 확장이 설치되어 있지만 시스템이 할당한 관리 ID가 없는 경우 이 정책 범위에 속한 Azure 가상 머신은 비준수입니다. https://aka.ms/gcpol에서 자세히 알아보세요. | AuditIfNotExists, 사용 안 함 | 1.0.1 |
서버 및 서비스 인증
ID: Microsoft 클라우드 보안 벤치마크 IM-4 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
Azure API Management의 API 엔드포인트를 인증해야 함 | Azure API Management 내에 게시된 API 엔드포인트는 보안 위험을 최소화하기 위해 인증을 적용해야 합니다. 인증 메커니즘이 잘못 구현되거나 누락된 경우가 있습니다. 이를 통해 공격자는 구현 결함을 악용하고 데이터에 액세스할 수 있습니다. 손상된 사용자 인증에 대한 OWASP API 위협에 대한 자세한 내용은 여기(https://learn.microsoft.com/azure/api-management/mitigate-owasp-api-threats#broken-user-authentication)를 참조하세요. | AuditIfNotExists, 사용 안 함 | 1.0.1 |
API 백 엔드에 대한 API Management 호출을 인증해야 함 | API Management에서 백 엔드로의 호출은 인증서 또는 자격 증명을 통해 어떤 형태의 인증을 사용해야 합니다. Service Fabric 백 엔드에는 적용되지 않습니다. | 감사, 사용 안 함, 거부 | 1.0.1 |
API 백 엔드에 대한 API Management 호출은 인증서 지문 또는 이름 유효성 검사를 바이패스해서는 안 됨 | API 보안을 향상하려면 API Management에서 모든 API 호출에 대한 백 엔드 서버 인증서의 유효성을 검사해야 합니다. SSL 인증서 지문 및 이름 유효성 검사를 사용하도록 설정합니다. | 감사, 사용 안 함, 거부 | 1.0.2 |
Azure SQL Database는 TLS 버전 1.2 이상을 실행해야 합니다. | TLS 버전을 1.2 이상으로 설정하면 TLS 1.2 이상을 사용하는 클라이언트에서만 Azure SQL Database에 액세스할 수 있으므로 보안이 향상됩니다. 1.2 미만의 TLS 버전은 보안 취약성이 잘 문서화되었기 때문에 사용하지 않는 것이 좋습니다. | 감사, 사용 안 함, 거부 | 2.0.0 |
강력한 인증 컨트롤 사용
ID: Microsoft 클라우드 보안 벤치마크 IM-6 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
Azure 리소스에 대한 소유자 권한이 있는 계정은 MFA를 사용하도록 설정해야 함 | 계정 또는 리소스 위반을 방지하려면 소유자 권한이 있는 모든 구독 계정에 대해 MFA(Multi-Factor Authentication)를 사용하도록 설정해야 합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Azure 리소스에 대한 읽기 권한이 있는 계정에 MFA를 사용하도록 설정해야 함 | 계정 또는 리소스 위반을 방지하려면 읽기 권한이 있는 모든 구독 계정에서 MFA(Multi-Factor Authentication)를 사용하도록 설정해야 합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Azure 리소스에 대한 쓰기 권한이 있는 계정에 MFA를 사용하도록 설정해야 함 | 계정 또는 리소스 위반을 방지하려면 쓰기 권한이 있는 모든 구독 계정에서 MFA(Multi-Factor Authentication)를 사용하도록 설정해야 합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Linux 머신에 대한 인증에 SSH 키가 필요함 | SSH 자체에서 암호화된 연결을 제공하지만 SSH와 함께 암호를 사용하면 VM은 여전히 무차별 암호 대입 공격에 취약합니다. SSH를 통해 Azure Linux 가상 머신에 인증하는 가장 안전한 옵션은 SSH 키라고도 하는 퍼블릭-프라이빗 키 쌍을 사용하는 것입니다. https://docs.microsoft.com/azure/virtual-machines/linux/create-ssh-keys-detailed에서 자세한 내용을 알아보세요. | AuditIfNotExists, 사용 안 함 | 3.2.0 |
자격 증명 및 비밀 노출 제한
ID: Microsoft 클라우드 보안 벤치마크 IM-8 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
API Management 최소 API 버전은 2019-12-01 이상으로 설정해야 함 | 서비스 비밀이 읽기 전용 사용자와 공유되는 것을 방지하려면 최소 API 버전을 2019-12-01 이상으로 설정해야 합니다. | 감사, 거부, 사용 안 함 | 1.0.1 |
API Management 비밀로 명명된 값은 Azure Key Vault에 저장해야 함 | 명명된 값은 각 API Management 서비스의 이름 및 값 쌍의 컬렉션입니다. 비밀 값을 API Management(사용자 지정 비밀)에 암호화된 텍스트로 저장하거나 Azure Key Vault에서 비밀을 참조하여 저장할 수 있습니다. API Management 및 비밀의 보안을 향상하려면 Azure Key Vault의 비밀로 명명된 값을 참조하세요. Azure Key Vault에서는 세분화된 액세스 관리 및 비밀 회전 정책을 지원합니다. | 감사, 사용 안 함, 거부 | 1.0.2 |
머신에서 발견한 비밀을 해결해야 합니다. | 가상 머신을 감사하여 가상 머신의 비밀 검사 솔루션에서 발견된 비밀이 포함되어 있는지 여부를 검색합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
권한 있는 액세스
높은 권한이 있는 사용자/권리자를 분리하고 제한
ID: Microsoft 클라우드 보안 벤치마크 PA-1 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
구독에 최대 3명의 소유자를 지정해야 합니다. | 보안이 침해된 소유자의 위반 가능성을 줄이려면 최대 3명의 구독 소유자를 지정하는 것이 좋습니다. | AuditIfNotExists, 사용 안 함 | 3.0.0 |
Azure 리소스에 대한 소유자 권한이 있는 차단된 계정을 제거해야 함 | 소유자 권한이 있는 사용되지 않는 계정은 구독에서 제거해야 합니다. 사용되지 않는 계정은 로그인이 차단된 계정입니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Azure 리소스에 대한 소유자 권한이 있는 게스트 계정을 제거해야 함 | 모니터링되지 않는 액세스를 방지하려면 소유자 권한이 있는 외부 계정을 구독에서 제거해야 합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
구독에 둘 이상의 소유자를 할당해야 합니다. | 관리자 액세스 중복성을 유지하려면 둘 이상의 구독 소유자를 지정하는 것이 좋습니다. | AuditIfNotExists, 사용 안 함 | 3.0.0 |
계정 및 권한에 대한 고정 액세스 방지
ID: Microsoft 클라우드 보안 벤치마크 PA-2 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
가상 머신의 관리 포트는 Just-In-Time 네트워크 액세스 제어로 보호해야 함 | 가능한 네트워크 JIT(Just In Time) 액세스는 Azure Security Center에서 권장 사항으로 모니터링됩니다. | AuditIfNotExists, 사용 안 함 | 3.0.0 |
정기적으로 사용자 액세스 검토 및 조정
ID: Microsoft 클라우드 보안 벤치마크 PA-4 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
Azure 리소스에 대한 소유자 권한이 있는 차단된 계정을 제거해야 함 | 소유자 권한이 있는 사용되지 않는 계정은 구독에서 제거해야 합니다. 사용되지 않는 계정은 로그인이 차단된 계정입니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Azure 리소스에 대한 읽기 및 쓰기 권한이 있는 차단된 계정을 제거해야 함 | 더 이상 사용되지 않는 계정을 구독에서 제거해야 합니다. 사용되지 않는 계정은 로그인이 차단된 계정입니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Azure 리소스에 대한 소유자 권한이 있는 게스트 계정을 제거해야 함 | 모니터링되지 않는 액세스를 방지하려면 소유자 권한이 있는 외부 계정을 구독에서 제거해야 합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Azure 리소스에 대한 읽기 권한이 있는 게스트 계정을 제거해야 함 | 모니터링되지 않는 액세스를 방지하려면 읽기 권한이 있는 외부 계정을 구독에서 제거해야 합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Azure 리소스에 대한 쓰기 권한이 있는 게스트 계정을 제거해야 함 | 모니터링되지 않는 액세스를 방지하려면 쓰기 권한이 있는 외부 계정을 구독에서 제거해야 합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
꼭 필요한 만큼의 관리(최소 권한) 원칙 준수
ID: Microsoft 클라우드 보안 벤치마크 PA-7 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
API 관리 구독의 범위를 모든 API로 지정해서는 안 됨 | API Management 구독의 범위는 과도한 데이터 노출을 초래할 수 있는 모든 API가 아닌 제품 또는 개별 API로 지정해야 합니다. | 감사, 사용 안 함, 거부 | 1.1.0 |
사용자 지정 RBAC 역할의 사용량 감사 | 오류가 발생하기 쉬운 사용자 지정 RBAC 역할 대신 '소유자, 기여자, 읽기 권한자' 같은 기본 제공 역할을 감사합니다. 사용자 지정 역할 사용은 예외로 처리되며 엄격한 검토 및 위협 모델링이 필요합니다. | 감사, 사용 안 함 | 1.0.1 |
Kubernetes Services에서 RBAC(역할 기반 액세스 제어)를 사용해야 함 | 사용자가 수행할 수 있는 작업에 대한 세부적인 필터링을 제공하려면 RBAC(역할 기반 액세스 제어)를 사용하여 Kubernetes Service 클러스터에서 권한을 관리하고 관련 권한 부여 정책을 구성합니다. | 감사, 사용 안 함 | 1.0.4 |
데이터 보호
중요한 데이터의 검색, 분류 및 레이블 지정
ID: Microsoft 클라우드 보안 벤치마크 DP-1 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
API용 Microsoft Defender를 사용하도록 설정해야 함 | API용 Microsoft Defender는 일반적인 API 기반 공격 및 보안 구성 오류를 모니터링하기 위해 새로운 검색, 보호, 탐지 및 응답 범위를 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
중요한 데이터를 대상으로 하는 변칙 및 위협 모니터링
ID: Microsoft 클라우드 보안 벤치마크 DP-2 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
Azure SQL Database 서버용 Azure Defender를 사용하도록 설정해야 함 | Azure Defender for SQL은 잠재적인 데이터베이스 취약성을 표시 및 완화하고, SQL 데이터베이스에 대한 위협을 나타낼 수 있는 비정상적인 활동을 감지하고, 중요한 데이터를 검색 및 분류하는 기능을 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
오픈 소스 관계형 데이터베이스용 Azure Defender를 사용하도록 설정해야 함 | 오픈 소스 관계형 데이터베이스용 Azure Defender는 데이터베이스에 액세스하거나 악용하려는 비정상적이고 잠재적으로 유해한 시도를 나타내는 비정상적인 활동을 감지합니다. https://aka.ms/AzDforOpenSourceDBsDocu에서 오픈 소스 관계형 데이터베이스용 Azure Defender의 기능에 대해 자세히 알아보세요. 중요: 이 계획을 사용하도록 설정하면 오픈 소스 관계형 데이터베이스를 보호하는 비용이 청구됩니다. Security Center의 가격 책정 페이지(https://aka.ms/pricing-security-center)에서 가격에 대해 알아봅니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
머신에서 SQL 서버용 Azure Defender를 사용하도록 설정해야 함 | Azure Defender for SQL은 잠재적인 데이터베이스 취약성을 표시 및 완화하고, SQL 데이터베이스에 대한 위협을 나타낼 수 있는 비정상적인 활동을 감지하고, 중요한 데이터를 검색 및 분류하는 기능을 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
보호되지 않는 SQL Managed Instance에 대해 SQL용 Azure Defender를 사용하도록 설정해야 함 | Advanced Data Security를 사용하지 않고 각 SQL Managed Instance를 감사합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
API용 Microsoft Defender를 사용하도록 설정해야 함 | API용 Microsoft Defender는 일반적인 API 기반 공격 및 보안 구성 오류를 모니터링하기 위해 새로운 검색, 보호, 탐지 및 응답 범위를 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
스토리지용 Microsoft Defender를 사용하도록 설정해야 함 | 스토리지용 Microsoft Defender는 스토리지 계정에 대한 잠재적 위협을 탐지합니다. 악의적인 파일 업로드, 중요한 데이터 반출 및 데이터 손상 등 데이터 및 워크로드에 미치는 세 가지 주요 영향을 방지하는 데 도움이 됩니다. 새 스토리지용 Defender 플랜에는 맬웨어 검사 및 중요한 데이터 위협 탐지가 포함됩니다. 이 플랜은 또한 적용 범위 및 비용을 더 잘 제어할 수 있도록 예측 가능한 가격 책정 구조(스토리지 계정당)를 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
전송 중인 중요한 데이터 암호화
ID: Microsoft 클라우드 보안 벤치마크 DP-3 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
[미리 보기]: 호스트 및 VM 네트워킹은 Azure Stack HCI 시스템에서 보호되어야 합니다. | Azure Stack HCI 호스트 네트워크 및 가상 머신 네트워크 연결의 데이터를 보호합니다. | Audit, Disabled, AuditIfNotExists | 1.0.0 - 미리 보기 |
API Management API는 암호화된 프로토콜만 사용해야 함 | 전송 중인 데이터의 보안을 보장하려면 HTTPS 또는 WSS와 같은 암호화된 프로토콜을 통해서만 API를 사용할 수 있어야 합니다. HTTP 또는 WS와 같은 보안되지 않은 프로토콜을 사용하지 마세요. | 감사, 사용 안 함, 거부 | 2.0.2 |
App Service 앱은 HTTPS를 통해서만 액세스할 수 있어야 함 | HTTPS를 사용하여 서버/서비스 인증을 보장하고 전송 중인 데이터를 네트워크 계층 도청 공격으로부터 보호합니다. | 감사, 사용 안 함, 거부 | 4.0.0 |
App Service 앱에는 FTPS만 필요함 | 강화된 보안을 위해 FTPS 적용을 사용합니다. | AuditIfNotExists, 사용 안 함 | 3.0.0 |
App Service 앱은 최신 TLS 버전을 사용해야 함 | 주기적으로 보안 결함이나 추가 기능 및 속도 향상을 위해 TLS용 최신 버전이 릴리스됩니다. 보안 픽스(있는 경우) 및/또는 최신 버전의 새로운 기능을 활용하려면 App Service 앱용 최신 TLS 버전으로 업그레이드합니다. | AuditIfNotExists, 사용 안 함 | 2.1.0 |
Azure SQL Database는 TLS 버전 1.2 이상을 실행해야 합니다. | TLS 버전을 1.2 이상으로 설정하면 TLS 1.2 이상을 사용하는 클라이언트에서만 Azure SQL Database에 액세스할 수 있으므로 보안이 향상됩니다. 1.2 미만의 TLS 버전은 보안 취약성이 잘 문서화되었기 때문에 사용하지 않는 것이 좋습니다. | 감사, 사용 안 함, 거부 | 2.0.0 |
MySQL 데이터베이스 서버에 대해 SSL 연결 적용을 사용하도록 설정해야 합니다. | MySQL용 Azure Database는 SSL(Secure Sockets Layer)을 사용한 MySQL용 Azure Database 서버와 클라이언트 애플리케이션 간 연결을 지원합니다. 데이터베이스 서버와 클라이언트 애플리케이션 간 SSL 연결을 적용하면 서버와 애플리케이션 간 데이터 스트림을 암호화함으로써 '메시지 가로채기(man in the middle)' 공격으로부터 보호할 수 있습니다. 이 구성을 적용하면 데이터베이스 서버에 액세스할 때 항상 SSL을 사용하도록 설정됩니다. | 감사, 사용 안 함 | 1.0.1 |
PostgreSQL 데이터베이스 서버에 대해 SSL 연결 적용을 사용하도록 설정해야 합니다. | Azure Database for PostgreSQL은 SSL(Secure Sockets Layer)을 사용하여 Azure Database for PostgreSQL 서버를 클라이언트 애플리케이션에 연결하는 것을 지원합니다. 데이터베이스 서버와 클라이언트 애플리케이션 간 SSL 연결을 적용하면 서버와 애플리케이션 간 데이터 스트림을 암호화함으로써 '메시지 가로채기(man in the middle)' 공격으로부터 보호할 수 있습니다. 이 구성을 적용하면 데이터베이스 서버에 액세스할 때 항상 SSL을 사용하도록 설정됩니다. | 감사, 사용 안 함 | 1.0.1 |
함수 앱은 HTTPS를 통해서만 액세스할 수 있어야 함 | HTTPS를 사용하여 서버/서비스 인증을 보장하고 전송 중인 데이터를 네트워크 계층 도청 공격으로부터 보호합니다. | 감사, 사용 안 함, 거부 | 5.0.0 |
함수 앱에는 FTPS만 필요함 | 강화된 보안을 위해 FTPS 적용을 사용합니다. | AuditIfNotExists, 사용 안 함 | 3.0.0 |
함수 앱은 최신 TLS 버전을 사용해야 함 | 주기적으로 보안 결함이나 추가 기능 및 속도 향상을 위해 TLS용 최신 버전이 릴리스됩니다. 보안 픽스(있는 경우) 및/또는 최신 버전의 새로운 기능을 활용하려면 기능 앱용 최신 TLS 버전으로 업그레이드합니다. | AuditIfNotExists, 사용 안 함 | 2.1.0 |
Kubernetes 클러스터는 HTTPS를 통해서만 액세스할 수 있어야 함 | HTTPS를 사용하여 인증을 보장하고, 네트워크 계층 도청 공격으로부터 전송 중인 데이터를 보호합니다. 이 기능은 현재 AKS(Kubernetes Service)에 일반 공급되며 Azure Arc 지원 Kubernetes에서 미리 보기로 제공됩니다. 자세한 내용은 https://aka.ms/kubepolicydoc를 방문하세요. | 감사, 거부, 사용 안 함 | 8.2.0 |
Azure Cache for Redis에 보안 연결만 사용하도록 설정해야 함 | SSL을 통해 설정된 Azure Cache for Redis 연결만 감사 보안 연결을 사용하여 서버와 서비스 간 인증을 보장하고 전송 중인 데이터를 메시지 가로채기(man-in-the-middle), 도청 및 세션 하이재킹과 같은 네트워크 계층 공격으로부터 보호합니다. | 감사, 거부, 사용 안 함 | 1.0.0 |
스토리지 계정에 보안 전송을 사용하도록 설정해야 함 | 스토리지 계정의 보안 전송 요구 사항을 감사합니다. 보안 전송은 사용자의 스토리지 계정이 보안 연결(HTTPS)에서 오는 요청만 수락하도록 강제 적용하는 옵션입니다. HTTPS를 사용하여 서버와 서비스 간 인증을 보장하고 전송 중인 데이터를 메시지 가로채기(man-in-the-middle), 도청 및 세션 하이재킹과 같은 네트워크 계층 공격으로부터 보호합니다. | 감사, 거부, 사용 안 함 | 2.0.0 |
Windows 컴퓨터는 보안 통신 프로토콜을 사용하도록 구성되어야 함 | 인터넷을 통해 전달되는 정보의 개인 정보를 보호하려면 컴퓨터에서 최신 버전의 업계 표준 암호화 프로토콜인 TLS(전송 계층 보안)를 사용해야 합니다. TLS는 컴퓨터 간 연결을 암호화하여 네트워크를 통한 통신을 보호합니다. | AuditIfNotExists, 사용 안 함 | 4.1.1 |
기본적으로 미사용 데이터 암호화 사용
ID: Microsoft 클라우드 보안 벤치마크 DP-4 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
MySQL 서버에 대해 Microsoft Entra 관리자를 프로비전해야 합니다. | Microsoft Entra 인증을 사용하도록 설정하기 위해 MySQL 서버에 대한 Microsoft Entra 관리자 프로비전을 감사합니다. Microsoft Entra 인증을 사용하면 데이터베이스 사용자 및 기타 Microsoft 서비스의 권한을 간편하게 관리하고 ID를 한 곳에서 집중적으로 관리할 수 있습니다. | AuditIfNotExists, 사용 안 함 | 1.1.1 |
Automation 계정 변수를 암호화해야 함 | 중요한 데이터를 저장할 때 Automation 계정 변수 자산의 암호화를 사용하도록 설정해야 합니다. | 감사, 거부, 사용 안 함 | 1.1.0 |
Azure MySQL 유연한 서버에는 Microsoft Entra 전용 인증이 사용하도록 설정되어 있어야 합니다. | 로컬 인증 방법을 사용하지 않도록 설정하고 Microsoft Entra 인증만 허용하면 Microsoft Entra ID를 통해서만 Azure MySQL 유연한 서버에 액세스할 수 있으므로 보안이 개선됩니다. | AuditIfNotExists, 사용 안 함 | 1.0.1 |
Linux 가상 머신은 Azure Disk Encryption 또는 EncryptionAtHost를 활성화해야 함 | 가상 머신의 OS 및 데이터 디스크는 기본적으로 플랫폼 관리형 키를 사용하여 저장 시 암호화됩니다. 리소스 디스크(임시 디스크), 데이터 캐시, 컴퓨팅 리소스와 스토리지 리소스 사이의 데이터 흐름은 암호화되지 않습니다. Azure Disk Encryption 또는 EncryptionAtHost를 사용하여 문제를 수정합니다. 암호화 제품을 비교하려면 https://aka.ms/diskencryptioncomparison을 방문하세요. 이 정책을 사용하려면 정책 할당 범위에 두 가지 필수 구성 요소를 배포해야 합니다. 자세한 내용은 https://aka.ms/gcpol 을 참조하세요. | AuditIfNotExists, 사용 안 함 | 1.2.1 |
Service Fabric 클러스터는 ClusterProtectionLevel 속성을 EncryptAndSign으로 설정해야 함 | Service Fabric은 기본 클러스터 인증서를 사용하여 노드 간 통신을 위한 3단계 보호(None, Sign 및 EncryptAndSign)를 제공합니다. 모든 노드 간 메시지가 암호화되고 디지털로 서명될 수 있게 보호 수준을 설정합니다. | 감사, 거부, 사용 안 함 | 1.1.0 |
SQL 데이터베이스에 투명한 데이터 암호화를 사용하도록 설정해야 합니다. | 저장 데이터를 보호하고 규정 준수 요구 사항을 충족하려면 투명한 데이터 암호화를 사용하도록 설정해야 합니다. | AuditIfNotExists, 사용 안 함 | 2.0.0 |
가상 머신 및 가상 머신 확장 집합에서는 호스트에서 암호화를 사용하도록 설정해야 함 | 호스트에서 암호화를 사용하여 가상 머신 및 가상 머신 확장 집합 데이터에 대한 엔드투엔트 암호화를 가져옵니다. 호스트에서 암호화를 사용하면 임시 디스크 및 OS/데이터 디스크 캐시에 대해 미사용 데이터를 암호화할 수 있습니다. 임시 및 사용 후 삭제 OS 디스크는 호스트에서 암호화가 활성화될 때 플랫폼 관리형 키로 암호화됩니다. OS/데이터 디스크 캐시는 디스크에서 선택한 암호화 유형에 따라 고객 관리형 키 또는 플랫폼 관리형 키를 사용하여 미사용 데이터를 암호화합니다. https://aka.ms/vm-hbe에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.0.0 |
Windows 가상 머신은 Azure Disk Encryption 또는 EncryptionAtHost를 활성화해야 함 | 가상 머신의 OS 및 데이터 디스크는 기본적으로 플랫폼 관리형 키를 사용하여 저장 시 암호화됩니다. 리소스 디스크(임시 디스크), 데이터 캐시, 컴퓨팅 리소스와 스토리지 리소스 사이의 데이터 흐름은 암호화되지 않습니다. Azure Disk Encryption 또는 EncryptionAtHost를 사용하여 문제를 수정합니다. 암호화 제품을 비교하려면 https://aka.ms/diskencryptioncomparison을 방문하세요. 이 정책을 사용하려면 정책 할당 범위에 두 가지 필수 구성 요소를 배포해야 합니다. 자세한 내용은 https://aka.ms/gcpol 을 참조하세요. | AuditIfNotExists, 사용 안 함 | 1.1.1 |
필요한 경우 미사용 데이터 암호화에서 고객 관리형 키 옵션 사용
ID: Microsoft 클라우드 보안 벤치마크 DP-5 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
[미리 보기]: Azure Stack HCI 시스템에는 암호화된 볼륨이 있어야 합니다. | BitLocker를 사용하여 Azure Stack HCI 시스템에서 OS 및 데이터 볼륨을 암호화합니다. | Audit, Disabled, AuditIfNotExists | 1.0.0 - 미리 보기 |
Azure AI 서비스 리소스는 CMK(고객 관리형 키)를 사용하여 미사용 데이터를 암호화해야 합니다. | 고객 관리형 키를 사용하여 미사용 데이터를 암호화하면 회전 및 관리를 비롯한 주요 수명 주기를 더욱 세세하게 제어할 수 있습니다. 이는 관련 규정 준수 요구 사항이 있는 조직과 특히 관련이 있습니다. 기본적으로 평가되지 않으며 규정 준수 또는 제한적인 정책 요구 사항에 따라 필요한 경우에만 적용해야 합니다. 사용하도록 설정하지 않으면 플랫폼 관리형 키를 사용하여 데이터가 암호화됩니다. 이를 구현하려면 해당 범위에 대한 보안 정책에서 ‘Effect’ 매개 변수를 업데이트합니다. | 감사, 거부, 사용 안 함 | 2.2.0 |
Azure Cosmos DB 계정은 고객 관리형 키를 사용하여 미사용 데이터를 암호화해야 함 | 고객 관리형 키를 사용하여 Azure Cosmos DB의 미사용 데이터 암호화를 관리합니다. 기본적으로 저장 데이터는 서비스 관리형 키를 사용하여 암호화되지만, 일반적으로 규정 준수 표준을 충족하려면 고객 관리형 키가 필요합니다. 고객 관리형 키를 사용하면 사용자가 만들고 소유한 Azure Key Vault 키를 사용하여 데이터를 암호화할 수 있습니다. 순환 및 관리를 포함하여 키의 수명 주기를 고객이 모두 제어하고 책임져야 합니다. https://aka.ms/cosmosdb-cmk에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.1.0 |
Azure Machine Learning 작업 영역은 고객 관리형 키로 암호화해야 함 | 고객 관리형 키를 사용하여 Azure Machine Learning 작업 영역의 미사용 데이터 암호화를 관리합니다. 기본적으로 고객 데이터는 서비스 관리형 키로 암호화되지만, 고객 관리형 키는 일반적으로 규정 준수 기준을 충족하는 데 필요합니다. 고객 관리형 키를 사용하면 사용자가 만들고 소유한 Azure Key Vault 키를 사용하여 데이터를 암호화할 수 있습니다. 순환 및 관리를 포함하여 키의 수명 주기를 고객이 모두 제어하고 책임져야 합니다. https://aka.ms/azureml-workspaces-cmk에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.1.0 |
컨테이너 레지스트리는 고객 관리형 키를 사용하여 암호화해야 함 | 고객 관리형 키를 사용하여 레지스트리 콘텐츠의 미사용 데이터 암호화를 관리합니다. 기본적으로 저장 데이터는 서비스 관리형 키를 사용하여 암호화되지만, 일반적으로 규정 준수 표준을 충족하려면 고객 관리형 키가 필요합니다. 고객 관리형 키를 사용하면 사용자가 만들고 소유한 Azure Key Vault 키를 사용하여 데이터를 암호화할 수 있습니다. 순환 및 관리를 포함하여 키의 수명 주기를 고객이 모두 제어하고 책임져야 합니다. https://aka.ms/acr/CMK에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.1.2 |
MySQL 서버는 고객 관리형 키를 사용하여 미사용 데이터를 암호화해야 함 | 고객 관리형 키를 사용하여 MySQL 서버의 미사용 데이터 암호화를 관리합니다. 기본적으로 저장 데이터는 서비스 관리형 키를 사용하여 암호화되지만, 일반적으로 규정 준수 표준을 충족하려면 고객 관리형 키가 필요합니다. 고객 관리형 키를 사용하면 사용자가 만들고 소유한 Azure Key Vault 키를 사용하여 데이터를 암호화할 수 있습니다. 순환 및 관리를 포함하여 키의 수명 주기를 고객이 모두 제어하고 책임져야 합니다. | AuditIfNotExists, 사용 안 함 | 1.0.4 |
PostgreSQL 서버는 고객 관리형 키를 사용하여 미사용 데이터를 암호화해야 함 | 고객 관리형 키를 사용하여 PostgreSQL 서버의 미사용 데이터 암호화를 관리합니다. 기본적으로 저장 데이터는 서비스 관리형 키를 사용하여 암호화되지만, 일반적으로 규정 준수 표준을 충족하려면 고객 관리형 키가 필요합니다. 고객 관리형 키를 사용하면 사용자가 만들고 소유한 Azure Key Vault 키를 사용하여 데이터를 암호화할 수 있습니다. 순환 및 관리를 포함하여 키의 수명 주기를 고객이 모두 제어하고 책임져야 합니다. | AuditIfNotExists, 사용 안 함 | 1.0.4 |
SQL Managed Instance는 고객 관리형 키를 사용하여 미사용 데이터를 암호화해야 함 | 자체 키를 사용하여 TDE(투명한 데이터 암호화)를 구현하면 TDE 보호기에 대한 투명성과 제어력이 향상되고, HSM 지원 외부 서비스를 통한 보안이 강화되며, 업무 분리 프로모션을 제공합니다. 이 권장 사항은 관련 규정 준수 요구 사항이 있는 조직에 적용됩니다. | 감사, 거부, 사용 안 함 | 2.0.0 |
SQL 서버는 고객 관리형 키를 사용하여 미사용 데이터를 암호화해야 함 | 자체 키를 사용하여 TDE(투명한 데이터 암호화)를 구현하면 TDE 보호기에 대한 투명성과 제어력이 향상되고, HSM 지원 외부 서비스를 통해 보안이 강화되며, 업무 분리 프로모션을 제공합니다. 이 권장 사항은 관련 규정 준수 요구 사항이 있는 조직에 적용됩니다. | 감사, 거부, 사용 안 함 | 2.0.1 |
스토리지 계정은 고객 관리형 키를 사용하여 암호화해야 함 | 고객 관리형 키를 사용하여 유연성이 뛰어난 Blob 및 파일 스토리지 계정을 보호합니다. 고객 관리형 키를 지정하는 경우 해당 키는 데이터를 암호화하는 키에 대한 액세스를 보호하고 제어하는 데 사용됩니다. 고객 관리형 키를 사용하면 키 암호화 키의 회전을 제어하거나 데이터를 암호화 방식으로 지우는 추가 기능이 제공됩니다. | 감사, 사용 안 함 | 1.0.3 |
안전한 키 관리 프로세스 사용
ID: Microsoft 클라우드 보안 벤치마크 DP-6 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
API Management 비밀로 명명된 값은 Azure Key Vault에 저장해야 함 | 명명된 값은 각 API Management 서비스의 이름 및 값 쌍의 컬렉션입니다. 비밀 값을 API Management(사용자 지정 비밀)에 암호화된 텍스트로 저장하거나 Azure Key Vault에서 비밀을 참조하여 저장할 수 있습니다. API Management 및 비밀의 보안을 향상하려면 Azure Key Vault의 비밀로 명명된 값을 참조하세요. Azure Key Vault에서는 세분화된 액세스 관리 및 비밀 회전 정책을 지원합니다. | 감사, 사용 안 함, 거부 | 1.0.2 |
Key Vault 키에는 만료 날짜가 있어야 함 | 암호화 키에는 정의된 만료 날짜가 있어야 하며 영구적이지 않아야 합니다. 영구적으로 유효한 키는 잠재적인 공격자에게 키를 손상시킬 수 있는 시간을 더 많이 제공합니다. 보안상 암호화 키에 대한 만료 날짜를 설정하는 것이 좋습니다. | 감사, 거부, 사용 안 함 | 1.0.2 |
Key Vault 비밀에는 만료 날짜가 있어야 함 | 비밀에는 정의된 만료 날짜가 있어야 하며 영구적이지 않아야 합니다. 영구적으로 유효한 비밀은 잠재적인 공격자에게 비밀을 손상시킬 수 있는 시간을 더 많이 제공합니다. 보안상 비밀에 대한 만료 날짜를 설정하는 것이 좋습니다. | 감사, 거부, 사용 안 함 | 1.0.2 |
보안 인증서 관리 프로세스 사용
ID: Microsoft 클라우드 보안 벤치마크 DP-7 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
인증서에 지정된 최대 유효 기간이 있어야 함 | 키 자격 증명 모음 내에서 인증서가 유효한 최대 시간을 지정하여 조직의 규정 준수 요구 사항을 관리합니다. | 감사, 거부, 사용 안 함 | 2.2.1 |
키 및 인증서 리포지토리의 보안 보장
ID: Microsoft 클라우드 보안 벤치마크 DP-8 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
Azure Defender for Key Vault를 사용하도록 설정해야 함 | Azure Defender for Key Vault는 키 자격 증명 모음 계정에 액세스하거나 이를 악용하려는 비정상적이고 잠재적으로 유해한 시도를 감지하여 보안 인텔리전스에 추가 보호 계층을 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
Azure Key Vault에는 방화벽이 활성화되어 있어야 합니다. | 키 자격 증명 모음이 기본적으로 공용 IP에 액세스할 수 없도록 키 자격 증명 모음 방화벽을 사용하도록 설정합니다. 필요에 따라, 특정 IP 범위를 구성하여 해당 네트워크에 대한 액세스를 제한할 수 있습니다. https://docs.microsoft.com/azure/key-vault/general/network-security에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 3.2.1 |
Azure Key Vault에서 프라이빗 링크를 사용해야 함 | Azure Private Link를 사용하면 원본 또는 대상에 공용 IP 주소가 없어도 가상 네트워크를 Azure 서비스에 연결할 수 있습니다. Private Link 플랫폼은 Azure 백본 네트워크를 통해 소비자와 서비스 간의 연결을 처리합니다. 프라이빗 엔드포인트를 키 자격 증명 모음에 매핑하면 데이터 유출 위험을 줄일 수 있습니다. https://aka.ms/akvprivatelink에서 프라이빗 링크에 대해 자세히 알아보세요. | [parameters('audit_effect')] | 1.2.1 |
키 자격 증명 모음에서는 삭제 방지를 사용하도록 설정해야 함 | 키 자격 증명 모음을 악의적으로 삭제하면 데이터가 영구적으로 손실될 수 있습니다. 제거 방지 및 일시 삭제를 사용하도록 설정하여 영구적인 데이터 손실을 방지할 수 있습니다. 제거 보호는 일시 삭제된 키 자격 증명 모음에 대해 필수 보존 기간을 적용하여 내부자 공격으로부터 보호합니다. 일시 삭제 보존 기간 동안에는 조직 또는 Microsoft 내부의 어느 누구도 키 자격 증명 모음을 제거할 수 없습니다. 2019년 9월 1일 이후에 만든 키 자격 증명 모음은 기본적으로 일시 삭제를 사용하도록 설정되어 있습니다. | 감사, 거부, 사용 안 함 | 2.1.0 |
키 자격 증명 모음에 일시 삭제를 사용하도록 설정해야 함 | 일시 삭제를 사용하지 않고 키 자격 증명 모음을 삭제하면 키 자격 증명 모음에 저장된 모든 비밀, 키 및 인증서가 영구적으로 삭제됩니다. 키 자격 증명 모음을 실수로 삭제하면 데이터가 영구적으로 손실될 수 있습니다. 일시 삭제를 사용하면 실수로 삭제된 키 자격 증명 모음을 구성 가능한 보존 기간 동안 복구할 수 있습니다. | 감사, 거부, 사용 안 함 | 3.0.0 |
Key Vault에서 리소스 로그를 사용하도록 설정해야 함 | 리소스 로그 사용을 감사합니다. 이렇게 하면 보안 인시던트가 발생하거나 네트워크가 손상된 경우 조사 목적으로 사용할 활동 내역을 다시 만들 수 있습니다. | AuditIfNotExists, 사용 안 함 | 5.0.0 |
자산 관리
승인된 서비스만 사용
ID: Microsoft 클라우드 보안 벤치마크 AM-2 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
Azure API Management 플랫폼 버전은 stv2여야 합니다. | Azure API Management stv1 컴퓨팅 플랫폼 버전은 2024년 8월 31일부터 사용 중지되며, 지속적인 지원을 위해 이러한 인스턴스를 stv2 컴퓨팅 플랫폼으로 마이그레이션해야 합니다. https://learn.microsoft.com/azure/api-management/breaking-changes/stv1-platform-retirement-august-2024에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.0.0 |
스토리지 계정을 새 Azure Resource Manager 리소스로 마이그레이션해야 함 | 스토리지 계정에 새로운 Azure Resource Manager를 사용하여 더 강력한 액세스 제어(RBAC), 더 나은 감사, Azure Resource Manager 기반 배포 및 관리, 관리 ID 액세스, 비밀을 위해 Key Vault에 액세스, Azure AD 기반 인증, 보다 쉬운 보안 관리를 위한 태그 및 리소스 그룹 지원과 같은 보안 기능 향상을 제공합니다. | 감사, 거부, 사용 안 함 | 1.0.0 |
가상 머신을 새 Azure Resource Manager 리소스로 마이그레이션해야 함 | 가상 머신에 새 Azure Resource Manager를 사용하여 더 강력한 액세스 제어(RBAC), 더 나은 감사, Azure Resource Manager 기반 배포 및 관리, 관리 ID 액세스, 비밀을 위해 키 자격 증명 모음에 액세스, Azure AD 기반 인증, 보다 쉬운 보안 관리를 위한 태그 및 리소스 그룹 지원과 같은 보안 기능 향상을 제공합니다. | 감사, 거부, 사용 안 함 | 1.0.0 |
자산 수명 주기 관리의 보안 보장
ID: Microsoft 클라우드 보안 벤치마크 AM-3 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
사용하지 않는 API 엔드포인트는 사용하지 않도록 설정되고 Azure API Management 서비스에서 제거되어야 함 | 보안 모범 사례로 30일 동안 트래픽을 수신하지 않은 API 엔드포인트는 사용되지 않는 것으로 간주되며 Azure API Management 서비스에서 제거되어야 합니다. 사용하지 않는 API 엔드포인트를 유지하면 조직에 보안 위험이 발생할 수 있습니다. 이러한 API는 Azure API Management 서비스에서 더 이상 사용되지 않지만 실수로 활성 상태로 남아 있는 API일 수 있습니다. 이러한 API는 일반적으로 최신 보안 적용 범위를 받지 않습니다. | AuditIfNotExists, 사용 안 함 | 1.0.1 |
로깅 및 위협 탐지
위협 탐지 기능 사용
ID: Microsoft 클라우드 보안 벤치마크 LT-1 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
[미리 보기]: Azure Arc 지원 Kubernetes 클러스터에 클라우드용 Microsoft Defender의 확장이 설치되어 있어야 함 | Azure Arc용 클라우드용 Microsoft Defender 확장은 Arc 지원 Kubernetes 클러스터에 대한 위협 방지를 제공합니다. 이 확장은 클러스터의 모든 노드에서 데이터를 수집하고 추가 분석을 위해 클라우드의 Azure Defender for Kubernetes 백 엔드로 보냅니다. https://docs.microsoft.com/azure/defender-for-cloud/defender-for-containers-enable?pivots=defender-for-container-arc에서 자세히 알아보세요. | AuditIfNotExists, 사용 안 함 | 6.0.0-preview |
Azure Defender for App Service를 사용하도록 설정해야 함 | Azure Defender for App Service는 클라우드의 규모와 Azure가 클라우드 공급자로서 가지고 있는 가시성을 활용하여 일반적인 웹앱 공격을 모니터링합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
Azure SQL Database 서버용 Azure Defender를 사용하도록 설정해야 함 | Azure Defender for SQL은 잠재적인 데이터베이스 취약성을 표시 및 완화하고, SQL 데이터베이스에 대한 위협을 나타낼 수 있는 비정상적인 활동을 감지하고, 중요한 데이터를 검색 및 분류하는 기능을 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
Azure Defender for Key Vault를 사용하도록 설정해야 함 | Azure Defender for Key Vault는 키 자격 증명 모음 계정에 액세스하거나 이를 악용하려는 비정상적이고 잠재적으로 유해한 시도를 감지하여 보안 인텔리전스에 추가 보호 계층을 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
오픈 소스 관계형 데이터베이스용 Azure Defender를 사용하도록 설정해야 함 | 오픈 소스 관계형 데이터베이스용 Azure Defender는 데이터베이스에 액세스하거나 악용하려는 비정상적이고 잠재적으로 유해한 시도를 나타내는 비정상적인 활동을 감지합니다. https://aka.ms/AzDforOpenSourceDBsDocu에서 오픈 소스 관계형 데이터베이스용 Azure Defender의 기능에 대해 자세히 알아보세요. 중요: 이 계획을 사용하도록 설정하면 오픈 소스 관계형 데이터베이스를 보호하는 비용이 청구됩니다. Security Center의 가격 책정 페이지(https://aka.ms/pricing-security-center)에서 가격에 대해 알아봅니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Azure Defender for Resource Manager를 사용하도록 설정해야 함 | Azure Defender for Resource Manager는 조직의 리소스 관리 작업을 자동으로 모니터링합니다. Azure Defender는 위협을 감지하고 의심스러운 활동에 대해 경고합니다. https://aka.ms/defender-for-resource-manager에서 Azure Defender for Resource Manager의 기능에 대해 자세히 알아보세요. 이 Azure Defender 계획을 사용하도록 설정하면 요금이 청구됩니다. Security Center의 가격 책정 페이지(https://aka.ms/pricing-security-center)에서 지역별 가격 정보에 대해 알아봅니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
서버용 Azure Defender를 사용하도록 설정해야 함 | 서버용 Azure Defender는 서버 워크로드에 대한 실시간 위협 방지 기능을 제공하고 강화된 권장 사항과 의심스러운 활동에 대한 경고를 생성합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
머신에서 SQL 서버용 Azure Defender를 사용하도록 설정해야 함 | Azure Defender for SQL은 잠재적인 데이터베이스 취약성을 표시 및 완화하고, SQL 데이터베이스에 대한 위협을 나타낼 수 있는 비정상적인 활동을 감지하고, 중요한 데이터를 검색 및 분류하는 기능을 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
보호되지 않는 Azure SQL 서버에 대해 SQL용 Azure Defender를 사용하도록 설정해야 함 | Advanced Data Security 없이 SQL 서버 감사 | AuditIfNotExists, 사용 안 함 | 2.0.1 |
보호되지 않는 MySQL 유연한 서버에 대해 SQL용 Azure Defender를 사용하도록 설정해야 합니다. | Advanced Data Security 없이 MySQL 유연한 서버 감사 | AuditIfNotExists, 사용 안 함 | 1.0.0 |
보호되지 않는 PostgreSQL 유연한 서버에 대해 Azure Defender for SQL을 사용하도록 설정해야 합니다. | Advanced Data Security 없이 PostgreSQL 유연한 서버 감사 | AuditIfNotExists, 사용 안 함 | 1.0.0 |
보호되지 않는 SQL Managed Instance에 대해 SQL용 Azure Defender를 사용하도록 설정해야 함 | Advanced Data Security를 사용하지 않고 각 SQL Managed Instance를 감사합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
Azure Kubernetes Service 클러스터에는 Defender 프로필이 사용하도록 설정되어 있어야 합니다. | 컨테이너용 Microsoft Defender는 환경 강화, 워크로드 보호 및 런타임 보호를 비롯한 클라우드 네이티브 Kubernetes 보안 기능을 제공합니다. Azure Kubernetes Service 클러스터에서 SecurityProfile.AzureDefender를 사용하도록 설정하면 에이전트가 보안 이벤트 데이터를 수집할 클러스터에 배포됩니다. https://docs.microsoft.com/azure/defender-for-cloud/defender-for-containers-introduction?tabs=defender-for-container-arch-aks에서 컨테이너용 Microsoft Defender에 대해 자세히 알아보세요. | 감사, 사용 안 함 | 2.0.1 |
Microsoft Defender CSPM을 사용하도록 설정해야 함 | Defender CSPM(클라우드 보안 태세 관리)은 향상된 태세 기능과 새로운 지능형 클라우드 보안 그래프를 제공하여 위험을 식별하고 우선 순위를 지정하고 줄이는 데 도움이 됩니다. Defender CSPM은 클라우드용 Defender에서 기본적으로 켜져 있는 무료 기본 보안 태세 기능 외에도 사용할 수 있습니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
API용 Microsoft Defender를 사용하도록 설정해야 함 | API용 Microsoft Defender는 일반적인 API 기반 공격 및 보안 구성 오류를 모니터링하기 위해 새로운 검색, 보호, 탐지 및 응답 범위를 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
컨테이너용 Microsoft Defender를 사용하도록 설정해야 합니다. | 컨테이너용 Microsoft Defender는 Azure, 하이브리드 및 다중 클라우드 Kubernetes 환경에 대한 강화, 취약성 평가 및 런타임 보호를 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
보호되지 않는 Synapse 작업 영역에 대해 SQL용 Microsoft Defender를 사용하도록 설정해야 함 | Synapse 작업 영역을 보호하려면 SQL용 Defender를 사용하도록 설정해야 합니다. SQL용 Defender는 Synapse SQL을 모니터링하여 비정상이고 잠재적으로 위험한 데이터베이스 액세스 또는 악용 시도를 암시하는 비정상적인 활동을 탐지합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Microsoft Defender for SQL 상태는 Arc 지원 SQL Server에 대해 보호되어야 함 | Microsoft Defender for SQL은 잠재적인 데이터베이스 취약성을 표시 및 완화하고, SQL 데이터베이스에 대한 위협을 나타낼 수 있는 비정상적인 활동을 감지하고, 중요한 데이터를 검색 및 분류하는 기능을 제공합니다. 사용하도록 설정되면 보호 상태는 리소스가 적극적으로 모니터링됨을 나타냅니다. Defender가 사용하도록 설정된 경우에도 에이전트, 머신, 작업 영역 및 SQL Server에서 여러 구성 설정의 유효성을 검사하여 활성 보호를 보장해야 합니다. | 감사, 사용 안 함 | 1.0.1 |
스토리지용 Microsoft Defender를 사용하도록 설정해야 함 | 스토리지용 Microsoft Defender는 스토리지 계정에 대한 잠재적 위협을 탐지합니다. 악의적인 파일 업로드, 중요한 데이터 반출 및 데이터 손상 등 데이터 및 워크로드에 미치는 세 가지 주요 영향을 방지하는 데 도움이 됩니다. 새 스토리지용 Defender 플랜에는 맬웨어 검사 및 중요한 데이터 위협 탐지가 포함됩니다. 이 플랜은 또한 적용 범위 및 비용을 더 잘 제어할 수 있도록 예측 가능한 가격 책정 구조(스토리지 계정당)를 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
SQL 서버 대상 자동 프로비전은 컴퓨터 계획의 SQL 서버에 대해 사용하도록 설정되어야 합니다. | SQL VM 및 Arc 지원 SQL 서버를 보호하려면 SQL 대상 Azure Monitor 에이전트가 자동으로 배포되도록 구성되어 있는지 확인합니다. 이는 Microsoft Monitoring Agent의 자동 프로비전을 이전에 구성한 경우에도 필요합니다. 해당 구성 요소는 더 이상 사용되지 않기 때문입니다. 자세한 정보: https://aka.ms/SQLAMAMigration | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Windows Defender Exploit Guard를 머신에서 사용하도록 설정해야 함 | Windows Defender Exploit Guard는 Azure Policy 게스트 구성 에이전트를 사용합니다. Exploit Guard에는 다양한 공격 벡터에 대해 디바이스를 잠그고 맬웨어 공격에서 일반적으로 사용되는 동작을 차단하면서 기업에서 보안 위험과 생산성 요구 사항 사이의 균형을 맞출 수 있도록 설계된 네 가지 구성 요소가 있습니다(Windows에만 해당). | AuditIfNotExists, 사용 안 함 | 2.0.0 |
ID 및 액세스 관리에 대한 위협 검색 사용
ID: Microsoft 클라우드 보안 벤치마크 LT-2 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
[미리 보기]: Azure Arc 지원 Kubernetes 클러스터에 클라우드용 Microsoft Defender의 확장이 설치되어 있어야 함 | Azure Arc용 클라우드용 Microsoft Defender 확장은 Arc 지원 Kubernetes 클러스터에 대한 위협 방지를 제공합니다. 이 확장은 클러스터의 모든 노드에서 데이터를 수집하고 추가 분석을 위해 클라우드의 Azure Defender for Kubernetes 백 엔드로 보냅니다. https://docs.microsoft.com/azure/defender-for-cloud/defender-for-containers-enable?pivots=defender-for-container-arc에서 자세히 알아보세요. | AuditIfNotExists, 사용 안 함 | 6.0.0-preview |
Azure Defender for App Service를 사용하도록 설정해야 함 | Azure Defender for App Service는 클라우드의 규모와 Azure가 클라우드 공급자로서 가지고 있는 가시성을 활용하여 일반적인 웹앱 공격을 모니터링합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
Azure SQL Database 서버용 Azure Defender를 사용하도록 설정해야 함 | Azure Defender for SQL은 잠재적인 데이터베이스 취약성을 표시 및 완화하고, SQL 데이터베이스에 대한 위협을 나타낼 수 있는 비정상적인 활동을 감지하고, 중요한 데이터를 검색 및 분류하는 기능을 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
Azure Defender for Key Vault를 사용하도록 설정해야 함 | Azure Defender for Key Vault는 키 자격 증명 모음 계정에 액세스하거나 이를 악용하려는 비정상적이고 잠재적으로 유해한 시도를 감지하여 보안 인텔리전스에 추가 보호 계층을 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
오픈 소스 관계형 데이터베이스용 Azure Defender를 사용하도록 설정해야 함 | 오픈 소스 관계형 데이터베이스용 Azure Defender는 데이터베이스에 액세스하거나 악용하려는 비정상적이고 잠재적으로 유해한 시도를 나타내는 비정상적인 활동을 감지합니다. https://aka.ms/AzDforOpenSourceDBsDocu에서 오픈 소스 관계형 데이터베이스용 Azure Defender의 기능에 대해 자세히 알아보세요. 중요: 이 계획을 사용하도록 설정하면 오픈 소스 관계형 데이터베이스를 보호하는 비용이 청구됩니다. Security Center의 가격 책정 페이지(https://aka.ms/pricing-security-center)에서 가격에 대해 알아봅니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Azure Defender for Resource Manager를 사용하도록 설정해야 함 | Azure Defender for Resource Manager는 조직의 리소스 관리 작업을 자동으로 모니터링합니다. Azure Defender는 위협을 감지하고 의심스러운 활동에 대해 경고합니다. https://aka.ms/defender-for-resource-manager에서 Azure Defender for Resource Manager의 기능에 대해 자세히 알아보세요. 이 Azure Defender 계획을 사용하도록 설정하면 요금이 청구됩니다. Security Center의 가격 책정 페이지(https://aka.ms/pricing-security-center)에서 지역별 가격 정보에 대해 알아봅니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
서버용 Azure Defender를 사용하도록 설정해야 함 | 서버용 Azure Defender는 서버 워크로드에 대한 실시간 위협 방지 기능을 제공하고 강화된 권장 사항과 의심스러운 활동에 대한 경고를 생성합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
머신에서 SQL 서버용 Azure Defender를 사용하도록 설정해야 함 | Azure Defender for SQL은 잠재적인 데이터베이스 취약성을 표시 및 완화하고, SQL 데이터베이스에 대한 위협을 나타낼 수 있는 비정상적인 활동을 감지하고, 중요한 데이터를 검색 및 분류하는 기능을 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
보호되지 않는 Azure SQL 서버에 대해 SQL용 Azure Defender를 사용하도록 설정해야 함 | Advanced Data Security 없이 SQL 서버 감사 | AuditIfNotExists, 사용 안 함 | 2.0.1 |
보호되지 않는 MySQL 유연한 서버에 대해 SQL용 Azure Defender를 사용하도록 설정해야 합니다. | Advanced Data Security 없이 MySQL 유연한 서버 감사 | AuditIfNotExists, 사용 안 함 | 1.0.0 |
보호되지 않는 PostgreSQL 유연한 서버에 대해 Azure Defender for SQL을 사용하도록 설정해야 합니다. | Advanced Data Security 없이 PostgreSQL 유연한 서버 감사 | AuditIfNotExists, 사용 안 함 | 1.0.0 |
보호되지 않는 SQL Managed Instance에 대해 SQL용 Azure Defender를 사용하도록 설정해야 함 | Advanced Data Security를 사용하지 않고 각 SQL Managed Instance를 감사합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
Azure Kubernetes Service 클러스터에는 Defender 프로필이 사용하도록 설정되어 있어야 합니다. | 컨테이너용 Microsoft Defender는 환경 강화, 워크로드 보호 및 런타임 보호를 비롯한 클라우드 네이티브 Kubernetes 보안 기능을 제공합니다. Azure Kubernetes Service 클러스터에서 SecurityProfile.AzureDefender를 사용하도록 설정하면 에이전트가 보안 이벤트 데이터를 수집할 클러스터에 배포됩니다. https://docs.microsoft.com/azure/defender-for-cloud/defender-for-containers-introduction?tabs=defender-for-container-arch-aks에서 컨테이너용 Microsoft Defender에 대해 자세히 알아보세요. | 감사, 사용 안 함 | 2.0.1 |
Microsoft Defender CSPM을 사용하도록 설정해야 함 | Defender CSPM(클라우드 보안 태세 관리)은 향상된 태세 기능과 새로운 지능형 클라우드 보안 그래프를 제공하여 위험을 식별하고 우선 순위를 지정하고 줄이는 데 도움이 됩니다. Defender CSPM은 클라우드용 Defender에서 기본적으로 켜져 있는 무료 기본 보안 태세 기능 외에도 사용할 수 있습니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
컨테이너용 Microsoft Defender를 사용하도록 설정해야 합니다. | 컨테이너용 Microsoft Defender는 Azure, 하이브리드 및 다중 클라우드 Kubernetes 환경에 대한 강화, 취약성 평가 및 런타임 보호를 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
보호되지 않는 Synapse 작업 영역에 대해 SQL용 Microsoft Defender를 사용하도록 설정해야 함 | Synapse 작업 영역을 보호하려면 SQL용 Defender를 사용하도록 설정해야 합니다. SQL용 Defender는 Synapse SQL을 모니터링하여 비정상이고 잠재적으로 위험한 데이터베이스 액세스 또는 악용 시도를 암시하는 비정상적인 활동을 탐지합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Microsoft Defender for SQL 상태는 Arc 지원 SQL Server에 대해 보호되어야 함 | Microsoft Defender for SQL은 잠재적인 데이터베이스 취약성을 표시 및 완화하고, SQL 데이터베이스에 대한 위협을 나타낼 수 있는 비정상적인 활동을 감지하고, 중요한 데이터를 검색 및 분류하는 기능을 제공합니다. 사용하도록 설정되면 보호 상태는 리소스가 적극적으로 모니터링됨을 나타냅니다. Defender가 사용하도록 설정된 경우에도 에이전트, 머신, 작업 영역 및 SQL Server에서 여러 구성 설정의 유효성을 검사하여 활성 보호를 보장해야 합니다. | 감사, 사용 안 함 | 1.0.1 |
스토리지용 Microsoft Defender를 사용하도록 설정해야 함 | 스토리지용 Microsoft Defender는 스토리지 계정에 대한 잠재적 위협을 탐지합니다. 악의적인 파일 업로드, 중요한 데이터 반출 및 데이터 손상 등 데이터 및 워크로드에 미치는 세 가지 주요 영향을 방지하는 데 도움이 됩니다. 새 스토리지용 Defender 플랜에는 맬웨어 검사 및 중요한 데이터 위협 탐지가 포함됩니다. 이 플랜은 또한 적용 범위 및 비용을 더 잘 제어할 수 있도록 예측 가능한 가격 책정 구조(스토리지 계정당)를 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
SQL 서버 대상 자동 프로비전은 컴퓨터 계획의 SQL 서버에 대해 사용하도록 설정되어야 합니다. | SQL VM 및 Arc 지원 SQL 서버를 보호하려면 SQL 대상 Azure Monitor 에이전트가 자동으로 배포되도록 구성되어 있는지 확인합니다. 이는 Microsoft Monitoring Agent의 자동 프로비전을 이전에 구성한 경우에도 필요합니다. 해당 구성 요소는 더 이상 사용되지 않기 때문입니다. 자세한 정보: https://aka.ms/SQLAMAMigration | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Windows Defender Exploit Guard를 머신에서 사용하도록 설정해야 함 | Windows Defender Exploit Guard는 Azure Policy 게스트 구성 에이전트를 사용합니다. Exploit Guard에는 다양한 공격 벡터에 대해 디바이스를 잠그고 맬웨어 공격에서 일반적으로 사용되는 동작을 차단하면서 기업에서 보안 위험과 생산성 요구 사항 사이의 균형을 맞출 수 있도록 설계된 네 가지 구성 요소가 있습니다(Windows에만 해당). | AuditIfNotExists, 사용 안 함 | 2.0.0 |
보안 조사를 위해 로깅 사용
ID: Microsoft 클라우드 보안 벤치마크 LT-3 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
App Service 앱에서 리소스 로그가 사용되어야 함 | 앱에서 리소스 로그 사용을 감사합니다. 이렇게 하면 보안 인시던트가 발생하거나 네트워크가 손상된 경우 조사 목적으로 활동 내역을 다시 만들 수 있습니다. | AuditIfNotExists, 사용 안 함 | 2.0.1 |
SQL 서버에 대한 감사가 사용되도록 설정되어야 합니다. | 서버의 모든 데이터베이스에서 데이터베이스 활동을 추적하고 감사 로그에 저장하려면 SQL Server에서의 감사를 사용하도록 설정해야 합니다. | AuditIfNotExists, 사용 안 함 | 2.0.0 |
Azure AI 서비스 리소스의 진단 로그를 사용하도록 설정해야 합니다. | Azure AI 서비스 리소스에 대한 로그를 사용하도록 설정합니다. 이렇게 하면 보안 인시던트가 발생하거나 네트워크가 손상된 경우 조사 목적으로 활동 내역을 다시 만들 수 있습니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Azure Data Lake Store에서 리소스 로그를 사용하도록 설정해야 함 | 리소스 로그 사용을 감사합니다. 이렇게 하면 보안 인시던트가 발생하거나 네트워크가 손상된 경우 조사 목적으로 사용할 활동 내역을 다시 만들 수 있습니다. | AuditIfNotExists, 사용 안 함 | 5.0.0 |
Azure Databricks 작업 영역의 리소스 로그를 사용하도록 설정해야 함 | 리소스 로그를 사용하면 보안 인시던트가 발생하거나 네트워크가 손상되었을 때 조사 목적으로 사용할 작업 추적을 다시 만들 수 있습니다. | AuditIfNotExists, 사용 안 함 | 1.0.1 |
Azure Kubernetes Service의 리소스 로그를 사용하도록 설정해야 함 | Azure Kubernetes Service의 리소스 로그를 통해 보안 인시던트를 조사할 때 작업 추적을 다시 만들 수 있습니다. 필요할 때 로그가 존재하는지 확인하는 데 사용 | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Azure Machine Learning 작업 영역의 리소스 로그를 사용하도록 설정해야 합니다. | 리소스 로그를 사용하면 보안 인시던트가 발생하거나 네트워크가 손상되었을 때 조사 목적으로 사용할 작업 추적을 다시 만들 수 있습니다. | AuditIfNotExists, 사용 안 함 | 1.0.1 |
Azure Stream Analytics에서 리소스 로그를 사용하도록 설정해야 함 | 리소스 로그 사용을 감사합니다. 이렇게 하면 보안 인시던트가 발생하거나 네트워크가 손상된 경우 조사 목적으로 사용할 활동 내역을 다시 만들 수 있습니다. | AuditIfNotExists, 사용 안 함 | 5.0.0 |
Batch 계정에서 리소스 로그를 사용하도록 설정해야 함 | 리소스 로그 사용을 감사합니다. 이렇게 하면 보안 인시던트가 발생하거나 네트워크가 손상된 경우 조사 목적으로 사용할 활동 내역을 다시 만들 수 있습니다. | AuditIfNotExists, 사용 안 함 | 5.0.0 |
Data Lake Analytics의 리소스 로그를 사용하도록 설정해야 함 | 리소스 로그 사용을 감사합니다. 이렇게 하면 보안 인시던트가 발생하거나 네트워크가 손상된 경우 조사 목적으로 사용할 활동 내역을 다시 만들 수 있습니다. | AuditIfNotExists, 사용 안 함 | 5.0.0 |
Event Hub의 리소스 로그를 사용하도록 설정해야 함 | 리소스 로그 사용을 감사합니다. 이렇게 하면 보안 인시던트가 발생하거나 네트워크가 손상된 경우 조사 목적으로 사용할 활동 내역을 다시 만들 수 있습니다. | AuditIfNotExists, 사용 안 함 | 5.0.0 |
IoT Hub에서 리소스 로그를 사용하도록 설정해야 함 | 리소스 로그 사용을 감사합니다. 이렇게 하면 보안 인시던트가 발생하거나 네트워크가 손상된 경우 조사 목적으로 사용할 활동 내역을 다시 만들 수 있습니다. | AuditIfNotExists, 사용 안 함 | 3.1.0 |
Key Vault에서 리소스 로그를 사용하도록 설정해야 함 | 리소스 로그 사용을 감사합니다. 이렇게 하면 보안 인시던트가 발생하거나 네트워크가 손상된 경우 조사 목적으로 사용할 활동 내역을 다시 만들 수 있습니다. | AuditIfNotExists, 사용 안 함 | 5.0.0 |
Logic Apps의 리소스 로그를 사용하도록 설정해야 함 | 리소스 로그 사용을 감사합니다. 이렇게 하면 보안 인시던트가 발생하거나 네트워크가 손상된 경우 조사 목적으로 사용할 활동 내역을 다시 만들 수 있습니다. | AuditIfNotExists, 사용 안 함 | 5.1.0 |
Search Services에서 리소스 로그를 사용하도록 설정해야 함 | 리소스 로그 사용을 감사합니다. 이렇게 하면 보안 인시던트가 발생하거나 네트워크가 손상된 경우 조사 목적으로 사용할 활동 내역을 다시 만들 수 있습니다. | AuditIfNotExists, 사용 안 함 | 5.0.0 |
Service Bus에서 리소스 로그를 사용하도록 설정해야 함 | 리소스 로그 사용을 감사합니다. 이렇게 하면 보안 인시던트가 발생하거나 네트워크가 손상된 경우 조사 목적으로 사용할 활동 내역을 다시 만들 수 있습니다. | AuditIfNotExists, 사용 안 함 | 5.0.0 |
보안 조사를 위해 네트워크 로깅 사용
ID: Microsoft 클라우드 보안 벤치마크 LT-4 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
[미리 보기]: Linux 가상 머신에 네트워크 트래픽 데이터 수집 에이전트를 설치해야 함 | Security Center에서는 Microsoft Dependency Agent를 사용하여 Azure 가상 머신에서 네트워크 트래픽 데이터를 수집함으로써 네트워크 맵의 트래픽 시각화, 네트워크 강화 권장 사항 및 특정 네트워크 위협과 같은 고급 네트워크 보호 기능을 활성화합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2-preview |
[미리 보기]: Windows 가상 머신에 네트워크 트래픽 데이터 수집 에이전트를 설치해야 함 | Security Center에서는 Microsoft Dependency Agent를 사용하여 Azure 가상 머신에서 네트워크 트래픽 데이터를 수집함으로써 네트워크 맵의 트래픽 시각화, 네트워크 강화 권장 사항 및 특정 네트워크 위협과 같은 고급 네트워크 보호 기능을 활성화합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2-preview |
보안 로그 관리 및 분석 중앙 집중화
ID: Microsoft 클라우드 보안 벤치마크 LT-5 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
[미리 보기]: Log Analytics 확장이 Linux Azure Arc 컴퓨터에 설치되어 있어야 함 | 이 정책은 Log Analytics 확장이 설치되어 있지 않은 경우 Linux Azure Arc 컴퓨터를 감사합니다. | AuditIfNotExists, 사용 안 함 | 1.0.1 - 미리 보기 |
[미리 보기]: Log Analytics 확장이 Windows Azure Arc 컴퓨터에 설치되어 있어야 함 | 이 정책은 Log Analytics 확장이 설치되어 있지 않은 경우 Windows Azure Arc 컴퓨터를 감사합니다. | AuditIfNotExists, 사용 안 함 | 1.0.1 - 미리 보기 |
로그 스토리지 보존 구성
ID: Microsoft 클라우드 보안 벤치마크 LT-6 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
스토리지 계정 대상에 대한 감사 기능이 있는 SQL Server는 보존 기간을 90일 이상으로 구성해야 함 | 인시던트 조사를 위해 SQL Server 감사를 위한 데이터 보존 기간을 스토리지 계정 대상으로 90일 이상으로 설정하는 것이 좋습니다. 운영 중인 지역에 필요한 보존 규칙을 충족하는지 확인합니다. 이는 규정 표준을 준수해야 하는 경우도 있습니다. | AuditIfNotExists, 사용 안 함 | 3.0.0 |
인시던트 대응
준비 - 인시던트 알림 설정
ID: Microsoft 클라우드 보안 벤치마크 IR-2 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
심각도가 높은 경고에 대해 이메일 알림을 사용하도록 설정해야 합니다. | 구독 중 하나에 잠재적인 보안 위반이 있을 때 조직의 관련 인원에게 알리려면 Security Center에서 심각도가 높은 경고에 대한 이메일 알림을 사용하도록 설정합니다. | AuditIfNotExists, 사용 안 함 | 1.2.0 |
심각도가 높은 경고에 대해 구독 소유자에게 이메일 알림을 사용하도록 설정해야 합니다. | 구독에 잠재적인 보안 위반이 있을 때 구독 소유자에게 알리려면 Security Center에서 심각도가 높은 경고에 대해 구독 소유자에게 이메일로 알리도록 설정합니다. | AuditIfNotExists, 사용 안 함 | 2.1.0 |
구독에 보안 문제에 대한 연락처 이메일 주소가 있어야 함 | 구독 중 하나에 잠재적인 보안 위반이 있을 때 조직의 관련 인원에게 알리려면 Security Center에서 이메일 알림을 받을 수 있도록 보안 연락처를 설정합니다. | AuditIfNotExists, 사용 안 함 | 1.0.1 |
검색 및 분석 - 고품질 경고에 기반한 인시던트 만들기
ID: Microsoft 클라우드 보안 벤치마크 IR-3 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
Azure Defender for App Service를 사용하도록 설정해야 함 | Azure Defender for App Service는 클라우드의 규모와 Azure가 클라우드 공급자로서 가지고 있는 가시성을 활용하여 일반적인 웹앱 공격을 모니터링합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
Azure SQL Database 서버용 Azure Defender를 사용하도록 설정해야 함 | Azure Defender for SQL은 잠재적인 데이터베이스 취약성을 표시 및 완화하고, SQL 데이터베이스에 대한 위협을 나타낼 수 있는 비정상적인 활동을 감지하고, 중요한 데이터를 검색 및 분류하는 기능을 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
Azure Defender for Key Vault를 사용하도록 설정해야 함 | Azure Defender for Key Vault는 키 자격 증명 모음 계정에 액세스하거나 이를 악용하려는 비정상적이고 잠재적으로 유해한 시도를 감지하여 보안 인텔리전스에 추가 보호 계층을 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
오픈 소스 관계형 데이터베이스용 Azure Defender를 사용하도록 설정해야 함 | 오픈 소스 관계형 데이터베이스용 Azure Defender는 데이터베이스에 액세스하거나 악용하려는 비정상적이고 잠재적으로 유해한 시도를 나타내는 비정상적인 활동을 감지합니다. https://aka.ms/AzDforOpenSourceDBsDocu에서 오픈 소스 관계형 데이터베이스용 Azure Defender의 기능에 대해 자세히 알아보세요. 중요: 이 계획을 사용하도록 설정하면 오픈 소스 관계형 데이터베이스를 보호하는 비용이 청구됩니다. Security Center의 가격 책정 페이지(https://aka.ms/pricing-security-center)에서 가격에 대해 알아봅니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Azure Defender for Resource Manager를 사용하도록 설정해야 함 | Azure Defender for Resource Manager는 조직의 리소스 관리 작업을 자동으로 모니터링합니다. Azure Defender는 위협을 감지하고 의심스러운 활동에 대해 경고합니다. https://aka.ms/defender-for-resource-manager에서 Azure Defender for Resource Manager의 기능에 대해 자세히 알아보세요. 이 Azure Defender 계획을 사용하도록 설정하면 요금이 청구됩니다. Security Center의 가격 책정 페이지(https://aka.ms/pricing-security-center)에서 지역별 가격 정보에 대해 알아봅니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
서버용 Azure Defender를 사용하도록 설정해야 함 | 서버용 Azure Defender는 서버 워크로드에 대한 실시간 위협 방지 기능을 제공하고 강화된 권장 사항과 의심스러운 활동에 대한 경고를 생성합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
머신에서 SQL 서버용 Azure Defender를 사용하도록 설정해야 함 | Azure Defender for SQL은 잠재적인 데이터베이스 취약성을 표시 및 완화하고, SQL 데이터베이스에 대한 위협을 나타낼 수 있는 비정상적인 활동을 감지하고, 중요한 데이터를 검색 및 분류하는 기능을 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
보호되지 않는 Azure SQL 서버에 대해 SQL용 Azure Defender를 사용하도록 설정해야 함 | Advanced Data Security 없이 SQL 서버 감사 | AuditIfNotExists, 사용 안 함 | 2.0.1 |
보호되지 않는 MySQL 유연한 서버에 대해 SQL용 Azure Defender를 사용하도록 설정해야 합니다. | Advanced Data Security 없이 MySQL 유연한 서버 감사 | AuditIfNotExists, 사용 안 함 | 1.0.0 |
보호되지 않는 PostgreSQL 유연한 서버에 대해 Azure Defender for SQL을 사용하도록 설정해야 합니다. | Advanced Data Security 없이 PostgreSQL 유연한 서버 감사 | AuditIfNotExists, 사용 안 함 | 1.0.0 |
보호되지 않는 SQL Managed Instance에 대해 SQL용 Azure Defender를 사용하도록 설정해야 함 | Advanced Data Security를 사용하지 않고 각 SQL Managed Instance를 감사합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
Microsoft Defender CSPM을 사용하도록 설정해야 함 | Defender CSPM(클라우드 보안 태세 관리)은 향상된 태세 기능과 새로운 지능형 클라우드 보안 그래프를 제공하여 위험을 식별하고 우선 순위를 지정하고 줄이는 데 도움이 됩니다. Defender CSPM은 클라우드용 Defender에서 기본적으로 켜져 있는 무료 기본 보안 태세 기능 외에도 사용할 수 있습니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
API용 Microsoft Defender를 사용하도록 설정해야 함 | API용 Microsoft Defender는 일반적인 API 기반 공격 및 보안 구성 오류를 모니터링하기 위해 새로운 검색, 보호, 탐지 및 응답 범위를 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
컨테이너용 Microsoft Defender를 사용하도록 설정해야 합니다. | 컨테이너용 Microsoft Defender는 Azure, 하이브리드 및 다중 클라우드 Kubernetes 환경에 대한 강화, 취약성 평가 및 런타임 보호를 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
보호되지 않는 Synapse 작업 영역에 대해 SQL용 Microsoft Defender를 사용하도록 설정해야 함 | Synapse 작업 영역을 보호하려면 SQL용 Defender를 사용하도록 설정해야 합니다. SQL용 Defender는 Synapse SQL을 모니터링하여 비정상이고 잠재적으로 위험한 데이터베이스 액세스 또는 악용 시도를 암시하는 비정상적인 활동을 탐지합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Microsoft Defender for SQL 상태는 Arc 지원 SQL Server에 대해 보호되어야 함 | Microsoft Defender for SQL은 잠재적인 데이터베이스 취약성을 표시 및 완화하고, SQL 데이터베이스에 대한 위협을 나타낼 수 있는 비정상적인 활동을 감지하고, 중요한 데이터를 검색 및 분류하는 기능을 제공합니다. 사용하도록 설정되면 보호 상태는 리소스가 적극적으로 모니터링됨을 나타냅니다. Defender가 사용하도록 설정된 경우에도 에이전트, 머신, 작업 영역 및 SQL Server에서 여러 구성 설정의 유효성을 검사하여 활성 보호를 보장해야 합니다. | 감사, 사용 안 함 | 1.0.1 |
스토리지용 Microsoft Defender를 사용하도록 설정해야 함 | 스토리지용 Microsoft Defender는 스토리지 계정에 대한 잠재적 위협을 탐지합니다. 악의적인 파일 업로드, 중요한 데이터 반출 및 데이터 손상 등 데이터 및 워크로드에 미치는 세 가지 주요 영향을 방지하는 데 도움이 됩니다. 새 스토리지용 Defender 플랜에는 맬웨어 검사 및 중요한 데이터 위협 탐지가 포함됩니다. 이 플랜은 또한 적용 범위 및 비용을 더 잘 제어할 수 있도록 예측 가능한 가격 책정 구조(스토리지 계정당)를 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
SQL 서버 대상 자동 프로비전은 컴퓨터 계획의 SQL 서버에 대해 사용하도록 설정되어야 합니다. | SQL VM 및 Arc 지원 SQL 서버를 보호하려면 SQL 대상 Azure Monitor 에이전트가 자동으로 배포되도록 구성되어 있는지 확인합니다. 이는 Microsoft Monitoring Agent의 자동 프로비전을 이전에 구성한 경우에도 필요합니다. 해당 구성 요소는 더 이상 사용되지 않기 때문입니다. 자세한 정보: https://aka.ms/SQLAMAMigration | AuditIfNotExists, 사용 안 함 | 1.0.0 |
검색 및 분석 – 인시던트 조사
ID: Microsoft 클라우드 보안 벤치마크 IR-4 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
Network Watcher를 사용하도록 설정해야 함 | Network Watcher는 Azure 내에서, Azure로, Azure로부터 네트워크 시나리오 수준 상태를 모니터링하고 진단할 수 있게 하는 지역 서비스입니다. 시나리오 수준 모니터링을 사용하면 종단 간 네트워크 수준 보기에서 문제를 진단할 수 있습니다. 가상 네트워크가 있는 모든 지역에서 Network Watcher 리소스 그룹을 만들어야 합니다. 특정 지역에서 Network Watcher 리소스 그룹을 사용할 수 없는 경우 경고가 활성화됩니다. | AuditIfNotExists, 사용 안 함 | 3.0.0 |
검색 및 분석 - 인시던트 우선 순위 지정
ID: Microsoft 클라우드 보안 벤치마크 IR-5 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
Azure Defender for App Service를 사용하도록 설정해야 함 | Azure Defender for App Service는 클라우드의 규모와 Azure가 클라우드 공급자로서 가지고 있는 가시성을 활용하여 일반적인 웹앱 공격을 모니터링합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
Azure SQL Database 서버용 Azure Defender를 사용하도록 설정해야 함 | Azure Defender for SQL은 잠재적인 데이터베이스 취약성을 표시 및 완화하고, SQL 데이터베이스에 대한 위협을 나타낼 수 있는 비정상적인 활동을 감지하고, 중요한 데이터를 검색 및 분류하는 기능을 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
Azure Defender for Key Vault를 사용하도록 설정해야 함 | Azure Defender for Key Vault는 키 자격 증명 모음 계정에 액세스하거나 이를 악용하려는 비정상적이고 잠재적으로 유해한 시도를 감지하여 보안 인텔리전스에 추가 보호 계층을 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
오픈 소스 관계형 데이터베이스용 Azure Defender를 사용하도록 설정해야 함 | 오픈 소스 관계형 데이터베이스용 Azure Defender는 데이터베이스에 액세스하거나 악용하려는 비정상적이고 잠재적으로 유해한 시도를 나타내는 비정상적인 활동을 감지합니다. https://aka.ms/AzDforOpenSourceDBsDocu에서 오픈 소스 관계형 데이터베이스용 Azure Defender의 기능에 대해 자세히 알아보세요. 중요: 이 계획을 사용하도록 설정하면 오픈 소스 관계형 데이터베이스를 보호하는 비용이 청구됩니다. Security Center의 가격 책정 페이지(https://aka.ms/pricing-security-center)에서 가격에 대해 알아봅니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Azure Defender for Resource Manager를 사용하도록 설정해야 함 | Azure Defender for Resource Manager는 조직의 리소스 관리 작업을 자동으로 모니터링합니다. Azure Defender는 위협을 감지하고 의심스러운 활동에 대해 경고합니다. https://aka.ms/defender-for-resource-manager에서 Azure Defender for Resource Manager의 기능에 대해 자세히 알아보세요. 이 Azure Defender 계획을 사용하도록 설정하면 요금이 청구됩니다. Security Center의 가격 책정 페이지(https://aka.ms/pricing-security-center)에서 지역별 가격 정보에 대해 알아봅니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
서버용 Azure Defender를 사용하도록 설정해야 함 | 서버용 Azure Defender는 서버 워크로드에 대한 실시간 위협 방지 기능을 제공하고 강화된 권장 사항과 의심스러운 활동에 대한 경고를 생성합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
머신에서 SQL 서버용 Azure Defender를 사용하도록 설정해야 함 | Azure Defender for SQL은 잠재적인 데이터베이스 취약성을 표시 및 완화하고, SQL 데이터베이스에 대한 위협을 나타낼 수 있는 비정상적인 활동을 감지하고, 중요한 데이터를 검색 및 분류하는 기능을 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
보호되지 않는 Azure SQL 서버에 대해 SQL용 Azure Defender를 사용하도록 설정해야 함 | Advanced Data Security 없이 SQL 서버 감사 | AuditIfNotExists, 사용 안 함 | 2.0.1 |
보호되지 않는 MySQL 유연한 서버에 대해 SQL용 Azure Defender를 사용하도록 설정해야 합니다. | Advanced Data Security 없이 MySQL 유연한 서버 감사 | AuditIfNotExists, 사용 안 함 | 1.0.0 |
보호되지 않는 PostgreSQL 유연한 서버에 대해 Azure Defender for SQL을 사용하도록 설정해야 합니다. | Advanced Data Security 없이 PostgreSQL 유연한 서버 감사 | AuditIfNotExists, 사용 안 함 | 1.0.0 |
보호되지 않는 SQL Managed Instance에 대해 SQL용 Azure Defender를 사용하도록 설정해야 함 | Advanced Data Security를 사용하지 않고 각 SQL Managed Instance를 감사합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
Microsoft Defender CSPM을 사용하도록 설정해야 함 | Defender CSPM(클라우드 보안 태세 관리)은 향상된 태세 기능과 새로운 지능형 클라우드 보안 그래프를 제공하여 위험을 식별하고 우선 순위를 지정하고 줄이는 데 도움이 됩니다. Defender CSPM은 클라우드용 Defender에서 기본적으로 켜져 있는 무료 기본 보안 태세 기능 외에도 사용할 수 있습니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
API용 Microsoft Defender를 사용하도록 설정해야 함 | API용 Microsoft Defender는 일반적인 API 기반 공격 및 보안 구성 오류를 모니터링하기 위해 새로운 검색, 보호, 탐지 및 응답 범위를 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
컨테이너용 Microsoft Defender를 사용하도록 설정해야 합니다. | 컨테이너용 Microsoft Defender는 Azure, 하이브리드 및 다중 클라우드 Kubernetes 환경에 대한 강화, 취약성 평가 및 런타임 보호를 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
보호되지 않는 Synapse 작업 영역에 대해 SQL용 Microsoft Defender를 사용하도록 설정해야 함 | Synapse 작업 영역을 보호하려면 SQL용 Defender를 사용하도록 설정해야 합니다. SQL용 Defender는 Synapse SQL을 모니터링하여 비정상이고 잠재적으로 위험한 데이터베이스 액세스 또는 악용 시도를 암시하는 비정상적인 활동을 탐지합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
Microsoft Defender for SQL 상태는 Arc 지원 SQL Server에 대해 보호되어야 함 | Microsoft Defender for SQL은 잠재적인 데이터베이스 취약성을 표시 및 완화하고, SQL 데이터베이스에 대한 위협을 나타낼 수 있는 비정상적인 활동을 감지하고, 중요한 데이터를 검색 및 분류하는 기능을 제공합니다. 사용하도록 설정되면 보호 상태는 리소스가 적극적으로 모니터링됨을 나타냅니다. Defender가 사용하도록 설정된 경우에도 에이전트, 머신, 작업 영역 및 SQL Server에서 여러 구성 설정의 유효성을 검사하여 활성 보호를 보장해야 합니다. | 감사, 사용 안 함 | 1.0.1 |
스토리지용 Microsoft Defender를 사용하도록 설정해야 함 | 스토리지용 Microsoft Defender는 스토리지 계정에 대한 잠재적 위협을 탐지합니다. 악의적인 파일 업로드, 중요한 데이터 반출 및 데이터 손상 등 데이터 및 워크로드에 미치는 세 가지 주요 영향을 방지하는 데 도움이 됩니다. 새 스토리지용 Defender 플랜에는 맬웨어 검사 및 중요한 데이터 위협 탐지가 포함됩니다. 이 플랜은 또한 적용 범위 및 비용을 더 잘 제어할 수 있도록 예측 가능한 가격 책정 구조(스토리지 계정당)를 제공합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
SQL 서버 대상 자동 프로비전은 컴퓨터 계획의 SQL 서버에 대해 사용하도록 설정되어야 합니다. | SQL VM 및 Arc 지원 SQL 서버를 보호하려면 SQL 대상 Azure Monitor 에이전트가 자동으로 배포되도록 구성되어 있는지 확인합니다. 이는 Microsoft Monitoring Agent의 자동 프로비전을 이전에 구성한 경우에도 필요합니다. 해당 구성 요소는 더 이상 사용되지 않기 때문입니다. 자세한 정보: https://aka.ms/SQLAMAMigration | AuditIfNotExists, 사용 안 함 | 1.0.0 |
보안 상태 및 취약성 관리
보안 구성 감사 및 적용
ID: Microsoft 클라우드 보안 벤치마크 PV-2 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
[사용되지 않음]: 함수 앱에는 '클라이언트 인증서(수신 클라이언트 인증서)'가 사용하도록 설정되어 있어야 함 | 클라이언트 인증서는 앱이 들어오는 요청에 대한 인증서를 요청하도록 허용합니다. 유효한 인증서가 있는 클라이언트만 앱에 연결할 수 있습니다. Http 2.0은 클라이언트 인증서를 지원하지 않기 때문에 이 정책은 동일한 이름의 새 정책으로 바뀌었습니다. | 감사, 사용 안 함 | 3.1.0-deprecated |
API Management 직접 관리 엔드포인트를 사용하도록 설정하면 안 됨 | Azure API Management의 직접 관리 REST API는 Azure Resource Manager 역할 기반 액세스 제어, 권한 부여, 제한 메커니즘을 우회하여 서비스의 취약성을 높입니다. | 감사, 사용 안 함, 거부 | 1.0.2 |
API Management 최소 API 버전은 2019-12-01 이상으로 설정해야 함 | 서비스 비밀이 읽기 전용 사용자와 공유되는 것을 방지하려면 최소 API 버전을 2019-12-01 이상으로 설정해야 합니다. | 감사, 거부, 사용 안 함 | 1.0.1 |
App Service 앱에서 '클라이언트 인증서(들어오는 클라이언트 인증서)'가 사용하도록 설정되어 있어야 함 | 클라이언트 인증서는 앱이 들어오는 요청에 대한 인증서를 요청하도록 허용합니다. 유효한 인증서가 있는 클라이언트만 앱에 연결할 수 있습니다. 이 정책은 Http 버전이 1.1로 설정된 앱에 적용됩니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
App Service 앱에 원격 디버깅이 비활성화되어 있어야 함 | 원격으로 디버깅하려면 App Service 앱에서 인바운드 포트를 열어야 합니다. 원격 디버깅을 해제해야 합니다. | AuditIfNotExists, 사용 안 함 | 2.0.0 |
App Service 앱에서 모든 리소스가 앱에 액세스할 수 있도록 CORS를 구성하면 안 됨 | CORS(원본 간 리소스 공유)는 앱에 액세스하는 모든 도메인을 허용해서는 안 됩니다. 필요한 도메인만 앱과 상호 작용하도록 허용합니다. | AuditIfNotExists, 사용 안 함 | 2.0.0 |
Azure API Management 플랫폼 버전은 stv2여야 합니다. | Azure API Management stv1 컴퓨팅 플랫폼 버전은 2024년 8월 31일부터 사용 중지되며, 지속적인 지원을 위해 이러한 인스턴스를 stv2 컴퓨팅 플랫폼으로 마이그레이션해야 합니다. https://learn.microsoft.com/azure/api-management/breaking-changes/stv1-platform-retirement-august-2024에서 자세히 알아보세요. | 감사, 거부, 사용 안 함 | 1.0.0 |
Azure Arc 지원 Kubernetes 클러스터에 Azure Policy 확장이 설치되어 있어야 함 | Azure Arc용 Azure Policy 확장은 일관된 중앙 집중식 방식으로 Arc 지원 Kubernetes 클러스터에 대규모 적용 및 보호를 제공합니다. https://aka.ms/akspolicydoc에서 자세히 알아보세요. | AuditIfNotExists, 사용 안 함 | 1.1.0 |
최신 소프트웨어 업데이트를 가져오려면 Azure Machine Learning 컴퓨팅 인스턴스를 다시 만들어야 합니다. | Azure Machine Learning 컴퓨팅 인스턴스가 사용 가능한 최신 운영 체제에서 실행되는지 확인합니다. 최신 보안 패치를 실행하여 보안이 개선되고 취약성이 줄어듭니다. 자세한 내용은 https://aka.ms/azureml-ci-updates/을 참조하세요. | [parameters('effects')] | 1.0.3 |
클러스터에 AKS(Azure Kubernetes Service)용 Azure Policy 추가 기능을 설치하고 사용하도록 설정해야 함 | AKS(Azure Kubernetes Service)용 Azure Policy 추가 기능은 OPA(Open Policy Agent)용 허용 컨트롤러 웹후크인 Gatekeeper v3를 확장하여 일관된 중앙 집중식 방법으로 클러스터에 대규모 규약 및 세이프가드를 적용합니다. | 감사, 사용 안 함 | 1.0.2 |
함수 앱에 원격 디버깅이 해제되어 있어야 함 | 원격 디버깅을 수행하려면 함수 앱에서 인바운드 포트를 열어야 합니다. 원격 디버깅을 해제해야 합니다. | AuditIfNotExists, 사용 안 함 | 2.0.0 |
함수 앱에서 모든 리소스가 앱에 액세스할 수 있도록 CORS를 구성하면 안 됨 | CORS(교차 원본 리소스 공유)는 함수 앱에 액세스하는 모든 도메인을 허용하지 않아야 합니다. 필요한 도메인만 함수 앱과 상호 작용할 수 있도록 허용합니다. | AuditIfNotExists, 사용 안 함 | 2.0.0 |
Kubernetes 클러스터 컨테이너 CPU 및 메모리 리소스 한도는 지정된 한도를 초과하지 않아야 함 | Kubernetes 클러스터에서 리소스 소모 공격을 방지하기 위해 컨테이너 CPU 및 메모리 리소스 제한을 적용합니다. 이 정책은 AKS(Azure Kubernetes Service)에서 일반 공급되며 Azure Arc 지원 Kubernetes에서 미리 보기로 제공됩니다. 자세한 내용은 https://aka.ms/kubepolicydoc를 참조하세요. | 감사, 거부, 사용 안 함 | 9.3.0 |
Kubernetes 클러스터 컨테이너는 호스트 프로세스 ID 또는 호스트 IPC 네임스페이스를 공유해서는 안 됨 | Kubernetes 클러스터에서 호스트 프로세스 ID 네임스페이스 및 호스트 IPC 네임스페이스를 공유하지 못하도록 Pod 컨테이너를 차단합니다. 이 권장 사항은 Kubernetes 환경의 보안을 향상시키기 위한 CIS 5.2.2 및 CIS 5.2.3의 일부입니다. 이 정책은 AKS(Azure Kubernetes Service)에서 일반 공급되며 Azure Arc 지원 Kubernetes에서 미리 보기로 제공됩니다. 자세한 내용은 https://aka.ms/kubepolicydoc를 참조하세요. | 감사, 거부, 사용 안 함 | 5.2.0 |
Kubernetes 클러스터 컨테이너는 허용된 AppArmor 프로필만 사용해야 함 | 컨테이너는 Kubernetes 클러스터에서 허용된 AppArmor 프로필만 사용해야 합니다. 이 정책은 AKS(Azure Kubernetes Service)에서 일반 공급되며 Azure Arc 지원 Kubernetes에서 미리 보기로 제공됩니다. 자세한 내용은 https://aka.ms/kubepolicydoc를 참조하세요. | 감사, 거부, 사용 안 함 | 6.2.0 |
Kubernetes 클러스터 컨테이너는 허용된 기능만 사용해야 함 | Kubernetes 클러스터에서 컨테이너의 공격 노출 영역을 줄이기 위해 기능을 제한합니다. 이 권장 사항은 Kubernetes 환경의 보안을 향상시키기 위한 CIS 5.2.8 및 CIS 5.2.9의 일부입니다. 이 정책은 AKS(Azure Kubernetes Service)에서 일반 공급되며 Azure Arc 지원 Kubernetes에서 미리 보기로 제공됩니다. 자세한 내용은 https://aka.ms/kubepolicydoc를 참조하세요. | 감사, 거부, 사용 안 함 | 6.2.0 |
Kubernetes 클러스터 컨테이너는 허용된 이미지만 사용해야 함 | 신뢰할 수 있는 레지스트리의 이미지를 사용하여 알 수 없는 취약성, 보안 문제 및 악성 이미지에 대한 Kubernetes 클러스터의 노출 위험을 줄입니다. 자세한 내용은 https://aka.ms/kubepolicydoc를 참조하세요. | 감사, 거부, 사용 안 함 | 9.3.0 |
Kubernetes 클러스터 컨테이너는 읽기 전용 루트 파일 시스템에서 실행되어야 함 | 읽기 전용 루트 파일 시스템을 통해 컨테이너를 실행하여 Kubernetes 클러스터의 PATH에 추가된 악성 이진 파일로 인한 런타임 시 변경으로부터 보호합니다. 이 정책은 AKS(Azure Kubernetes Service)에서 일반 공급되며 Azure Arc 지원 Kubernetes에서 미리 보기로 제공됩니다. 자세한 내용은 https://aka.ms/kubepolicydoc를 참조하세요. | 감사, 거부, 사용 안 함 | 6.3.0 |
Kubernetes 클러스터 Pod hostPath 볼륨은 허용된 호스트 경로만 사용해야 함 | Pod HostPath 볼륨 탑재를 Kubernetes 클러스터에서 허용된 호스트 경로로 제한합니다. 이 정책은 일반적으로 AKS(Kubernetes Service) 및 Azure Arc 지원 Kubernetes에 사용할 수 있습니다. 자세한 내용은 https://aka.ms/kubepolicydoc를 참조하세요. | 감사, 거부, 사용 안 함 | 6.2.0 |
Kubernetes 클러스터 Pod 및 컨테이너는 승인된 사용자 및 그룹 ID로만 실행해야 함 | Pod 및 컨테이너가 Kubernetes 클러스터에서 실행하는 데 사용할 수 있는 사용자, 기본 그룹, 보조 그룹 및 파일 시스템 그룹 ID를 제어합니다. 이 정책은 AKS(Azure Kubernetes Service)에서 일반 공급되며 Azure Arc 지원 Kubernetes에서 미리 보기로 제공됩니다. 자세한 내용은 https://aka.ms/kubepolicydoc를 참조하세요. | 감사, 거부, 사용 안 함 | 6.2.0 |
Kubernetes 클러스터 Pod는 승인된 호스트 네트워크와 포트 범위만 사용해야 함 | Kubernetes 클러스터에서 호스트 네트워크 및 허용 가능한 호스트 포트 범위에 대한 Pod 액세스를 제한합니다. 이 권장 사항은 Kubernetes 환경의 보안을 향상시키기 위한 CIS 5.2.4의 일부입니다. 이 정책은 AKS(Azure Kubernetes Service)에서 일반 공급되며 Azure Arc 지원 Kubernetes에서 미리 보기로 제공됩니다. 자세한 내용은 https://aka.ms/kubepolicydoc를 참조하세요. | 감사, 거부, 사용 안 함 | 6.2.0 |
Kubernetes 클러스터 서비스는 허용된 포트에서만 수신 대기해야 함 | Kubernetes 클러스터에 대한 액세스를 보호하기 위해 서비스가 허용된 포트에서만 수신 대기하도록 제한합니다. 이 정책은 AKS(Azure Kubernetes Service)에서 일반 공급되며 Azure Arc 지원 Kubernetes에서 미리 보기로 제공됩니다. 자세한 내용은 https://aka.ms/kubepolicydoc를 참조하세요. | 감사, 거부, 사용 안 함 | 8.2.0 |
Kubernetes 클러스터는 권한 있는 컨테이너를 허용하지 않아야 함 | Kubernetes 클러스터는 권한 있는 컨테이너를 만드는 것을 허용하지 않습니다. 이 권장 사항은 Kubernetes 환경의 보안을 향상시키기 위한 CIS 5.2.1의 일부입니다. 이 정책은 AKS(Azure Kubernetes Service)에서 일반 공급되며 Azure Arc 지원 Kubernetes에서 미리 보기로 제공됩니다. 자세한 내용은 https://aka.ms/kubepolicydoc를 참조하세요. | 감사, 거부, 사용 안 함 | 9.2.0 |
Kubernetes 클러스터는 자동 탑재 API 자격 증명을 사용하지 않도록 설정해야 함 | 잠재적으로 손상된 Pod 리소스가 Kubernetes 클러스터에 대해 API 명령을 실행할 수 없도록 자동 탑재 API 자격 증명을 사용하지 않도록 설정합니다. 자세한 내용은 https://aka.ms/kubepolicydoc를 참조하세요. | 감사, 거부, 사용 안 함 | 4.2.0 |
Kubernetes 클러스터는 컨테이너 권한 상승을 허용해서는 안 됨 | 컨테이너가 Kubernetes 클러스터 루트로의 권한 상승을 통해 실행되는 것을 허용하지 않습니다. 이 권장 사항은 Kubernetes 환경의 보안을 향상시키기 위한 CIS 5.2.5의 일부입니다. 이 정책은 AKS(Azure Kubernetes Service)에서 일반 공급되며 Azure Arc 지원 Kubernetes에서 미리 보기로 제공됩니다. 자세한 내용은 https://aka.ms/kubepolicydoc를 참조하세요. | 감사, 거부, 사용 안 함 | 7.2.0 |
Kubernetes 클러스터는 CAP_SYS_ADMIN 보안 기능을 부여하지 않아야 함 | 컨테이너의 공격 노출 영역을 줄이려면 CAP_SYS_ADMIN Linux 기능을 제한합니다. 자세한 내용은 https://aka.ms/kubepolicydoc를 참조하세요. | 감사, 거부, 사용 안 함 | 5.1.0 |
Kubernetes 클러스터는 기본 네임스페이스를 사용하지 않아야 함 | Kubernetes 클러스터에서 기본 네임스페이스를 사용하여 ConfigMap, Pod, Secret, Service 및 ServiceAccount 리소스 종류에 대한 무단 액세스를 방지합니다. 자세한 내용은 https://aka.ms/kubepolicydoc를 참조하세요. | 감사, 거부, 사용 안 함 | 4.2.0 |
컴퓨팅 리소스에 대한 보안 구성 감사 및 적용
ID: Microsoft 클라우드 보안 벤치마크 PV-4 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
[미리 보기]: Azure Stack HCI 서버는 지속적으로 애플리케이션 제어 정책을 적용해야 합니다. | 최소한 모든 Azure Stack HCI 서버에 적용 모드로 Microsoft WDAC 기본 정책을 적용합니다. 적용된 WDAC(Windows Defender 애플리케이션 제어) 정책은 동일한 클러스터의 서버 전체에서 일관되어야 합니다. | Audit, Disabled, AuditIfNotExists | 1.0.0 - 미리 보기 |
[미리 보기]: Azure Stack HCI 서버는 보안 코어 요구 사항을 충족해야 합니다. | 모든 Azure Stack HCI 서버가 보안 코어 요구 사항을 충족하는지 확인합니다. 보안 코어 서버 요구 사항을 사용하도록 설정하려면: 1. Azure Stack HCI 클러스터 페이지에서 Windows Admin Center로 이동하여 연결을 선택합니다. 2. 보안 확장으로 이동하여 보안 코어를 선택합니다. 3. 사용하도록 설정되지 않은 설정을 선택하고 사용을 클릭합니다. | Audit, Disabled, AuditIfNotExists | 1.0.0 - 미리 보기 |
[미리 보기]: 지원되는 Linux 가상 머신에 게스트 증명 확장을 설치해야 함 | 지원되는 Linux 가상 머신에 게스트 증명 확장을 설치하여 Azure Security Center에서 부팅 무결성을 사전에 증명하고 모니터링할 수 있도록 합니다. 설치가 완료되면 원격 증명을 통해 부팅 무결성이 증명됩니다. 이 평가는 신뢰할 수 있는 시작 및 기밀 Linux 가상 머신에 적용됩니다. | AuditIfNotExists, 사용 안 함 | 6.0.0-preview |
[미리 보기]: 지원되는 Linux 가상 머신 확장 집합에 게스트 증명 확장을 설치해야 함 | 지원되는 Linux 가상 머신 확장 집합에 게스트 증명 확장을 설치하여 Azure Security Center에서 부팅 무결성을 사전에 증명하고 모니터링할 수 있도록 합니다. 설치가 완료되면 원격 증명을 통해 부팅 무결성이 증명됩니다. 이 평가는 신뢰할 수 있는 시작 및 기밀 Linux 가상 머신 확장 집합에 적용됩니다. | AuditIfNotExists, 사용 안 함 | 5.1.0-preview |
[미리 보기]: 지원되는 Windows 가상 머신에 게스트 증명 확장을 설치해야 함 | 지원되는 가상 머신에 게스트 증명 확장을 설치하여 Azure Security Center에서 부팅 무결성을 사전에 증명하고 모니터링할 수 있도록 합니다. 설치가 완료되면 원격 증명을 통해 부팅 무결성이 증명됩니다. 이 평가는 신뢰할 수 있는 시작 및 기밀 Windows 가상 머신에 적용됩니다. | AuditIfNotExists, 사용 안 함 | 4.0.0-preview |
[미리 보기]: 지원되는 Windows 가상 머신 확장 집합에 게스트 증명 확장을 설치해야 함 | 지원되는 가상 머신 확장 집합에 게스트 증명 확장을 설치하여 Azure Security Center에서 부팅 무결성을 사전에 증명하고 모니터링할 수 있도록 합니다. 설치가 완료되면 원격 증명을 통해 부팅 무결성이 증명됩니다. 이 평가는 신뢰할 수 있는 시작 및 기밀 Windows 가상 머신 확장 집합에 적용됩니다. | AuditIfNotExists, 사용 안 함 | 3.1.0-preview |
[미리 보기]: Linux 가상 머신은 서명되고 신뢰할 수 있는 부팅 구성 요소만 사용해야 합니다. | 신뢰할 수 있는 게시자가 모든 OS 부팅 구성 요소(부트 로더, 커널, 커널 드라이버)에 서명해야 합니다. 클라우드용 Defender는 하나 이상의 Linux 머신에서 신뢰할 수 없는 OS 부팅 구성 요소를 식별했습니다. 잠재적으로 악의적인 구성 요소로부터 컴퓨터를 보호하려면 허용 목록에 컴퓨터를 추가하거나 식별된 구성 요소를 제거합니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 - 미리 보기 |
[미리 보기]: 지원되는 Windows 가상 머신에서 보안 부팅을 사용하도록 설정해야 함 | 지원되는 Windows 가상 머신에서 보안 부팅을 사용하도록 설정하여 부트 체인에 대한 악의적인 무단 변경을 완화합니다. 이 기능을 사용하도록 설정하면 신뢰할 수 있는 부팅 로더, 커널 및 커널 드라이버만 실행할 수 있습니다. 이 평가는 신뢰할 수 있는 시작 및 기밀 Windows 가상 머신에 적용됩니다. | 감사, 사용 안 함 | 4.0.0-preview |
[미리 보기]: 지원되는 가상 머신에서 vTPM을 사용하도록 설정해야 함 | 지원되는 가상 머신에서 가상 TPM 디바이스를 사용하도록 설정하여 TPM이 필요한 계획 부팅 및 기타 OS 보안 기능을 용이하도록 합니다. 사용하도록 설정되면 vTPM을 사용하여 부팅 무결성을 증명할 수 있습니다. 이 평가는 신뢰할 수 있는 시작을 지원하는 가상 머신에만 적용됩니다. | 감사, 사용 안 함 | 2.0.0-preview |
머신에 게스트 구성 확장을 설치해야 함 | 머신의 게스트 내 설정을 안전하게 구성하려면 게스트 구성 확장을 설치합니다. 확장에서 모니터링하는 게스트 내 설정에는 운영 체제 구성, 애플리케이션 구성 또는 현재 상태 및 환경 설정이 포함됩니다. 설치되면 'Windows Exploit Guard를 사용하도록 설정해야 합니다'와 같은 게스트 내 정책을 사용할 수 있습니다. https://aka.ms/gcpol에서 자세히 알아보세요. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
Linux 머신은 Azure 컴퓨팅 보안 기준의 요구 사항을 충족해야 함 | 필수 구성 요소가 정책 할당 범위에 배포되어야 합니다. 자세한 내용은 https://aka.ms/gcpol 을 참조하세요. Azure 컴퓨팅 보안 기준의 권장 사항 중 하나에 맞게 올바르게 구성되지 않은 머신은 비규격입니다. | AuditIfNotExists, 사용 안 함 | 2.2.0 |
가상 머신의 게스트 구성 확장은 시스템이 할당한 관리 ID를 사용하여 배포해야 함 | 게스트 구성 확장에는 시스템이 할당한 관리 ID가 필요합니다. 게스트 구성 확장이 설치되어 있지만 시스템이 할당한 관리 ID가 없는 경우 이 정책 범위에 속한 Azure 가상 머신은 비준수입니다. https://aka.ms/gcpol에서 자세히 알아보세요. | AuditIfNotExists, 사용 안 함 | 1.0.1 |
Windows 머신은 Azure 컴퓨팅 보안 기준의 요구 사항을 충족해야 함 | 필수 구성 요소가 정책 할당 범위에 배포되어야 합니다. 자세한 내용은 https://aka.ms/gcpol 을 참조하세요. Azure 컴퓨팅 보안 기준의 권장 사항 중 하나에 맞게 올바르게 구성되지 않은 머신은 비규격입니다. | AuditIfNotExists, 사용 안 함 | 2.0.0 |
취약성 평가 수행
ID: Microsoft 클라우드 보안 벤치마크 PV-5 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
취약성 평가 솔루션을 가상 머신에서 사용하도록 설정해야 함 | 가상 머신을 감사하여 지원되는 취약성 평가 솔루션을 실행하고 있는지 검색합니다. 모든 사이버 위험 및 보안 프로그램의 핵심 구성 요소는 취약성을 식별하고 분석하는 것입니다. Azure Security Center의 표준 가격 책정 계층에는 추가 비용 없이 가상 머신에 대한 취약성 검사가 포함됩니다. 또한 Security Center가 자동으로 도구를 배포할 수 있습니다. | AuditIfNotExists, 사용 안 함 | 3.0.0 |
머신에서 발견한 비밀을 해결해야 합니다. | 가상 머신을 감사하여 가상 머신의 비밀 검사 솔루션에서 발견된 비밀이 포함되어 있는지 여부를 검색합니다. | AuditIfNotExists, 사용 안 함 | 1.0.2 |
SQL Managed Instance에서 취약성 평가를 사용하도록 설정해야 함 | 반복 취약성 평가 검사를 사용하도록 설정하지 않은 각 SQL Managed Instance를 감사합니다. 취약성 평가는 잠재적 데이터베이스 취약성을 검색 및 추적할 수 있고 해결하는 데 도움이 될 수 있습니다. | AuditIfNotExists, 사용 안 함 | 1.0.1 |
SQL 서버에서 취약성 평가를 사용하도록 설정해야 합니다. | 취약성 평가가 제대로 구성되지 않은 Azure SQL Server를 감사합니다. 취약성 평가는 잠재적 데이터베이스 취약성을 검색 및 추적할 수 있고 해결하는 데 도움이 될 수 있습니다. | AuditIfNotExists, 사용 안 함 | 3.0.0 |
취약성을 신속하게 자동 수정
ID: Microsoft 클라우드 보안 벤치마크 PV-6 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
Azure 레지스트리 컨테이너 이미지의 취약성이 해결되어야 합니다(Microsoft Defender 취약성 관리 제공). | 컨테이너 이미지 취약성 평가는 레지스트리에서 CVE(일반적으로 알려진 취약성)을 검사하고 각 이미지에 대한 자세한 취약성 보고서를 제공합니다. 취약성을 해결하면 보안 태세가 크게 향상되어 배포 전에 이미지를 안전하게 사용할 수 있습니다. | AuditIfNotExists, 사용 안 함 | 1.0.1 |
Azure 실행 컨테이너 이미지의 취약성이 해결되어야 합니다(Microsoft Defender 취약성 관리 제공). | 컨테이너 이미지 취약성 평가는 레지스트리에서 CVE(일반적으로 알려진 취약성)을 검사하고 각 이미지에 대한 자세한 취약성 보고서를 제공합니다. 이 권장 사항은 현재 Kubernetes 클러스터에서 실행 중인 취약한 이미지에 대한 가시성을 제공합니다. 현재 실행 중인 컨테이너 이미지의 취약성을 수정하는 것은 보안 태세를 개선하고 컨테이너화된 워크로드에 대한 공격 표면을 크게 줄이는 데 중요합니다. | AuditIfNotExists, 사용 안 함 | 1.0.1 |
누락된 시스템 업데이트가 있는지 주기적으로 확인하도록 컴퓨터를 구성해야 함 | 누락된 시스템 업데이트에 대한 정기 평가가 24시간마다 자동으로 트리거되도록 하려면 AssessmentMode 속성을 'AutomaticByPlatform'으로 설정해야 합니다. Windows: https://aka.ms/computevm-windowspatchassessmentmode, Linux: https://aka.ms/computevm-linuxpatchassessmentmode의 AssessmentMode 속성에 대해 자세히 알아봅니다. | 감사, 거부, 사용 안 함 | 3.7.0 |
SQL 데이터베이스가 발견한 취약성을 해결해야 함 | 취약성 평가 검사 결과 및 데이터베이스 취약성을 수정하는 방법에 관한 권장 사항을 모니터링합니다. | AuditIfNotExists, 사용 안 함 | 4.1.0 |
컴퓨터의 SQL Server는 발견한 취약성을 해결해야 함 | SQL 취약성 평가는 데이터베이스를 검사하여 보안 취약성을 찾아내고, 구성 오류, 과도한 권한, 보호되지 않는 중요한 데이터 등과 같이 모범 사례를 따르지 않는 부분을 공개합니다. 발견된 취약성을 해결하면 데이터베이스 보안 상태가 크게 향상될 수 있습니다. | AuditIfNotExists, 사용 안 함 | 1.0.0 |
컴퓨터에 시스템 업데이트를 설치해야 함(업데이트 센터에서 제공) | 머신에 누락된 시스템, 보안 및 중요 업데이트가 있습니다. 소프트웨어 업데이트에는 보안 허점을 메우기 위한 중요한 패치가 포함된 경우가 많습니다. 이러한 허점은 맬웨어 공격에 자주 악용되므로 소프트웨어를 업데이트된 상태로 유지하는 것이 중요합니다. 미적용 패치를 모두 설치하고 머신을 보호하려면 수정 단계를 수행합니다. | AuditIfNotExists, 사용 안 함 | 1.0.1 |
머신 보안 구성의 취약성을 수정해야 합니다. | 구성된 기준을 충족하지 않는 서버는 Azure Security Center에서 권장 사항으로 모니터링됩니다. | AuditIfNotExists, 사용 안 함 | 3.1.0 |
엔드포인트 보안
EDR(엔드포인트 검색 및 응답) 사용
ID: Microsoft 클라우드 보안 벤치마크 ES-1 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
서버용 Azure Defender를 사용하도록 설정해야 함 | 서버용 Azure Defender는 서버 워크로드에 대한 실시간 위협 방지 기능을 제공하고 강화된 권장 사항과 의심스러운 활동에 대한 경고를 생성합니다. | AuditIfNotExists, 사용 안 함 | 1.0.3 |
최신 맬웨어 방지 소프트웨어 사용
ID: Microsoft 클라우드 보안 벤치마크 ES-2 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
Windows Defender Exploit Guard를 머신에서 사용하도록 설정해야 함 | Windows Defender Exploit Guard는 Azure Policy 게스트 구성 에이전트를 사용합니다. Exploit Guard에는 다양한 공격 벡터에 대해 디바이스를 잠그고 맬웨어 공격에서 일반적으로 사용되는 동작을 차단하면서 기업에서 보안 위험과 생산성 요구 사항 사이의 균형을 맞출 수 있도록 설계된 네 가지 구성 요소가 있습니다(Windows에만 해당). | AuditIfNotExists, 사용 안 함 | 2.0.0 |
백업 및 복구
정기적인 자동 백업 보장
ID: Microsoft 클라우드 보안 벤치마크 BR-1 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
Virtual Machines에 Azure Backup을 사용하도록 설정해야 합니다. | Azure Backup을 사용하도록 설정하여 Azure Virtual Machines의 보호를 보장합니다. Azure Backup은 Azure를 위한 안전하고 경제적인 데이터 보호 솔루션입니다. | AuditIfNotExists, 사용 안 함 | 3.0.0 |
Azure Database for MariaDB에 대해 지역 중복 백업을 사용하도록 설정해야 합니다. | Azure Database for MariaDB를 사용하면 데이터베이스 서버에 대한 중복성 옵션을 선택할 수 있습니다. 서버가 호스트되는 지역 내에 저장될 뿐만 아니라 지역 장애 발생 시 복구 옵션을 제공하기 위해 쌍을 이루는 지역에도 복제되는 데이터가 있는 지역 중복 백업 스토리지로 설정할 수 있습니다. 백업을 위한 지역 중복 스토리지 구성은 서버 생성 중에만 허용됩니다. | 감사, 사용 안 함 | 1.0.1 |
Azure Database for MySQL에 대해 지역 중복 백업을 사용하도록 설정해야 합니다. | Azure Database for MySQL을 사용하면 데이터베이스 서버에 대한 중복성 옵션을 선택할 수 있습니다. 서버가 호스트되는 지역 내에 저장될 뿐만 아니라 지역 장애 발생 시 복구 옵션을 제공하기 위해 쌍을 이루는 지역에도 복제되는 데이터가 있는 지역 중복 백업 스토리지로 설정할 수 있습니다. 백업을 위한 지역 중복 스토리지 구성은 서버 생성 중에만 허용됩니다. | 감사, 사용 안 함 | 1.0.1 |
Azure Database for PostgreSQL에 대해 지역 중복 백업을 사용하도록 설정해야 합니다. | Azure Database for PostgreSQL을 사용하면 데이터베이스 서버에 대한 중복성 옵션을 선택할 수 있습니다. 서버가 호스트되는 지역 내에 저장될 뿐만 아니라 지역 장애 발생 시 복구 옵션을 제공하기 위해 쌍을 이루는 지역에도 복제되는 데이터가 있는 지역 중복 백업 스토리지로 설정할 수 있습니다. 백업을 위한 지역 중복 스토리지 구성은 서버 생성 중에만 허용됩니다. | 감사, 사용 안 함 | 1.0.1 |
백업 및 복구 데이터 보호
ID: Microsoft 클라우드 보안 벤치마크 BR-2 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
Virtual Machines에 Azure Backup을 사용하도록 설정해야 합니다. | Azure Backup을 사용하도록 설정하여 Azure Virtual Machines의 보호를 보장합니다. Azure Backup은 Azure를 위한 안전하고 경제적인 데이터 보호 솔루션입니다. | AuditIfNotExists, 사용 안 함 | 3.0.0 |
Azure Database for MariaDB에 대해 지역 중복 백업을 사용하도록 설정해야 합니다. | Azure Database for MariaDB를 사용하면 데이터베이스 서버에 대한 중복성 옵션을 선택할 수 있습니다. 서버가 호스트되는 지역 내에 저장될 뿐만 아니라 지역 장애 발생 시 복구 옵션을 제공하기 위해 쌍을 이루는 지역에도 복제되는 데이터가 있는 지역 중복 백업 스토리지로 설정할 수 있습니다. 백업을 위한 지역 중복 스토리지 구성은 서버 생성 중에만 허용됩니다. | 감사, 사용 안 함 | 1.0.1 |
Azure Database for MySQL에 대해 지역 중복 백업을 사용하도록 설정해야 합니다. | Azure Database for MySQL을 사용하면 데이터베이스 서버에 대한 중복성 옵션을 선택할 수 있습니다. 서버가 호스트되는 지역 내에 저장될 뿐만 아니라 지역 장애 발생 시 복구 옵션을 제공하기 위해 쌍을 이루는 지역에도 복제되는 데이터가 있는 지역 중복 백업 스토리지로 설정할 수 있습니다. 백업을 위한 지역 중복 스토리지 구성은 서버 생성 중에만 허용됩니다. | 감사, 사용 안 함 | 1.0.1 |
Azure Database for PostgreSQL에 대해 지역 중복 백업을 사용하도록 설정해야 합니다. | Azure Database for PostgreSQL을 사용하면 데이터베이스 서버에 대한 중복성 옵션을 선택할 수 있습니다. 서버가 호스트되는 지역 내에 저장될 뿐만 아니라 지역 장애 발생 시 복구 옵션을 제공하기 위해 쌍을 이루는 지역에도 복제되는 데이터가 있는 지역 중복 백업 스토리지로 설정할 수 있습니다. 백업을 위한 지역 중복 스토리지 구성은 서버 생성 중에만 허용됩니다. | 감사, 사용 안 함 | 1.0.1 |
DevOps Security
DevOps 수명 주기 전반에 걸쳐 워크로드 보안 적용
ID: Microsoft 클라우드 보안 벤치마크 DS-6 소유권: 공유됨
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
Azure 레지스트리 컨테이너 이미지의 취약성이 해결되어야 합니다(Microsoft Defender 취약성 관리 제공). | 컨테이너 이미지 취약성 평가는 레지스트리에서 CVE(일반적으로 알려진 취약성)을 검사하고 각 이미지에 대한 자세한 취약성 보고서를 제공합니다. 취약성을 해결하면 보안 태세가 크게 향상되어 배포 전에 이미지를 안전하게 사용할 수 있습니다. | AuditIfNotExists, 사용 안 함 | 1.0.1 |
Azure 실행 컨테이너 이미지의 취약성이 해결되어야 합니다(Microsoft Defender 취약성 관리 제공). | 컨테이너 이미지 취약성 평가는 레지스트리에서 CVE(일반적으로 알려진 취약성)을 검사하고 각 이미지에 대한 자세한 취약성 보고서를 제공합니다. 이 권장 사항은 현재 Kubernetes 클러스터에서 실행 중인 취약한 이미지에 대한 가시성을 제공합니다. 현재 실행 중인 컨테이너 이미지의 취약성을 수정하는 것은 보안 태세를 개선하고 컨테이너화된 워크로드에 대한 공격 표면을 크게 줄이는 데 중요합니다. | AuditIfNotExists, 사용 안 함 | 1.0.1 |
다음 단계
Azure Policy에 대한 추가 문서:
- 규정 준수 개요
- 이니셔티브 정의 구조를 참조합니다.
- Azure Policy 샘플의 다른 예제를 검토합니다.
- 정책 효과 이해를 검토합니다.
- 규정 비준수 리소스를 수정하는 방법을 알아봅니다.