NOTICE



1. 소  개


  2015년 05월 20일 Rootkit으로 알려진 Necurs 악성코드 유포에 Nuclear Exploit Kit이 사용되었습니다. Nuclear Exploit Kit은 일반적으로 특정 AV 제품의 드라이버 파일을 확인한 뒤 해당 프로세스를 강제로 종료합니다. 그리고 Internet Exploror, Silverlight, Flash Player 등 다양한 취약점을 이용해서 악성행위를 시도합니다. Nuclear Exploit Kit이 자주 사용하는 취약점 정보는 다음과 같습니다.


[표 1.1.] Nuclear Exploit Kit이 이용하는 취약점 정보


  그러나 이와 달리 분석 대상 샘플은 VA 제품 탐지 코드가 포함되어 있지 않습니다. 또한 Internet Explorer와 Flash 취약점만을 사용합니다. 이 점을 엄두해주시기 바랍니다.




2. Exploit Kit 분석


2.1. Malware link in the website code


 해커는 정상적으로 서비스되는 웹 페이지에 악성 스크립트 코드를 삽입합니다. 이로 인해 해당 사이트에 접속할 경우 “http://try.xxxveux.com/js/view.js” 코드가 실행됩니다.


[그림 2.1.] Malware link in the website code



2.2. view.js


  view.js 코드를 살펴보면 다음과 같습니다. 특별한 동작 없이 “http://os.***map.com/***NNAlgP.html”로 리다이렉션 됩니다.


[그림 2.3.] VA 제품 및 가상화 프로그램 탐지 코드



2.3. ***NNAlgP.html


  ***NNAlgP.html에는 p 태그로 된 Encryption TEXT와 Function, Function 호출 코드로 이루어져 있습니다. 코드를 간략하게 살펴보면 다음과 같습니다.


[그림 2.3.] ***NNAlgP.html Code


  두 개의 p 태그 아이디는 hcY( )를 호출할 때 파라미터로 들어갑니다. hcY( )는 p 태그 아이디를 사용해서 Encryption TEXT를 가져온 후에 Decryption합니다. 그리고 Ntpc( ) 함수를 호출하는데 이때 Decryption 된 값이 파라미터로 들어갑니다. 그 결과 Ntpc( )에 의해 Decryption 된 Script Code가 실행됩니다.



2.4. Decrypted Encryption TEXT_01


  다음은 Decryption 된 ‘Encryption TEXT_01’ 입니다. Flash Player의 버전을 확인하고 그에 맞는 코드를 작성해서 취약점을 발생시킵니다. 그로 인해 Necurs 악성코드가 다운로드 및 실행됩니다.


[그림 2.4.] Decrypted Encryption TEXT_01



2.5. Decrypted Encryption TEXT_02


  다음은 Decryption 된 ‘Encryption TEXT_02’ 입니다.


[그림 2.5.] Decrypted Encryption TEXT_02


  해당 코드 동작으로 인해 “ShellCode_02”와 “ShellCode_03”은 각각 JavaScript와 VBScript로 변환됩니다. 그리고 “ShellCode_01”, JavaScript, VBScript가 서로 호환되어 Drive by downloads 방식으로 Necurs 악성코드를 다운로드 및 실행합니다. 코드의 기능을 간략하게 살펴보면 다음과 같습니다.


[그림 2.6.] 최종 실행 코드 설명


  이상으로 '[Exploit Kit 분석] Nuclear Exploit Kit_ver. 15.05'에 대한 포스팅을 마치겠습니다.