곧이어 유명 앱들에서 패치 이어질 것...제 때 적용하면 안심해도 돼
[보안뉴스 문가용 기자] 웹 앱 개발시 사용되는 소프트웨어 프레임워크에서 심각한 보안 취약점이 발견됐다. 이를 익스플로잇 할 경우 해커들이 원격에서 임의의 코드를 실행하는 것이 가능해진다고 한다. 많은 웹 애플리케이션들에 영향이 있을 수 있는 소식이다.

[이미지 = iclickart]
이를 발견하고 발표한 건 보안 업체 트러스트웨이브(Trustwave)로, 소프트웨어 프레임워크인 일렉트론(Electron)에서 이 같은 특징을 발견했다고 한다. 일렉트론은 개발자들이 HTML과 CSS, 자바스크립트를 사용해 여러 플랫폼을 아우르는 데스크톱 애플리케이션을 만들 수 있게 해주는 프레임워크다.
스카이프(Skype), 워드프레스(Wordpress), 슬랙(Slack), 디스코드(Discord), 시그널(Signal), 아톰(Atom), 비주을 스튜디오 코드(Visual Studio Code), 깃허브 데스크톱(Github Desktop) 등 인기가 많은 애플리케이션들이 일렉트론 프레임워크로 만들어졌다.
트러스트웨이브의 보안 컨설턴트인 브렌든 스카벨(Brendan Scarvell)은 “현재 일렉트론 프레임워크로 만들어진 앱들은 XSS 공격에 취약한 상태”라며 “사용자로부터 온 입력값을 제대로 거르거나 수정하지 못하기 때문”이라고 설명한다.
“디폴트 일렉트론 애플리케이션은 API로의 접근 권한은 물론 모든 Node.js에 대한 접근 권한도 포함하고 있습니다. 그렇기에 XSS 공격이 상당히 위험해질 수 있습니다. 이를 통해 악성 시스템 명령을 실행한다든지 특정 모듈을 변경한다든지 하는 여러 공격을 감행할 수 있게 되기 때문입니다. 실제로 아톰에서는 얼마 전 이러한 XSS 취약점이 발견되기도 했죠.”
스카벨의 설명이 이어진다. “일렉트론 내에는 webPreferences라는 환경설정 파일이 있어요. 이 안의 webviewTag 세팅이 ‘false’로 되어 있으면 nodeIngration 역시 false로 세팅이 됩니다.” 그런데 nodeIngration을 true로 해놓으면 좀더 강력한 Node.js API와 모듈로의 접근이 가능하게 된다.
공격자가 nodeIngration 값을 바꾸면 window.open이 webviewTag 옵션을 통과할 수 있게 된다고 스카벨은 설명한다. “이 경우 nodeIntegration이 재활성화 되고, 원격 코드 실행을 위한 기반이 마련됩니다.”
스카벨은 nodeIntegration을 조작하는 XSS 페이로드를 개념증명용으로 만들기도 했다. 이를 통해 시스템 명령을 원격에서 실시하는 데 성공했다. “일렉트론 버전 1.7.13 이하 버전, 1.8.4 이하 버전, 2.0.0-beta3 이하 버전을 사용해 만들어진 앱이라면 이러한 공격이 모두 적용됩니다.”
물론 공격에는 성립 조건이 있다. “webPreferences에서 webviewTag가 false로 되어 있어야 하고, nativeWindowOption 옵션이 활성화 되어 있어야 합니다. 혹은 새로운 윈도우 이벤트를 가로채고 옵션 태그를 사용해 event.newGuestwithout을 오버라이드해야 합니다.”
스카벨은 일렉트론 측에 이와 같은 사실을 알렸고, 일렉트론은 즉각 패치를 발표했다. 보안 업체 블루리브(Blueliv)의 위협 첩보 책임자인 호세 미구엘 에스파라자(Jose Miguel Esparaza)는 외신과의 인터뷰를 통해 “이 개념증명은 클라이언트 사이드 공격”이라며 “사용자들에게 앱 개발자들이 빠른 패치를 배포해야 하고, 사용자들은 이 패치들을 빠르게 적용해야 한다”고 설명한다.
다행히 일렉트론은 “이번에 보고된 취약점이 많은 애플리케이션에서 발견되지 않았다”고 발표했다. 또한 “공격 성립조건이 많은 편이라 실제 공격이 감행될 확률은 그리 높아 보이지 않는다”고도 말했다. 에스파라자 역시 이에 동의한다.
데브옵스 관련 컨설턴트 회사인 스케일팩토리(The Scale Factory)의 존 토퍼(Jon Topper) CTO는 “거의 모든 보안 문제가 그렇지만 적절한 패치와 재빠른 업데이트를 하기만 하면 큰 문제가 될 것 없는 것”이라고 정리했다. “앞으로 스카이프, 슬랙 등 많은 앱들이 패치를 배포할 겁니다. 사용자들은 빠르게 패치하시면 됩니다.”
[국제부 문가용 기자(globoan@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>