훼손된 GCP 사용자 인증 정보 처리

Google Cloud Platform(GCP) 사용자 인증 정보는 GCP에 호스트된 리소스에 대한 액세스를 제어합니다. 데이터를 안전하게 유지하고 공격자로부터 보호하려면 극도로 주의를 기울여 사용자 인증 정보를 처리해야 합니다.

모든 GCP 사용자 인증 정보를 의도치 않은 액세스로부터 보호해야 합니다. 이러한 사용자 인증 정보에는 다음 목록이 포함되며 이에 국한되지 않습니다.

Cloud Platform Console에서 생성되고 관리되는 서비스 사용자 인증 정보:

  • 서비스 계정 비공개 키(JSON 및 p12 파일)
  • API 키
  • OAuth2 클라이언트 ID 암호

개발자 워크스테이션에서 만들고 관리하는 사용자 인증 정보:

  • Google Cloud SDK 사용자 인증 정보 - gcloud info 명령어를 실행하여 보고되는 User Config 디렉토리에 저장됩니다.
  • 브라우저 쿠키 - 이 쿠키는 브라우저에 특정한 쿠키이지만, 일반적으로 개발자의 워크스테이션에 저장됩니다.

사용자 인증 정보 중 손상된 정보가 있는 것으로 의심되는 경우, GCP 계정에 미치는 영향을 제한하기 위한 즉각적인 조치를 취해야 합니다.

GCP 계정을 보호하기 위한 즉각적인 조치 단계

사용자 인증 정보 취소 및 재발급

모든 사용자 인증 정보 유형을 취소하고 다시 발급할 수 있습니다. 사용자 인증 정보를 취소한 결과로서 서비스가 중단되지 않도록, 신중하게 절차를 진행하세요.

일반적으로, 먼저 새 사용자 인증 정보를 생성한 다음에 이 정보를 필요로 하는 모든 서비스와 사용자에게 푸시하고, 마지막으로 이전 사용자 인증 정보를 취소하는 것이 최선의 방법입니다.

서비스 계정 비공개 키 바꾸기

Cloud Platform Console에서 '서비스 계정'을 검색하고 영향을 받는 서비스 계정을 찾습니다. 서비스 계정을 위한 새로운 키를 만들어 이전 키가 사용되었던 모든 위치로 푸시한 다음, 이전 키를 삭제합니다.

API 키 재생성

Cloud Platform Console에서 '사용자 인증 정보'를 검색합니다. 손상된 API 키와 똑같이 구성된 사용자 인증 정보 만들기 버튼을 사용하여 새 API 키를 만듭니다. API 키에 대한 제한 사항이 일치해야 하며, 그렇지 않으면 중단될 수 있습니다. 이전 키가 사용된 모든 위치로 API 키를 푸시한 다음, 이전 키를 삭제합니다.

OAuth2 클라이언트 ID 암호 재설정

클라이언트 ID 암호를 변경하면 암호가 순환되는 동안 일시적으로 서비스가 중단됩니다.

Cloud Platform Console에서 '사용자 인증 정보'를 검색합니다. 원하는 OAuth2 클라이언트 ID를 선택하고 편집합니다. 암호 재설정 버튼을 클릭하고 새 암호를 애플리케이션으로 푸시합니다.

Google Cloud SDK 사용자 인증 정보 삭제

Google Cloud SDK 사용자 인증 정보가 손상된 사용자는 accounts.google.com을 방문하여 연결된 앱 및 사이트로 이동한 후 연결된 앱 목록에서 Google Cloud SDK를 삭제해야 합니다.

gcloud 명령줄 도구를 다시 사용하면 사용자에게 애플리케이션을 다시 승인하라는 메시지가 자동으로 표시됩니다.

G Suite 관리자가 사용자를 대신해 이 작업을 수행할 수도 있습니다.

브라우저 쿠키 무효화

브라우저 쿠키가 손상되었다는 의심이 드는 사용자는 accounts.google.com에서 즉시 자신의 비밀번호를 변경해야 합니다. 그러면 기존의 모든 쿠키가 무효화되고 브라우저에서 사용자에게 다시 로그인할 것을 요구합니다.

G Suite 관리자가 사용자를 대신해 이 작업을 수행할 수도 있습니다.

미승인 액세스 및 리소스 찾기

누출된 사용자 인증 정보를 취소하고 서비스를 복원한 후 GCP 리소스에 대한 모든 액세스를 검토해야 합니다.

기본적으로 영향을 받는 모든 GCP 프로젝트의 Cloud Platform 콘솔에서 활동 로그를 검사하고('활동' 검색) 모든 액세스(특히 누출된 사용자 인증 정보에 관련된 액세스)가 예상한 바와 같은지 확인해야 합니다.

모든 미승인 리소스 삭제

프로젝트와 관련된 VM, Google App Engine 앱, 서비스 계정, Google Cloud Storage 버킷 등, 예기치 않은 리소스가 없음을 확인하세요.

모든 미승인 리소스를 파악한 것으로 판단되면 이러한 리소스를 즉시 삭제할 수 있습니다. 이는 데이터를 유출하거나 프로덕션 시스템을 손상시킬 수 있는 Compute 스타일 리소스에 특히 중요합니다.

또는 자체 포렌식 팀과 Google Cloud 지원팀이 추가적인 포렌식 작업을 수행할 수 있도록 미승인 리소스의 격리를 시도할 수도 있습니다.

Google Cloud 지원팀에 문의

Google Cloud 지원팀에 문의하세요.

일반 권장사항

코드에서 사용자 인증 정보 분리

소스 코드에서 사용자 인증 정보를 따로 관리하고 저장합니다. GitHub와 같은 소스 관리 사이트로 사용자 인증 정보와 소스 코드를 모두 실수로 푸시하는 바람에 사용자 인증 정보가 공격에 취약한 상태에 놓이는 일이 비일비재합니다.

서비스 계정 권장사항

서비스 계정에 대한 권장사항을 따르세요.

이 페이지가 도움이 되었나요? 평가를 부탁드립니다.

다음에 대한 의견 보내기...