신종파밍악성코드분석 Bolaven 2013.06.27
개요 지난 1월볼라벤 6차문서에서진화한파밍기법 (= 호스트파일변조 ) 에대해분석및공유를하였다. 6차문서에서는웹을통하여악성코드가유포되는과정과파밍기법의전반적인흐름을알아보았다면, 이번문서에서는파밍기법에서사용되는악성파일의행위에대해중점적으로분석하였다. 파밍기법이란? PC 를악성코드에감염시켜정상홈페이지주소로접속하여도피싱사이트로 유도하여사용자의금융거래정보등을유출하는방법 [ 그림 1. 최근파밍현황 ] [ 그림 2. 가짜팝업을이용한파밍화면 ] - 1 -
신종파밍악성코드유포흐름 1. 신종파밍악성코드흐름분석 1) Windows 사용자의 hosts 권한을변경하여변조 [ 그림 3. 신종파밍악성코드유포흐름도 ] 1 hxxp://vvvvvvcbc.googlecode.com/files/dafa8.exe 악성파일실행 2 자가복제를하여 C:\Windows\System32\Hostssoon.exe 저장 3 CMD 창을사용하지못하도록레지스트리값수정 4 C:\Windows\qc.bat 파일을생성하여 hosts 파일의사용자권한을모든권한으로변경 5 hxxp://yongm.dafa8088.com/abcd.txt (hosts 변조레코드 ) 다운로드후 hosts 파일변조 6 C:\Windows\bh.bat 파일을생성하여 hosts 파일의권한을다시읽기권한으로변경 7 MAC Address 획득 8 hxxp://yongm.dafa8088.com/count.asp 로정보유출 - 2 -
신종파밍악성코드분석 1. data8.exe 실행압축확인 (V3진단명: Trojan/Win32.Blocker) 해당파일은실행압축되어있었으며, 자가복제및 Windows계열 OS에서기본제공되는파일들을이용하여권한변경, 감염자의정보유출 (MAC, OS정보, 국가정보 ) 행위가확인됨 1) 파일구성확인 - UPX & vmprotect로 packing [ 그림 4. WinHex 를통한파일확인 ] 2) MUP (Manual UnPacking) 후 OEP (Original Entry Point) 확인 [ 그림 5. OEP 화면 ] 2. data8.exe 파일과생성된 Hostssoon.exe ( 자가복제본 ) 비교 [ 그림 6. MD5 & V3 진단명비교 ] - 3 -
3. data8.exe 행위기반분석 1) System32 경로확인 - kernel32.getsystemdirectorya: Windows계열 OS의 system32 ( 시스템폴더 ) 경로확인 - 저장경로 : C:\WINDOWS\system32\Hostssoon.exe [ 그림 7. kernel32.getsystemdirectorya 함수 ] [ 그림 8. 악성파일자가복제본저장 ] - CMD 창을사용하지못하도록레지스트리값수정 [ 그림 9. DisableCMD 화면 ] - 4 -
2) 수정된레지스트리값확인 - 레지스트리경로 : 내컴퓨터 \HKCU\Software\Policies\Microsoft\windows\System\DisableCMD [ 그림 10. CMD 레지스트리값확인 ] [ 그림 11. Command 확인 ] * Registry Fix Tool 특정레지스트리정보를악용하여프로그램의실행을방해하는악성코드가많이존재하게되는데본유틸리티는악성코드가변경한레지스트리정보를수정하는프로그램 ( 참조. http://www.ahnlab.co.kr/kr/site/download/vacc/vaccview.do?seq=83) - 5 -
3) txt 파일다운로드과정 - 감염된 PC 의 hosts 파일을변조하기위해 GET 방식을사용하여외부에서 txt 파일을다운로드함 [ 그림 12. GET Method 화면 ] - 하단 URL 은하드코딩되어있음 (= 그림 20 번항목참고 ) [ 그림 13. abcd.txt 화면 ] 4) hosts 파일변조를위해배치 (.bat) 파일 2 개생성 - Windows7 버전이상 hosts 파일은보안강화로인해관리자권한이아니면수정할수없음 [ 그림 14. bat file 생성화면 ] 5) qc.bat 파일 - 생성경로 : C:\Windows\qc.bat [ 그림 15. qc.bat 내용 ] ㄱ ) taskkill 명령어를사용하여 conim.exe 프로세스강제종료 ㄴ ) cacls 명령어를사용하여사용자 everyone 의 hosts 파일권한을모든권한으로변경 ㄷ ) attrib 명령어를사용하여 hosts 파일읽기, 보관, 시스템파일로설정및숨김파일로설정변경 - 6 -
6) bh.bat 파일 - 생성경로 : C:\Windows\bh.bat [ 그림 16. bh.bat 내용 ] ㄱ ) attrib 명령어를사용하여 hosts 파일읽기, 보관, 시스템파일로설정및숨김파일로설정변경 ㄴ ) cacls 명령어를사용하여사용자 everyone 의 hosts 파일권한을읽기권한으로변경 7) Windows 계열에서기본제공되는파일 (taskkill.exe, cacls.exe, attrib.exe) - taskkill : 프로세스종료시사용 [ 그림 17. taskkill.exe 옵션 ] - cacls : 파일의액세스제어목록 (ACL) 을화면에표시및수정 [ 그림 18. cacls.exe 옵션 ] - attrib : 파일특성을화면에표시및수정 [ 그림 19. attrib.exe 옵션 ] - 7 -
8) 파일내부하드코딩된 URL - URL: hxxp://yongm.dafa8088.com/count.asp ( 현재 ISP 에서 Null 처리됨 ) [ 그림 20. Malzilla decode (XOR Key: 10)] 9) ScriptControl 호출 (VBScript 사용목적 ) [ 그림 21. ScriptControl 함수 ] 10) VBScript 를이용한 MAC Address 함수내용 Function MACAddress() // MAC Address 함수선언 Dim mc,mo // VisualBasic에서쓰는하나이상의변수선언형식 Set mc=getobject("winmgmts:").instancesof("win32_networkadapterconfiguration") //mc 값에 Winmgmts이용해서, 네트워크환경설정값을할당함 For Each mo In mc //mc안에 mo를확인 If mo.ipenabled=true Then //mo에 IP주소할당이참이라면 MACAddress= mo.macaddress //mo에 MAC Address값을얻어온다 ) [ 그림 22. VisualBasicScript 코딩 ] - 8 -
4. 감염된 PC 에서행위확인 1) MAC Address 파악 - 개인정보유출을위해서파일내부에코딩된 VBScript 를이용하여 MAC Address 를확인함 [ 그림 23. MAC Address 노출 ] 2) 사용자 OS 판별 - Windows 계열의 OS 를감염대상으로함 [ 그림 24. OS 종류 ] - data8.exe 파일분석은 WindowsXP 에서진행되어 XP 부분로직으로분기됨 [ 그림 25. XP 로분기된화면 ] - 9 -
3) iexplore.exe 실행 - 사용자정보를특정도메인 (hxxp://yongm.data8088.com) 으로유출하기위해실행 [ 그림 26. 정보수집로직 ] [ 그림 27. 개인정보유출화면 ] 5. 서버와파일전송을위한헤더확인 1) HttpOpenRequestA 함수 - 80 port 로파일전송을위해쓰는 Windows API 함수 [ 그림 28. HTTP/1.1 사용 ] 2) localhost 에 9700 port open [ 그림 29. Port open 화면 ] - 10 -
3) HTTP 헤더필드확인 - Accept: image/gif, image/bmp, image/x-xbitmap, image/jpeg, image/pjpeg, application/x- shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */* [ 그림 30. Data Type 화면 ] - Accept-Lanauage: zh-cn [ 그림 31. Accept Language 화면 ] - 브라우저정보 [ 그림 32. UserAgent 화면 ] - 11 -
6. 패킷확인 1) abcd.txt 파일다운로드 [ 그림 33. abcd.txt 내용확인 ] - 12 -
2) hosts 파일변조내역 (abcd.txt 내용 ) [ 그림 34. 국내금융권대상 ] - 13 -
3) host 파일이변조된인터넷창동작확인 [ 그림 35. 파밍화면 ] Team bolaven 은보안관제팀분석소모임입니다. ( 양광삼, 김대업, 이은재, 김준호, 설인규, 김용희 ) - 14 -