태그 없음
자바스크립트 라이브러리 SandboxJS에서 고위험 샌드박스 탈출 취약점 발견...원격 코드 실행 가능
프로토타입 오염 공격으로 호스트 시스템 제어 가능, 0.8.31 버전으로 긴급 패치 권고
[한국정보기술신문] 자바스크립트 라이브러리인 SandboxJS에서 호스트 시스템을 침해할 수 있는 위험한 샌드박스 탈출 취약점이 발견됐다. 해당 취약점은 CVE-2026-25881로 등록됐으며, CVSS 점수 8.3점의 고위험도 보안 취약점으로 분류됐다.
보안 전문가들에 따르면 이번 취약점은 폐쇄된 환경 내에서 코드 샌드박싱을 담당하는 라이브러리인 SandboxJS가 적절한 격리를 제공하지 못해 발생했다. 공격자는 이를 악용해 샌드박스를 우회하고 호스트 시스템에 직접 접근할 수 있게 된다.
프로토타입 오염 공격 경로 확인
해당 취약점은 라이브러리가 호스트 객체 속성을 분석 과정에서 처리하는 isGlobal 플래그의 검증에서 기인한다. 시스템 객체를 화이트리스트 방식으로 처리하는 기본 프로퍼티 배열이 지정돼 있지 않아, 악의적 코드 삽입을 차단하지 못하는 구조적 취약점이 존재하는 것으로 드러났다.
공격자는 이 취약점을 통해 프로토타입 오염 공격을 수행해 호스트 자바스크립트 객체를 악의적으로 변조할 수 있다. 특히 공격자가 Map.prototype과 같은 핵심 객체를 오염시키면 호스트 측 애플리케이션에 해당 변조가 전파되는 심각한 상황이 발생한다.
원격 코드 실행 가능성 입증
k14uz라는 닉네임의 보안 연구자는 시스템 명령어 실행이나 파일 함수를 호출할 수 있는 실제 개념증명을 공개했다. 이 개념증명에서는 호스트 코드가 오염된 프로토타입 속성을 참조하는 순간, 공격자는 원격코드실행을 통해 시스템을 완전하게 장악하고 제어하게 되는 위험한 시나리오를 시연하고 있다.
이 취약점은 0.8.30 버전을 포함한 이전 버전에 모두 존재하며, 신뢰할 수 없는 코드를 실행하는 모든 환경에서 위험하고 심각한 보안 위협이 되고 있는 상황이다.
긴급 보안 패치 배포
개발사는 안전한 배열 생성 옵션과 검증 플래그를 추가하도록 수정한 0.8.31 패치 버전을 이미 릴리스해 배포하고 있다.
보안 전문가들은 SandboxJS 라이브러리가 폐쇄된 환경 내에서 코드 샌드박싱을 담당하는 핵심 라이브러리로 사용되고 있다는 점에서 이번 취약점의 심각성을 강조하고 있다. 프로토타입 오염을 통한 샌드박스 탈출과 호스트 시스템 객체 변조까지 위험하게 연결될 수 있다는 점에서 개발자들에게 신속한 코드 검토와 즉각적 패치의 필요성을 강력하게 촉구하고 있다.
한국정보기술신문 정보보안분과 이승기 기자 news@kitpa.org