Cool EK sample analysis 4

Web Exploit Kit/Cool EK 2013. 11. 2. 22:24

4. EtQZAs.pdf 분석

요약: PDF 취약점을 이용하여 sR5L76pksF.exe 파일을 다운로드 및 실행하는 역할을 한다

 

4.1 PDF 파일에 삽입된 악성스크립트 확인

-       PDFStreamDumper 를 이용하여 PDF 파일에 삽입된 악성스크립트를 확인한다

[그림 28] PDF 파일에 포함된 악성스크립트 확인

-       불필요한 값(보기 어렵게 하기 위해 삽입) 제거 및 스크립트 구성 확인

[그림 29] 악성스크립트 구조

  ①    악성 URL 값을 특정 변수에 저장한 부분

  ②    악성스크립트를 난독화하여 특정 부분에 저장한 부분

  ③    난독화된 악성스크립트를 복호화하는 부분

 

4.2 악성스크립트 복호화 부분 분석

-       복호화 부분은 난독화된 데이터를 복호화 하는 Main 함수 부분과 분석을 어렵게 하기 위해

PDF 환경 변수 등을 사용하는 것이 특징이다.

[그림 30] 복호화 부분 분석

  ①    복호화된 스크립트를 PDF용 자바스크립트 양식인 app.변수에 저장한다

  ②    xfa.host.numpages PDF 파일의 총 페이지수를 의미한다 하지만 스크립트 부분만을 분석하면

  해당부분이 정의되지 않아 정상적으로 복호화가 불가능하다

      ð  어도비리더로 문서를 실행하여 총 페이지수를 확인할 수 있다

  ③    eval 함수를 감추기 위해 문자열의 조합으로 특정변수에 eval(or app.eval)을 저장하여 실행한다

      ð  PDF 에서 alert app.alert 으로 사용한다. 이처럼 PDF 스크립트 분석 시 자바스크립트 분석 환경에

               맞추어 변환해 주어야 정상적인 값을 구할 수 있다

 

▶▶ ① 부분을 alert(aTXAca); 으로 수정하거나, ③ 부분을 수정하면 결과값을 확인할 수 있다

 

         ----------------------------------------------------------------------------------------------------------------------------

  PDF 파일분석 시 Tip

  - PDF에 삽입된 자바스크립트를 분석 시 <, >, &, &qout; 들은 아래처럼 변경해 주어야 한다

                 •        &lt;         <

                 •        &gt;,        >

                 •        &amp;,      “ “ (공백, 스페이스)

                 •        &qout;     

        ----------------------------------------------------------------------------------------------------------------------------

 

4.3 복호화된 스크립트 추가 분석

-       [그림 30] ① 부분을 alert(aTXAca); 변경하여 실행시 아래와 같은 스크립트를 확인할 수 있다

-       Main 함수와 그 안에서 사용되는 값들을 구하는 함수로 이루어져 있으며, [그림 31]에 ① 부분의 변수를 사용한다 (분석 시 ① 부분을 추가해 주어야 한다)

[그림 31] 1차 난독화 해지 시 스크립트 확인

  ①    ①의 JDKPdPCkv 변수는 [그림 31]에 ①에서 정의되어 있는 것으로 악성코드가 존재하는 URL을 저장하고 있다

[그림 32] JDKPdPCkv 변수의 값

  ②    ② 부분은 main함수에 의해 만들어진 값을 hnPgL rawValue 값으로 저장한다

 

▶▶내용요약: shell 변수에 악성코드를 다운로드 하는 코드를 저장 후 오버플로우를 발생시키는

               코드를 추가하여 hnPgL.rawValue로 저장한다

 

[참고]  Malzilla 를 이용하면 shell 변수에 저장된 shellcode를 아래처럼 확인 할 수 있다

[그림 33] malzilla 를 이용한 shellcode 확인

 

-       hnPgL 은 악성스크립트가 삽입되어 있는 Object 부분에 field 값으로 정의되어 있다

[그림 34] hnPgL - field

 

-       PDF 파일을 실행 시 아래 [그림 35] 부분에 의해 악성스크립트에 의해 만들어진 값이 삽입되고

오버플로우가 발생되어 악성코드를 다운로드 한다

ð  해당 부분은 구글링을 통해 알게 된 정보를 참고하여 작성하였고, 잘못된 부분이 있을 수도 있다는 것을 참고하기 바란다

[그림 35] PDF 파일에서 hnPgL

 

PDF 취약점 참고자료: http://ahnlabasec.tistory.com/579 (CVE-2010-0188)

 

 

※ 블로그의 특성상 Coolkit의 난독화 부분에 대해 다루었습니다. Cool EK의 전체 분석 보고서는 제가 활동하는 볼라벤 소모임의 블로그에서 보실 수 있습니다.

- 바로가기: http://thebolaven.tistory.com/entry/13차-문서-Cool-Exploit-Kit-분석

 

  한글때문에 바로가기가 안될 경우 '분석'까지 복사하여서 주소창에 붙여넣기하시면됩니다.

 

 

 

'Web Exploit Kit > Cool EK' 카테고리의 다른 글

Cool EK sample analysis 3  (0) 2013.11.02
Cool EK sample analysis 2  (0) 2013.08.10
Cool EK sample analysis 1  (0) 2013.08.10
Cool EK 소개 (Cool Exploit Kit)  (0) 2013.08.06

설정

트랙백

댓글

Cool EK sample analysis 3

Web Exploit Kit/Cool EK 2013. 11. 2. 21:44

3.1  Pdfx.html 분석

요약: Pdfx.html fnts.html 로 연결(웹폰트취약점) EtQZAs.pdf 파일(PDF취약점)을 다운로드 하는 역활을 하며, Microsoft help 사이트로 위장하는 부분과 악성스크립트 부분으로 이루어져 있다

[그림 16] Pdfx.html 구조

 

[그림 17] Pdfx.html 실행 및 링크 클릭 시 보여지는 화면

 

3.1.1 악성스크립트 부분 분석

-       [그림 18] 의 ① 부분은 현재 페이지에 있는 iframe 내 요소에 접근하기 위해 사용한다

ð  형태: document.getElementById("puykjo").contentWindow.document.getElementById("rhdc");

-       ID‘puykjo’ iframe 에서 ‘rhdc’ 요소의 값을 가져와 ‘bexzpll’ 변수에 저장한다

-       ② 부분에서 ‘bexzpll’ 변수를 parseInt String.fromCharCode 함수를 이용하여 ‘ftgfk’ 변수에

문자열로 저장 후 eval 함수로 실행한다

[그림 18] Pdfx.html 악성스크립트 분석

 

-       Microsoft help 사이트 코드 영역에서 ID‘puykjo’ iframe 을 확인할 수 있다

[그림 19] iframe 확인

 

-       xbje.html 의 코드 확인 시 ‘rhdc’ 요소의 value 값을 확인할 수 있다

[그림 20] xbje.html 코드의 id 확인

 

-       난독화된 데이터 부분과 복호화 스크립트를 정리하면 [그림 21] 과 같다

[그림 21] 간단하게 정리된 악성스크립트

 

-       Pdfx.html 복호화 결과

ð  Iframe 에 의해 fnts.html 이동 및 사용자의 pdf 버전에 의해 EtQZAs.pdf 실행

[그림 22] Pdfx.html 복호화 결과 화면

 

 

3.2  fnts.html 분석

요약: fnts.html IgqaRKnXz.eot 파일을 불러와 div tag :) 값에 폰트를 적용하도록 되어있으며 CVE-2011-3402 취약점을 이용하여 z297U9DAuM.exe 파일을 실행하는 역할을 한다

[그림 23] fnts.html 코드 화면

 ①    웹 폰트 사용시 불러오는 방법 중 하나로 IgqaRKnXz.eot 파일을 불러온다

   ð  Style tag 에서 #으로 기술하면 id로 지정 시 적용된다 (#MRnAKouG 기술)

 ②    Div Tag 에서 style id=’MRnAKouG’ 로 하여 ①에서 불러온 웹폰트를 사용한다

   ð  이 과정에서 조작된 eot 파일에 의해 취약점이 발생한다

 ③    div Tag 의 값으로 웹 페이지에 나타나는 부분이다

   ð  해당 페이지를 실행시키면 아무것도 보이지 않는데 그 이유는 IgqaRKnXz.eot 글꼴에서는’:’ ’)’

      문자가 공백으로 표시되기 때문이다 (IgqaRKnXz.eot 분석내용 참조)

 

 v Web Font 적용 실습 및 정상동작 여부확인 (APM setup 이용)

-       fnts.html url 부분을 네이버에서 무료로 제공하는 나눔고딕 eot 파일로 설정

-       동일한 내용으로 웹폰트가 적용되는 부분과 적용되지 않는 부분을 작성하여 실행

[그림 24] 웹폰트 TEST

 

-       아래의 그림처럼 웹폰트가 정상적으로 적용되는 것을 확인 (위의 글자에 적용된 것이 확인됨)

[그림 25] 웹폰트 TEST 결과 화면

 

3.3  lgqaRknXz.eot 분석

요약: CVE-2011-3402 취약점이 존재한다면, 웹폰트 취약점에 의해 sRSL76pksF.exe 파일을 다운로드 및 실행된다

하지만 샘플에서는 취약점이 존재하지 않아 이로 인한 악성코드 감염은 없었다

lgqaRknXz.eot 파일분석을 시도하였지만, 관련 정보가 부족하여 분석에 어려움을 겪고 있다.

하지만 파일 분석을 위한 힌트를 얻을 수 있었고 분석은 현재 진행이다

 

-       eotinfo 를 이용한 기본 정보 확인 (ubuntu tool 사용)

[그림 26] lgqaRknXz.eot 기본 정보

 

-       lgqaRknXz.eot 웹폰트 적용 시 글꼴 확인

ð  기본 글꼴과 동일하지만 ‘:)’ 이 공백으로 표시되는 것을 확인 할 수 있다. 실제 악성 eot가 적용된

Fnts.html 페이지는 사용자에게 빈 페이지로 보일 것이다 

[그림 27] lgqaRknXz.eot 웹폰트 적용 화면

 

     eot 파일 분석에 관하여

eot 파일 분석을 위해서는 먼저 폰트 파일(ttf)로 변환해야 한다고 한다. 하지만 변환하는 방법은 찾을 수 없었고, 폰트파일은 라이센스가 있기 때문에 웹폰트를 무단으로 ttf 형식으로 변환하여 사용하는 것은 불법행위이기 때문에 내용이 공식적으로 언급이 되지 않은 것 같다

(ttf -> eot 변환 툴은 많음)

그 외 에도 실행 시 iexplore ollyDbg Attach 시켜 변환 알고리즘을 알아내는 방법이 있다.

 

'Web Exploit Kit > Cool EK' 카테고리의 다른 글

Cool EK sample analysis 4  (0) 2013.11.02
Cool EK sample analysis 2  (0) 2013.08.10
Cool EK sample analysis 1  (0) 2013.08.10
Cool EK 소개 (Cool Exploit Kit)  (0) 2013.08.06

설정

트랙백

댓글

Cool EK sample analysis 2

Web Exploit Kit/Cool EK 2013. 8. 10. 22:02

2.1  Main.html 분석

요약: Main.html pdfx.html 페이지로 유도하는 역할을 하며, Yahoo 와 관련된 사이트로 위장하는 부분과 PluginDetect 0.8.0 실행 부분, 그리고 악성스크립트 부분으로 이루어져 있다

 

[그림 5] main.html 구조

 

2.2.1 PluginDetect 0.8.0 정보

PluginDetect 부분은 블랙홀 툴킷에서 자주 보았던 부분으로 java, pdf, flash 등 다양한Plugin 정보를 수집해 주는 스크립트다. 이 수집된 정보를 통해 공격코드에서 취약점이 존재하는 부분을 공격하여 악성 행위를 하게 된다

해당 스크립트는 아래의 사이트에서 누구나 쉽게 원하는 부분만 포함하여 제작할 수 있다

- http://www.pinlady.net/PluginDetectArchive/0.8.0/download/

 

2.2.2 악성스크립트 부분 분석

-       [그림 11] 의 ① 부분은 현재 페이지에 있는 iframe 내 요소에 접근하기 위해 사용한다

ð  형태: document.getElementById("rvvet").contentWindow.document.getElementById("wtgsnrps");

-       ID‘rvvet’ iframe 에서 ‘wtgsnrps’ 요소의 값을 가져와 ‘kbbdtb’ 변수에 저장한다

-       ② 부분에서 ‘kbbdtb’ 변수를 parseInt String.fromCharCode 함수를 이용하여 ‘bsywkm’ 변수에 문자열로 저장 후 eval 함수로 실행한다

[그림 6] main.html 악성스크립트 분석

 

-       Yahoo 관련 사이트 위장 부분에서 ID‘rvvet’ iframe 을 확인할 수 있다

[그림 7] iframe 확인

 

-       Ntdfitt.html 의 코드 확인 시 ‘wtgsnrps’ 요소의 value 값을 확인할 수 있다

[그림 8] Ntdfitt.html 코드의 id 확인

 

※ 분석 시 main.html 과 같은 폴더에 Ntdfitt.htm 파일이 있다면, [그림 11] 에서 eval alert 으로 변경하여도 복호화된 값을 확인 가능

 

-       난독화된 데이터 부분과 복호화 스크립트를 정리하면 [그림 14] 와 같다

[그림 9] 간단하게 정리된 악성스크립트

 

-       main.html 복호화 결과

  ð  사용자의 Java 버전에 의해 pdfx.html 으로 이동

[그림 10] main.html 복호화 결과 화면

 

'Web Exploit Kit > Cool EK' 카테고리의 다른 글

Cool EK sample analysis 4  (0) 2013.11.02
Cool EK sample analysis 3  (0) 2013.11.02
Cool EK sample analysis 1  (0) 2013.08.10
Cool EK 소개 (Cool Exploit Kit)  (0) 2013.08.06

설정

트랙백

댓글

Cool EK sample analysis 1

Web Exploit Kit/Cool EK 2013. 8. 10. 21:52

q  Cool EK sample analysis

 

1.    Cool EK 흐름도

6월 말 국내에서 탐지된 Cool EK 분석 결과, /변조된 사이트 접속 시 난독화된 경유지로 이동 후 PDF 취약점과 EOT(웹폰트) 취약점을 이용하여 악성코드를 유포하였다

 

[그림 1] Cool EK 흐름도

 

2.    Cool EK 난독화 분석

2.1  www.kixxx.com (/변조 사이트) 분석

요약: 정상 사이트가 위/변조되어 HTML Tag 상단 부분에 악성스크립트 삽입된 것으로 확인되며, Main.html 페이지로 이동시키는 역할을 한다

 

-       [그림 7] 에서 HTML Tag 가 시작 전 비정상적으로 스크립트가 삽입된 것을 확인

[그림 2] /변조 사이트에 삽입된 악성스크립트

 

-       스크립트 부분 정리 후 실행함수 eval alert 으로 수정하여 복호화된 스크립트를 확인

[그림 3] 악성 스크립트 분석

 

※ 쉽게 복호화된 스크립트를 보기 위해 데이터가 실행되는 부분을 문자열로 나타내어 주었다

 

※ 스크립트 내용: a“,” 기준으로 배열(split 이용)로 만들고, 8진수 값들을 10진수로 변경 후 4를 뺀다. 그리고 String.fromCharCode 를 이용하여 문자열로 변환 후 eval 함수로 실행한다

 

-       Alert 결과 창에서 악성코드 유포 중간 경유지를 확인 할 수 있다

[그림 4] alert 결과 화면

 

'Web Exploit Kit > Cool EK' 카테고리의 다른 글

Cool EK sample analysis 4  (0) 2013.11.02
Cool EK sample analysis 3  (0) 2013.11.02
Cool EK sample analysis 2  (0) 2013.08.10
Cool EK 소개 (Cool Exploit Kit)  (0) 2013.08.06

설정

트랙백

댓글

Cool EK 소개 (Cool Exploit Kit)

Web Exploit Kit/Cool EK 2013. 8. 6. 23:15

q  Cool EK 소개

1.    History

1)  Cool EK BlackHole EK 를 제작한 해킹 그룹(러시아, Leader: Paunch)에서 만들어 졌다고 한다

2)  BlackHole EK 1달에 $500 인 반면, Cool EK 1달에 $100,000 로 알려져 있다 (really?)

3)  Cool EK CVE-2011-3402 EOT (Embedded OpenType) 파일 취약점을 사용한다 (EOT à 웹폰트)

4)  CVE-2011-3402 EOT 취약점을 이용하고, Duqu 라고 불려지고 있으며 특정 표식을 남긴다

 ☞ 출처: By Brian Krebs, malware dontneedcoffee

 

2.    Cool EK 패턴

1) CVE-2011-3402 EOT 파일 취약점에서 확인되는 특정 패턴

      - 코드 내부에 .eot 파일 뒷부분에 ‘duqu’ 라는 문자열과 :) 스마일 표식을 남긴다

[그림 1] Cool EK 특정 패턴

- Duqu 2011 9 1일 처음 발견 되었으며, Stuxnet Worm 과 연관성이 있다

[그림 2] Duqu Information

2) 실제 패킷에서 탐지된 패킷 확인

      - IgqaRKnXz.eot 코드 뒷부분에 ‘duqu’ 라는 문자열 대신 #MRnAKouG 문자열을 남겼지만 스마일 표식 :) 은 동일하게 남기고 있다

      * 위 조사한 내용으로 볼 때 아래 패킷은 CVE-2011-3402 를 이용한 Cool EK 라고 할 수 있겠다

[그림 3] 탐지된 패킷에서 특정 문자열 확인 

 

  ## Cool EK 에 대한 참고 사이트

  

http://malware.dontneedcoffee.com/2012/10/newcoolek.html

http://yomuds.blogspot.fr/2012/11/cve-2011-3402-and-cool-exploit-kit_28.html

https://krebsonsecurity.com/2013/01/crimeware-author-funds-exploit-buying-spree

http://en.wikipedia.org/wiki/Duqu

https://media.blackhat.com/bh-eu-12/Lee/bh-eu-12-Lee-GDI_Font_Fuzzing-Slides.pdf

http://threatpost.com/cool-blackhole-exploit-kits-created-same-hacker-010913

http://expertsupportnj.com/2013/02/exploit-kits-are-the-latest-weapons-of-cyber-destruction-warns-security-expert

 

'Web Exploit Kit > Cool EK' 카테고리의 다른 글

Cool EK sample analysis 4  (0) 2013.11.02
Cool EK sample analysis 3  (0) 2013.11.02
Cool EK sample analysis 2  (0) 2013.08.10
Cool EK sample analysis 1  (0) 2013.08.10

설정

트랙백

댓글