개발 도구가 공격 표면이 될 때: VS Code 확장에서 발견된 보안 이슈
- 이시우

- 3일 전
- 3분 분량
"개발 도구는 민감한 자원과 운영 시스템과 직접적으로 연결되어 있기 때문에, 이러한 도구 내의 취약점이 공격자에게 실제 침투 경로가 될 수 있습니다".

최근 널리 사용되는 Visual Studio Code 확장 프로그램 4종에서 개발자 워크스테이션에 영향을 줄 수 있는 보안 취약점 이슈가 보고되었다. 이번 사례는 일반적으로 논의되는 서버 취약점과는 성격이 다르다. 운영 서버나 외부에 노출된 인프라가 아니라 개발 환경 자체가 공격 표면으로 활용될 수 있다는 점이 핵심이다.
현대의 개발 도구는 로컬 시스템과 매우 긴밀하게 연결되어 있다. VS Code 확장 프로그램은 워크스페이스 파일, 설정 파일, 미리보기 렌더링 기능, 그리고 로컬 개발 서버(localhost) 등 다양한 요소와 상호작용한다. 이러한 구조 때문에 개발 편의를 위해 제공된 기능이 공격자에게는 새로운 접근 경로로 활용될 가능성이 존재한다.
이번에 보고된 취약점들은 공통적으로 “개발 편의 기능”을 공격자가 역이용할 수 있다는 특징을 가진다. 취약점이 발생할 경우 단순한 애플리케이션 이슈를 넘어 개발자 PC의 워크스페이스 내부 정보와 시크릿 정보 노출로 이어질 수 있다. 개발 환경에는 .env 파일, API 토큰, 인증 키, 설정 파일 등 외부로 노출되어서는 안 되는 정보가 포함되어 있는 경우가 많다.
특히 Live Server / Live Preview 계열 확장의 경우 개발자가 확장을 켠 상태에서 악성 웹 콘텐츠나 조작된 파일을 열도록 유도될 수 있다. 이러한 경우 워크스페이스 파일이나 시크릿 정보가 노출될 가능성이 있으며, 반드시 cmd 또는 PowerShell 같은 명령 실행이 수반되지 않더라도 정보 유출 자체만으로도 후속 침해로 이어질 수 있다.
예를 들어 노출된 인증 정보나 토큰은 소스 코드 저장소(SCM), 클라우드 리소스, 또는 CI/CD 파이프라인 접근으로 이어질 수 있으며, 이를 통해 공격자는 조직 내부 환경으로 추가적인 접근을 시도할 수 있다.
또 다른 사례는 Code Runner 확장이다. 이 확장은 에디터에서 직접 코드를 실행할 수 있도록 지원하며, 실행 방식은 executorMap과 같은 설정을 통해 정의된다. 만약 이러한 설정이 오염되거나 조작될 경우 사용자가 실행을 트리거하는 순간 예상하지 못한 명령이 실행될 수 있다. 특정 조건에서는 이러한 동작이 개발자 워크스테이션에서의 원격 코드 실행(Remote Code Execution)으로 이어질 가능성도 존재한다.
또한 Markdown Preview Enhanced 계열의 경우 “문서 열람 또는 미리보기” 자체가 공격 트리거가 될 수 있다는 점이 중요하다. 개발자는 README, 기술 문서, 위키, PR/이슈 등 Markdown 기반 콘텐츠를 자주 열람하는데, 이러한 preview 또는 rendering 경로가 악용될 경우 워크스페이스 내부의 로컬 정보가 노출되거나 후속 공격을 위한 사전 정찰 단계로 이어질 수 있다.
이번 사례는 개발자 시스템이 조직 내부에서 얼마나 중요한 위치에 있는지를 다시 보여준다. 개발 환경에는 소스 코드 저장소, 빌드 환경, 테스트 시스템, 배포 관련 설정 등이 연결되어 있는 경우가 많다. 따라서 개발자 PC가 침해될 경우 내부 시스템으로의 추가적인 접근이나 민감 정보 유출로 이어질 가능성이 존재한다.
최근 공격자들이 운영 서버만을 직접 공격하기보다는 개발 환경이나 빌드 시스템을 초기 침투 지점으로 활용하려는 경향도 관찰되고 있다. 이러한 흐름 속에서 개발자 워크스테이션은 보안 관점에서 점점 더 중요한 보호 대상이 되고 있다.
PAGO MDR은 이번 이슈를 “개발 환경 공격 표면 확대” 트렌드로 분류하고 있으며, 개발 도구와 개발자 단말에서 발생하는 이상 행위까지 모니터링 범위에 포함하여 분석을 수행한다.
예를 들어 다음과 같은 징후는 추가적인 확인이 필요한 신호가 될 수 있다.
VS Code 워크스페이스 내 .vscode/settings.json 파일의 예상치 못한 생성 또는 수정
VS Code 또는 IDE 프로세스에서 Code.exe → cmd.exe 또는 powershell.exe 등으로 이어지는 비정상적인 실행 체인
이와 같은 신호가 관측될 경우 PAGO MDR은 변조가 발생한 자산과 시간대를 기준으로 실행 체인과 관련 파일 변경 이력을 분석하고, 필요 시 후속 명령 실행이나 의심스러운 다운로드 등 추가 침해 징후 여부까지 확대 분석하여 대응을 진행한다.
현재 보고된 취약점과 관련해서는 확장 프로그램의 최신 버전으로 업데이트하는 것이 권장된다. 예를 들어 Microsoft Live Preview 확장의 경우 0.4.16 이전 버전에서 보고된 XSS 취약점이 수정된 바 있어 업데이트를 통해 대응이 가능하다.
이번 사례는 개발 도구와 개발 환경이 더 이상 단순한 생산성 도구에 머물지 않는다는 점을 보여준다. 개발 도구는 민감한 자원과 운영 시스템과 직접적으로 연결되어 있기 때문에, 이러한 도구 내의 취약점이 공격자에게 실제 침투 경로가 될 수 있다. 개발 환경에 대한 가시성과 모니터링을 강화하는 것은 앞으로 조직 보안 전략에서 점점 더 중요한 요소가 될 것이다.
참고 자료
BleepingComputer
OX Security
NVD (NIST National Vulnerability Database)
GitHub

작성자: 이시우 Threat Analyst | DeepACT MDR Center



