지난 2022년 3월 25일, Google에서 Chrome 버전 99.0.4844.84 업데이트 패치 내용에 0-day 취약점이라고 불리는 CVE-2022-1096 취약점 방지가 추가되었다. 이후 여러 Chromium 기반 브라우저에서 이 취약점을 방지한 업데이트를 내놓으면서 화제가 된다. Chrome에서 패치된 취약점 CVE-2022-1096 은 3월 23일에 보고되었지만, 이미 잘 알려진 취약점이다.

이 취약점은 Chromium 계열 브라우저에서 사용하는 V8 JavaScript 엔진 내부의 Type Confusion으로 인한 취약점인데, 이를 이용하여 해커가 사용자 컴퓨터의 접근 권한을 얻어 악성코드를 실행할 수 있다.

Chromium 계열 브라우저에서는 이미 업데이트를 내놓았지만, V8 엔진을 사용한 Electron 프레임워크 기반 애플리케이션은 어떨까?

Electron 프레임워크를 사용하는 애플리케이션에서는 해당 취약점에 대한 패치를 배포했다는 소식은 아직 들을 수 없지만, 불확실한 점이 두 가지가 있다.
첫 번째는, Chromium 브라우저에 포함된 V8 엔진의 CVE-2022-1096 취약점이 V8 엔진을 사용하는 다른 프로그램에서 발생할 수 있는지 알 수 없다는 점이고,
두 번째는, 해당 애플리캐이션들이 이미 이전에 V8 엔진에 대한 취약점을 패치했는지 알 수 없다는 점이다.

Electron 프레임워크를 사용하는 프로그램들은 많다. 그 중에서 대중성 있는 애플리케이션 프로그램만 나열하면 Discord, Skype, WhatsApp, Facebook Messenger 와 같은 PC에서 실행되는 메신저 앱 부터 Visual Studio Code, Arduino, Atom 과 같은 개발 프로그램, Spotify, Notion, Twitch, Vampire Survivors 와 같은 애플리케이션이 이에 포함된다.

Node.js, Deno 와 같은 JavaScript 런타임 프로그램도 V8 엔진을 사용한다. Chromium 브라우저와 Electron 프레임워크는 대부분 클라이언트에서 실행되지만, Node.js를 사용하는 서버가 훨씬 더 심각하고 치명적일 수 있다. 해커가 서버에 등록된 사용자들의 개인 정보에 접근하고 악용할 수 있기 때문이다. 이 역시도 불확실한 점이 두 가지가 존재하는데, Electron 프레임워크에서 언급한 대로와 마찬가지이다.

 

+ Recent posts