확장 프로그램 런타임 보안
확장 프로그램은 Visual Studio Code의 기능을 크게 향상시킵니다. 악성 코드 실행 및 데이터 개인 정보 보호 문제와 같은 위험을 초래할 수도 있습니다. Visual Studio Marketplace에는 악성 확장 프로그램으로부터 사용자를 보호하는 여러 가지 방법이 있습니다. 또한 VS Code는 확장 프로그램의 안정성에 대한 몇 가지 지표를 제공합니다.
이 문서는 VS Code 확장 프로그램의 런타임 권한과 악성 확장 프로그램으로부터 사용자를 보호하기 위한 조치에 대해 설명합니다. 설치하기 전에 확장 프로그램의 안정성에 대한 정보에 입각한 결정을 내리는 방법을 배울 수 있습니다.
확장 프로그램 런타임 권한 정보
확장 프로그램 호스트는 VS Code에서 확장 프로그램을 실행하는 역할을 합니다. 확장 프로그램 호스트는 VS Code 자체와 동일한 권한을 갖습니다. 즉, VS Code가 수행할 수 있는 모든 작업은 확장 프로그램도 확장 프로그램 호스트를 통해 수행할 수 있습니다.
예를 들어, 확장 프로그램은 사용자 컴퓨터에서 파일을 읽고 쓸 수 있고, 네트워크 요청을 할 수 있으며, 외부 프로세스를 실행하고, 작업 영역 설정을 수정할 수 있습니다.
확장 프로그램 게시자 신뢰
VS Code 릴리스 1.97부터 타사 게시자의 확장 프로그램을 처음 설치할 때 VS Code는 해당 확장 프로그램 게시자를 신뢰하는지 확인하는 대화 상자를 표시합니다.
확장 프로그램 팩 또는 다른 확장 프로그램에 종속된 확장 프로그램의 게시자를 신뢰하면 종속된 확장 프로그램의 게시자도 신뢰하게 됩니다.
이전에 설치한 확장 프로그램의 게시자는 신뢰할 수 있는 것으로 간주되며 신뢰할 수 있는 게시자 목록에 자동으로 추가됩니다.
확장 프로그램: 신뢰할 수 있는 확장 프로그램 게시자 관리 명령을 사용하여 신뢰할 수 있는 확장 프로그램 목록을 관리할 수 있습니다.
VS Code 명령줄을 사용하여 확장 프로그램을 설치할 때 확장 프로그램의 게시자는 자동으로 신뢰되지 않습니다.
확장 프로그램 안정성 확인
확장 프로그램을 설치하기 전에 안정성을 확인할 수 있는 여러 단계를 수행할 수 있습니다. Visual Studio Marketplace는 정보에 입각한 결정을 내리는 데 도움이 되는 확장 프로그램 정보를 제공합니다.
-
평가 및 리뷰: 다른 사람들이 확장 프로그램에 대해 어떻게 생각하는지 읽어보세요.
-
Q & A: 기존 질문과 게시자의 응답 수준을 검토하세요. 문제가 있는 경우 확장 프로그램 게시자와 소통할 수도 있습니다.
-
문제, 리포지토리 및 라이선스: 게시자가 이러한 정보를 제공했는지, 예상하는 지원을 받고 있는지 확인하세요.
-
확인된 게시자: 게시자 이름 및 도메인 이름 옆의 파란색 확인 표시를 추가적인 신뢰 신호로 사용하세요. 이 확인 표시는 게시자가 마켓플레이스에 도메인 이름 소유권을 입증했음을 나타냅니다. 또한 마켓플레이스가 도메인 이름을 확인했으며 게시자가 마켓플레이스에서 최소 6개월 동안 좋은 평판을 유지하고 있음을 보여줍니다.

조직에서 사용할 수 있는 확장 프로그램을 강제 적용하려면 VS Code에서 허용되는 확장 프로그램 구성 방법을 확인하세요.
마켓플레이스 보호 기능
Visual Studio Marketplace는 악성 확장 프로그램으로부터 사용자를 보호하기 위해 여러 메커니즘을 사용합니다.
-
악성 코드 스캔: 마켓플레이스는 게시되는 각 확장 프로그램 패키지에 대해 악성 코드 스캔을 실행하여 안전성을 보장합니다. 여러 바이러스 백신 엔진을 사용하는 이 스캔은 각 새 확장 프로그램과 각 확장 프로그램 업데이트에 대해 실행됩니다. 스캔이 완료될 때까지 확장 프로그램은 마켓플레이스에 공개적으로 게시되지 않습니다.
-
동적 탐지: 마켓플레이스는 샌드박스 환경(클린 룸 VM)에서 확장 프로그램을 실행하여 확장 프로그램의 런타임 동작을 확인하는 동적 탐지를 수행합니다.
-
확인된 게시자: 게시자는 도메인 소유권을 입증하여 신원을 확인할 수 있습니다(파란색 확인 표시). 이는 게시자가 마켓플레이스에 도메인 이름 소유권을 입증했음을 나타냅니다. 또한 마켓플레이스가 도메인 이름을 확인했으며 게시자가 마켓플레이스에서 최소 6개월 동안 좋은 평판을 유지하고 있음을 보여줍니다.
-
비정상 사용 모니터링: 마켓플레이스는 확장 프로그램의 다운로드 및 사용 패턴을 모니터링하여 비정상적인 동작을 탐지합니다.
-
이름 도용 방지: 마켓플레이스는 확장 프로그램 작성자가 Microsoft 또는 RedHat과 같은 공식 게시자의 이름과 GitHub Copilot과 같은 인기 있는 확장 프로그램의 이름을 도용하는 것을 방지합니다.
-
차단 목록: 악성 확장 프로그램이 신고 및 확인되거나 확장 프로그램 종속성에서 취약점이 발견되면 해당 확장 프로그램은 마켓플레이스에서 제거되고 *차단 목록*에 추가됩니다. 확장 프로그램이 이미 설치된 경우 VS Code에서 자동으로 제거됩니다.
-
확장 프로그램 서명 확인: Visual Studio Marketplace는 게시 시 모든 확장 프로그램에 서명합니다. VS Code는 확장 프로그램을 설치할 때 이 서명을 확인하여 확장 프로그램 패키지의 무결성과 소스를 확인합니다.
-
보안 문자열 스캔: 마켓플레이스는 새로 게시되는 모든 확장 프로그램에서 API 키 또는 자격 증명(예: Azure DevOps PAT 토큰)과 같은 보안 문자열을 자동으로 스캔합니다. 보안 문자열이 감지되면 잠재적인 보안 위험을 방지하기 위해 게시가 차단됩니다. VSCE 도구는 패키징 중에
.env파일을 스캔하고 보안 문자열이 발견되면 게시를 차단합니다.
이러한 조치에 대한 자세한 내용은 Visual Studio Marketplace의 보안 및 신뢰 블로그 게시물에서 확인할 수 있습니다.
의심스러운 확장 프로그램 신고
의심스러운 확장 프로그램을 발견하면 마켓플레이스 팀에 신고하세요. 마켓플레이스 팀은 영업일 기준 1일 이내에 초기 응답을 제공합니다.
확장 프로그램을 신고하는 방법
-
Visual Studio Marketplace에서 확장 프로그램 페이지를 엽니다.
-
확장 프로그램 추가 정보 섹션 하단에 있는 문제 신고 링크를 선택합니다.
관련 리소스
-
Visual Studio Code에서 확장 프로그램을 설치하고 관리하는 방법을 알아보세요(Visual Studio Code).
-
작업 영역 신뢰를 사용하여 프로젝트 폴더의 코드가 명시적인 승인 없이 VS Code 및 확장 프로그램에서 실행될 수 있는지 여부를 결정하세요. 이렇게 하면 익숙하지 않은 코드를 작업할 때 추가적인 보안 계층이 제공됩니다.
-
VS Code에서 허용되는 확장 프로그램 구성을 통해 조직에서 사용할 수 있는 확장 프로그램을 강제 적용하세요.