🇰🇷 한글 설명
Turborepo LSP VS Code 확장 프로그램이 워크스페이스에서 제어되는 값을 기반으로 셸 명령을 실행할 수 있는 취약점입니다. 악성 워크스페이스 설정이나 작업 이름이 셸 명령에 삽입되어 로컬 VS Code 프로세스 권한으로 임의 명령이 실행될 수 있으며, 2.9.14000 버전에서 수정되었습니다.
💡 쉬운 설명
악성 프로젝트를 VS Code로 열거나 그 안의 작업을 실행하면, 프로젝트 안에 숨겨진 명령이 내 컴퓨터에서 실행될 수 있습니다. Turborepo 확장 프로그램을 최신 버전으로 업데이트하면 이 문제가 해결됩니다.
🇺🇸 원문 (English)
Turborepo is a high-performance build system for JavaScript and TypeScript codebases. Prior to 2.9.14000, the Turborepo LSP VS Code extension could execute shell commands derived from workspace-controlled values. The extension used string-based command execution for Turborepo daemon commands and task runs. A malicious workspace could provide crafted values through workspace settings or task names in the repository's source code that were interpolated into shell commands. When the extension activated or when a user ran a task through the extension, those values could be interpreted by the user's shell, allowing arbitrary command execution with the privileges of the local VS Code process. This vulnerability is fixed in 2.9.14000.
📍 영향받는 시스템
Turborepo LSP VS Code 확장 프로그램 2.9.14000 미만 버전
⚔️ 공격 벡터
악성 저장소의 워크스페이스 설정 또는 작업 이름에 조작된 값을 넣어 사용자가 프로젝트를 열거나 작업을 실행할 때 셸 명령이 실행되도록 유도
🛡️ 대응 방법
Turborepo LSP VS Code 확장 프로그램을 2.9.14000 이상으로 업데이트하고, 신뢰할 수 없는 저장소는 워크스페이스 신뢰 기능을 활성화하기 전에 열지 않도록 합니다.
🔧 검증 코드
출력된 확장 프로그램 버전이 2.9.14000 미만이면 취약한 상태이므로 업데이트가 필요하고, 2.9.14000 이상이면 수정된 버전입니다.
code --list-extensions --show-versions | grep -i turborepo