Azure 컨테이너 보안은 개인 레지스트리의 신뢰 할 수 있는 이미지만 사용하고, 권한 및 사용자 액세스를 제한하여 모든 활동을 지속적으로 검색하고 모니터링하여 전체 컨테이너 수명주기 동안 취약점 검색을 수행합니다.
Azure 컨테이너 보안
Microsoft Azure는 현재 시장에서 가장 빠르게 성장하고 두 번째로 큰 클라우드 기반 애플리케이션입니다. 포춘 500대 기업 중 95%가 사용하는 Microsoft Azure는 개발자에게 어디서나 응용 프로그램을 자유롭게 빌드, 관리 및 배포할 수 있는 클라우드 컴퓨팅 플랫폼입니다. 가상 머신, 사물 인터넷 및 컨테이너를 포함한 다양한 서비스를 제공합니다.
Microsoft Azure 컨테이너는 개발자와 조직 모두에게 민첩성과 확장성을 인프라와 함께 제공합니다. Azure에서 컨테이너를 빌드하는 것은 좋지만 기본 통합 보안을 제공하지 않습니다. Azure 컨테이너 보안은 고객의 책임입니다.
고려할 사항
Azure 컨테이너를 보호할 때 고려해야 할 사항은 다음과 같습니다.
이미지
모든 컨테이너와 마찬가지로 Azure 컨테이너에서 이미지 보안 유지는 가장 중요한 보안 단계 중 하나입니다. 컨테이너는 리포지토리에 저장된 이미지로 만들어집니다. 각 이미지에는 개별적으로 취약점을 포함하고 잠재적으로 손상될 수 있는 여러 소프트웨어 계층이 있습니다. 승인된 컨테이너 이미지만 개발 환경에 허용함으로써 사이버 범죄자의 공격 영역을 크게 줄일 수 있습니다. 승인되지 않은 컨테이너 이미지의 사용을 모니터링하고 방지할 수 있는 프로세스와 도구를 갖추는 것이 중요합니다.
컨테이너의 환경으로의 흐름을 제어하는 또 다른 옵션은 이미지 서명 또는 지문입니다. 이는 컨테이너와 컨테이너 이미지의 무결성을 확인할 수 있는 보관 체인을 제공합니다. 이미지를 레지스트리로 푸시하기 전에 컨테이너 개발이 완료된 후 최종 평가로 컨테이너에 대한 취약점 스캔을 수행하는 것이 중요합니다.
자격 증명
Azure 컨테이너에도 적용해야 하는 기본 보안 모범 사례입니다. 이미지나 커널을 통한 취약점이 악용되면 침입자는 여러 클러스터 및 리전에 대한 액세스 권한과 잠재적인 권한까지 획득하게 됩니다. 컨테이너가 가장 낮은 권한으로 작동하고 작업을 수행하는데 필요한 액세스 권한을 확보하면 위험에 노출되는 것을 줄일 수 있습니다.
불필요한 권한을 제거하여 직원이 퇴사 또는 업무 변경 시, 컨테이너 공격 위험이 줄어듭니다. 또한 컨테이너 런타임에서 불필요하거나 사용하지 않은 권한이나 프로세스를 제거하여 잠재적인 공격 노출을 줄일 수 있습니다.
레지스트리
Azure 컨테이너는 공용 또는 개인 레지스트리에 저장된 이미지로 빌드됩니다. 공개 레지스트리에서 이미지를 검색하는 것이 더 쉬워 보일 수 있지만 보안을 보장하지는 않습니다. 위에서 언급했듯이 컨테이너 이미지에는 여러 계층의 소프트웨어가 있으며 각 계층에는 취약점이 있을 수 있습니다.
공용 레지스트리의 이미지는 개인 레지스트리보다 악성 소프트웨어가 첨부되어 있을 가능성이 높습니다. 개인 레지스트리의 이미지는 제대로 스캔될 가능성이 높으며 위험이 적습니다. 개인 레지스트리는 역할 기반 액세스 제어 기능을 갖추고 있어 더 많은 관리 및 보안을 제공합니다. 개인 컨테이너 이미지 레지스트리의 예로는 Azure Container Registry, Docker Trusted Registry 또는 Cloud Native Computing Foundation의 오픈소스 하버 프로젝트가 있습니다.
커널
모든 컴퓨터는 하드웨어의 부분 위에 구축됩니다. 운영 체제에 내장된 소프트웨어인 커널은 하드웨어와 시스템의 나머지 부분이 상호 작용 할 수 있도록 브리지 역할을 합니다. 가상 머신과 달리 컨테이너는 공유 커널뿐만 아니라 서비스 전체에서 개방형 네트워크 트래픽을 갖습니다. 호스트 운영 체제 커널을 공유하는 기능은 컨테이너의 가장 큰 이점 중 하나이지만, 보안 문제의 큰 원인이기도 합니다.
런타임 동안 커널과 컨테이너간에 많은 격리가 없기 때문에 공유 운영 체제 커널에 있는 취약점을 사용하여 컨테이너를 악용하거나 액세스 할 수 있습니다. 공격자는 단순히 메모리 내 커널 데이터를 변경하여 악의적인 코드를 주입하지 않고도 OS의 동작을 조작할 수 있습니다.
Azure 컨테이너 보안
뛰어난 휴대성, 확장성 및 안정성을 본다면 대부분의 기업이 애플리케이션을 실행하는 데 Microsoft Azure 컨테이너를 사용한다는 사실은 놀랍지 않습니다. 컨테이너 수명 주기에서 취약점 검색이 완료되고 모든 활동이 모니터링 및 기록되므로 Azure 컨테이너가 안전하다는 것을 쉽게 알 수 있습니다.