핵심 요약
- Fly.io 개발자가 VS Code의 SSH 원격 에디팅 구조를 분석한 결과, 원격지에 자체 에이전트와 Node 바이너리를 다운로드해 설치하는 전면 침투 방식으로 동작함을 밝혔습니다.
- 파일 수정과 셸 실행, 백그라운드 상주까지 가능한 구조라 보안 관점에서 거의 RAT(원격제어 악성코드)에 가까운 동작 방식이라며 우려를 표했습니다.
- 안전한 격리 환경이 아닌 사내 개발 서버나 실제 운영(프로덕션) 서버 장애 대응 시 VS Code 원격 접속을 쓰는 것은 위험하다고 지적했습니다.
요약 클라우드 플랫폼 Fly.io의 토마스 프타첵(Thomas Ptacek)이 VS Code의 원격 SSH 에디팅 동작 방식을 뜯어보고 남긴 기술 블로그 글이 화제가 되었습니다. 최근 LLM 기반 에이전트 도구들이 코드 작성과 실행, 에러 피드백을 반복하는 루프를 돌면서 로컬 노트북의 환경을 망가뜨릴 위험이 커졌고, 개발자들은 격리된 클라우드 리눅스 인스턴스에서 원격으로 코드를 돌리는 방식을 선호하고 있습니다.
이러한 흐름에 맞춰 원격 환경 연동을 조사하던 작성자는 과거 이맥스(Emacs)의 원격 편집 도구 '트램프(Tramp)'처럼 가볍게 셸 명령어로 동작할 것이라 예상했습니다. 하지만 실제 확인한 VS Code의 원격 접속 방식은 완전히 다른 차원이었습니다.
VS Code는 단순 원격 접속 수준을 넘어, 대상 원격 서버에 배시(Bash) 스크립트 스테이저를 실행한 뒤 아예 Node 바이너리까지 통째로 포함된 에이전트를 다운로드해 설치합니다. 이후 SSH 포트 포워딩을 통해 로컬 VS Code와 웹소켓(WebSocket) 통신을 연결하는데, 이 프로토콜의 동작 권한이 막강합니다. 파일시스템 탐색과 임의 파일 수정은 물론, 자체 셸 PTY 프로세스를 생성하고 프로세스 지속성까지 확보합니다.
작성자는 보안 업계에서 이런 식으로 동작하는 도구를 부르는 쥐(murid, 즉 RAT/원격 제어 트로이목마) 계열의 명칭이 떠오를 정도라며, 개발 서버는 물론이고 특히 프로덕션 장애 대응 상황에서 VS Code로 원격 접속하는 것은 위험천만한 일이라고 꼬집었습니다.
Sponsored · 광고