AhnLab   2016.01.13


신∙변종 랜섬웨어가 확산되고 있는 가운데 자바스크립트를 이용한 랜섬웨어가 등장해 사용자들의 각별한 주의가 필요하다. 


초기 랜섬웨어는 스팸메일에 실행파일을 첨부한 형식이나 취약한 웹사이트를 이용하는 방식이 주를 이뤘다. 그러나 최근에는 스크립트 프로그래밍 언어인 자바스크립트를 이용한 랜섬웨어가 등장했다. 자바스크립트는 정상적인 프레임워크 파일이기 때문에 이를 악용한 악성코드를 보안 솔루션이 탐지하기가 쉽지 않다. 또한 자바스크립트는 Windows뿐만 아니라 Linux, Mac OS X 등 다양한 운영체제에서 활용되므로, 랜섬웨어 제작자의 의도에 따라 운영체제를 가리지 않고 감염시킬 가능성이 있다.
이 글에서는 자바스크립트를 이용한 랜섬웨어 사례에 대해 소개한다. 

 

1. 이메일 첨부파일에 포함된 자바스크립트 

 


[그림 1] 스팸메일에 첨부된 자바스크립트 

 

스팸메일을 통한 악성코드 유포가 빈번하게 이뤄짐에 따라 이메일에 실행 파일이 첨부되어 있을 경우, 보안 장비나 애플리케이션에서 사전에 경고하고 차단하는 시스템이 많이 도입되었다. 이에 따라 랜섬웨어 제작자는 실행 파일을 스팸메일에 첨부하는 방식을 벗어나 자바스크립트 파일을 통해 악성코드를 다운로드 받도록 유포 방식을 변화시켰다. 

일반적으로 스팸메일에 첨부된 자바스크립트는 난독화 되어 있으며, 파일에 따라 유형은 조금씩 다르지만 스크립트를 실행 시 추가 유포지에서 랜섬웨어를 다운로드하고 실행하는 역할을 한다.

2. 자바스크립트 코드로 작성된 ‘Ransom32’
지난 1일 보안업체인 엠시소프트(EMSISOFT)의 블로그에 의해 자바스크립트로 작성된 랜섬웨어가 공개되었다. 해당 악성코드는 윈도우 실행 파일(exe)이나, 사실 SFX(Self-extracting archive) 기능을 이용한 압축 파일이며, 실행 시 TEMP 경로에 자동으로 압축이 풀리고 내부 chrome.exe가 실행된다.

 


[그림 2] SFX로 압축된 랜섬웨어 

 

Chrome.exe는 NW.js를 이용하였으며, 내부에는 악성 행위에 필요한 파일이 패키징되어 있다. NW.js는 HTML과 자바스크립트를 이용한 애플리케이션 개발 프레임워크로, index.html 파일을 통해 자바스크립트로 작성된 바이너리를 실행한다. 

Ransom32가 암호화하는 데이터의 확장자는 [표 1]과 같으며, 감염이 진행되면 [그림 3]과 같은 화면이 보여진다.

 

[표 1] 감염 확장자 

 

[그림 3] Ransom32 감염 화면

 

V3 제품에서는 앞서 설명한 두 가지 기법을 사용한 랜섬웨어에 대하여, 아래와 같이 진단이 가능하다. 

 

[V3 제품군의 진단명]

JS/Downloader (2015.12.31.08)

JS/Downloader (2015.11.06.06)
Trojan/Win32.Teslacrypt (2015.12.18.03)
Trojan/Win32.Ransom32 (2016.01.06.01)
Dropper/Win32.Ransom32 (2016.01.06.00)

불특정다수를 대상으로 하는 랜섬웨어 공격은 2016년에도 지속될 것으로 보이며, 더욱 고도화될 것으로 예측된다. 랜섬웨어의 공격 범위는 PC를 넘어 스마트폰, 웨어러블 기기 등으로 점차 확대되어 사용자들을 위협할 전망이다. 암호화 알고리즘을 사용하여 데이터를 암호화하기 때문에 복구키를 알지 못하면 사실상 데이터 복구가 불가능하다. 따라서 랜섬웨어에 대한 위협을 완전히 벗어나기 위해서는 백신에 의존하기 보다는 보안 의식 강화를 통한 중요 데이터의 백업이 중요하다.