콘텐츠로 이동하기
보안 & 아이덴티티

AI 워크로드를 위한 Secure Boot 활성화 방법

2025년 7월 18일
Maciej Strzelczyk

Developer Programs Engineer

Aron Eidelman

Developer Relations Engineer, Security Advocate

Try Gemini 2.5

Our most intelligent model is now available on Vertex AI

Try now

해당 블로그의 원문은 2025년 7월 19일 Google Cloud 블로그(영문)에 게재되었습니다. 


조직들이 강력한 GPU 가속 워크로드를 빠르게 배포하는 과정에서, 시스템이 켜지는 바로 그 순간부터 무결성을 보장하는 기본적인 단계를 간과할 수 있습니다.

하지만, 위협 행위자들은 이 점을 간과하지 않았습니다. 그들은 전통적인 보안 소프트웨어가 로드되기 전에 제어권을 장악하는 부트킷(bootkits)과 같은 정교한 악성코드로 부팅 프로세스를 점점 더 많이 노리고 있습니다. 이 악성코드는 데이터 탈취나 가장 가치 있는 AI 모델을 손상시키기 위해 최고 수준의 권한을 확보합니다.

Why it matters: 모든 서버의 가장 기본적인 보안 조치는 전원이 켜지는 순간 무결성을 확인하는 것입니다. Secure Boot으로 알려진 이 프로세스는 주요 방어 체계가 작동하기도 전에 시스템을 장악할 수 있는 심층 악성코드를 막기 위해 설계되었습니다.

Secure Boot은 Google Cloud의 Shielded VM 서비스의 일부로, AI 워크로드를 처리하는 VM을 포함하여 Compute VM 인스턴스의 무결성을 확인할 수 있게 해줍니다. 이 기능은 별도의 도구나 이벤트 기반 규칙을 사용하지 않고도 초기 부팅 이후의 변경 사항을 추적할 수 있는 유일한 주요 클라우드 서비스입니다.

The bottom line: 조직은 성능을 위해 보안을 희생할 필요가 없습니다. 이제 GPU 드라이버에 직접 서명하여 AI 워크로드를 저해하지 않고도 인프라의 기반을 안전하게 잠글 수 있는 명확하고 반복 가능한 프로세스가 마련되었습니다.

저희의 Secure Boot 기능은 추가 비용 없이 선택할 수 있으며, 이제 GPU 가속 머신에서 이 기능을 설정하는 새롭고 더 쉬운 방법이 제공됩니다.

부트킷의 위험성 이해하기

시스템을 부팅 단계의 위협으로부터 보호하는 것은 매우 중요합니다. 부트킷(bootkit)은 운영체제의 기반인 부팅 프로세스를 노립니다. 부트로더와 초기 단계 시스템 구성 요소를 침해함으로써, 운영체제와 보안 조치가 로드되기 전에 커널 수준의 제어권을 얻습니다. 이렇게 되면 악성코드는 최고 권한으로 작동하며 기존 보안 소프트웨어를 우회할 수 있습니다.

이러한 기술은 MITRE ATT&CK 프레임워크의 지속성(Persistence) 및 방어 회피(Defense Evasion) 전술에 해당됩니다. 부트킷은 낮은 수준에서 작동하기 때문에 탐지하고 제거하기가 어렵습니다. 이들은 시스템 호출을 가로채고 데이터를 조작하여 숨으며, 재부팅 후에도 지속되고, 데이터를 탈취하며, 악성코드를 설치하고, 보안 기능을 비활성화합니다.

부트킷과 루트킷은 지속적이고 내장된 위협을 제기하며, Google Threat Intelligence Group, European Union Agency for Cybersecurity(ENISA), 그리고 미국 Cybersecurity and Infrastructure Security Agency(CISA)의 최근 위협 행위자 동향에서 관찰되었습니다. Google Cloud는 제품을 강화하고 고객이 직접 사용할 수 있는 도구를 제공함으로써 솔루션의 보안을 지속적으로 개선하고 있습니다. 이 글에서는 GPU 가속 머신을 위한 Secure Boot을 설정하는 새롭고 더 쉬운 방법을 보여드리고자 합니다.

GPU 사용 시 Secure Boot의 한계

Shielded VMs은 Google Cloud의 가상화 및 Titan 칩으로 보호되는 TPM 2.0 규격의 가상 신뢰 플랫폼 모듈(vTPM)을 신뢰의 근원으로 사용합니다. Secure Boot이 서명된 소프트웨어 실행을 강제하는 동안, Measured Boot은 부팅 구성 요소 측정값을 vTPM에 기록하여 원격 증명 및 무결성 검증을 수행합니다.

한계는 운영 체제 공식 배포판의 일부가 아닌 커널 모듈을 사용하려고 할 때 발생합니다. 이는 드라이버가 보통 공식 배포판에 포함되지 않는 GPU에 의존하는 AI 워크로드에 특히 문제가 됩니다. Secure Boot이 활성화된 시스템에 GPU 드라이버를 수동으로 설치하면, 올바르게 서명되지 않았기 때문에 시스템이 드라이버 사용을 거부합니다.

GPU 가속 머신에서 Secure Boot을 사용하는 방법

Google Cloud에 Secure Boot을 통해 GPU 드라이버의 유효성을 확인할 때 사용자의 서명을 신뢰하도록 알리는 방법은 두 가지가 있습니다. 바로 자동화된 스크립트를 사용하거나 수동으로 설정하는 방법입니다.

Secure Boot 호환 이미지를 준비하는 데 도움이 되는 스크립트는 오픈소스로 제공되며, 저희 GitHub 저장소에서 이용할 수 있습니다. 사용 방법은 다음과 같습니다.

로드 중...

스크립트를 사용하면 아래 설명된 다섯 가지 단계를 모두 자동으로 실행할 수 있습니다. 설치 과정에 약 30분이 소요될 수 있습니다. 스크립트 사용 방법에 대한 자세한 내용은 저희 문서에서도 확인할 수 있습니다.

수동으로 Google Cloud에 사용자의 서명을 신뢰하도록 설정하려면 다음 다섯 가지 단계를 따르세요. (이 방법 또한 저희 문서에서 제공됩니다.)

  1. 드라이버 서명에 사용할 자체 인증서를 생성합니다.

  2. 선택한 OS로 새 VM을 생성합니다(Secure Boot 비활성화, GPU는 필수가 아님).

  3. GPU 드라이버(선택적으로 CUDA 툴킷)를 설치하고 서명합니다.

  4. 자체 서명된 드라이버가 포함된 머신을 기반으로 새 디스크 이미지를 생성하고, 생성한 인증서를 신뢰할 수 있는 인증서 목록에 추가합니다.

  5. 이제 이 새 이미지를 Secure Boot이 활성화된 VM과 함께 사용할 수 있습니다.

스크립트를 사용했든 수동으로 작업을 수행했든, 이 절차가 올바르게 작동했는지 확인해야 합니다.

생성된 이미지를 사용해 새로운 GPU 가속 VM 시작하기

모든 과정이 제대로 작동했는지 확인하려면, 다음 명령어를 사용해 새 디스크 이미지를 가진 새로운 VM을 생성하면 됩니다(Secure Boot 옵션을 활성화하여 프로세스가 성공했는지 확인합니다).

로드 중...

Clean up

확인 절차가 끝난 후에는 더 이상 검증용 VM을 유지할 필요가 없습니다. 다음 명령어를 사용해 삭제할 수 있습니다.

로드 중...

Secure Boot 활성화

AI 워크로드를 위한 Secure Boot 호환 기본 이미지를 구축했으니, 이제 해당 이미지를 사용할 때 VM 인스턴스에서 Secure Boot을 활성화해야 합니다. Secure Boot은 기본적으로 비활성화되어 있으므로, Compute Engine 인스턴스에서 명시적으로 활성화해야 합니다.

새 인스턴스를 생성할 때

Cloud Console을 사용하여 새 인스턴스를 생성할 때, Secure Boot을 활성화하는 체크박스는 생성 페이지의 '보안(Security)' 탭에 있는 'Shielded VM' 섹션에서 찾을 수 있습니다.

https://storage.googleapis.com/gweb-cloudblog-publish/images/image1_w9REqr7.max-1100x1100.png

Google Cloud를 선호하는 사용자를 위해 gcloud compute instances create 명령어에 --shielded-secure-boot 플래그를 사용할 수 있습니다.

기존 인스턴스 업데이트

이미 존재하는 인스턴스에도 Secure Boot을 활성화할 수 있지만, 호환 가능한 시스템이 실행 중인지 확인해야 합니다. 만약 머신에 설치된 드라이버가 올바르게 구성된 키로 서명되지 않았다면, 드라이버가 로드되지 않습니다. 기존 VM의 Secure Boot 구성을 업데이트하려면, 이 문서 페이지에 설명된 대로 중지, 업데이트, 재시작(stop, update and restart) 절차를 따라야 합니다.

시작하기 

이 프로세스에 대해 더 자세히 알아보려면 저희 문서 페이지를 방문하고, 다른 GPU 자동화 소식들을 놓치지 않으려면 저희 GitHub 저장소를 팔로우해 주세요.

게시 위치