본문 바로가기

벌새::Analysis

"정상.exe + 악성.dll" 파일 구성의 파밍(Pharming) 악성코드 유포 주의 (2015.3.23)

728x90
반응형

2015년에 들어오면서 국내 인터넷뱅킹을 표적으로 한 파밍(Pharming) 악성코드가 정상적인 프로그램의 실행 파일을 이용하여 악성 라이브러리(.DLL) 파일을 로딩하는 DLL Planting 기법으로 진화를 하였습니다.

 

이에 따라 보안 업체에서 관련 악성코드에 대한 주의를 당부하고 있으며, 현재는 지속적으로 다양한 정상적인 프로그램<Volumouse (vlmshlp.dll), Python (python27.dll) 등>을 악용하여 유포가 이루어지고 있습니다.

 

이 글에서는 Daum PotPlayer 프로그램을 악용하여 파밍(Pharming) 악성코드를 활용하는 방법에 대해 살펴보도록 하겠으며, Daum PotPlayer 프로그램은 2015년 2월 2일경 Daum PotPlayer 1.6.52515 버전 업데이트를 통해 프로그램 실행시 PotPlayer.dll 변조 여부를 확인하는 기능이 추가되었습니다.

 

■ Daum PotPlayer 프로그램 동작 및 악용 방식

Daum PotPlayer 프로그램은 "C:\Program Files (x86)\Daum\PotPlayer\PotPlayer.exe" 파일 실행을 통해 실행되는 과정에서 "C:\Program Files (x86)\Daum\PotPlayer\PotPlayer.dll" 파일을 반드시 로딩하도록 제작되어 있습니다.

 

그런데 악성코드 제작자는 이 점을 악용하여 구버전의 Daum PotPlayer 프로그램의 실행 파일(PotPlayer.exe)을 시스템 시작시 자동 실행하도록 등록하여 자신이 위치한 폴더 내에 악성 파일(PotPlayer.dll)을 추가하여 악의적인 기능을 수행하도록 활용하고 있습니다.

 

■ Daum PotPlayer 파일을 악용한 파밍(Pharming) 악성코드 분석 정보

 

보안 패치가 제대로 설치되어 있지 않은 PC 환경으로 취약점(Exploit)을 이용한 악성코드 유포 사이트에 접속할 경우 악성 파일<SHA-1 : 5c326651f5928bf0f2eb61fc0262a73dabb3bfc7 - AhnLab V3 : Win-Trojan/Banki.Gen, 알약(ALYac) : Trojan.Generic.AD.02167028 (VT : 39/57)>을 자동 다운로드 및 실행하여 다음과 같이 감염이 이루어질 수 있습니다.

 

[생성 파일 및 진단 정보]

 

C:\Program Files\Common Files\Services\MAdanLI.exe :: 정상 파일(= PotPlayer.exe)

 

C:\Program Files\Common Files\Services\PotPlayer.dll
 - SHA-1 : c9dc7e2d5df0a1f01815dec4a4c3eb3ea6e17c26
 - 알약(ALYac) : Spyware.PWS.KRBanker.M (VT : 41/57)

해당 악성코드는 기본적으로 존재하는 "C:\Program Files\Common Files\Services" 폴더 내에 파일을 생성하며, 생성된 "C:\Program Files\Common Files\Services\MAdanLI.exe" 파일은 Daum PotPlayer 프로그램에서 사용하는 PotPlayer.exe 정상 파일입니다.

또한 PotPlayer.dll 악성 파일은 유효하지 않은 哈密跟秘密组织 디지털 서명이 포함되어 있으며, 파일 속성값 정보가 중국(China) 계열에서 제작한 파일임을 쉽게 인지할 수 있습니다.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
 - MAdanLI = C:\Program Files\Common Files\Services\MAdanLI.exe

감염이 이루어진 환경에서는 Windows 시작시 시작 프로그램(MAdanLI)에 "C:\Program Files\Common Files\Services\MAdanLI.exe" 정상 파일을 자동 실행하도록 등록하여 백신 진단을 우회합니다.

 

자동 실행된 MAdanLI.exe 정상 파일(= PotPlayer.exe)은 DLL 로드 규칙에 따라 자신이 위치한 폴더 내에 PotPlayer.dll 파일을 자동으로 로딩 및 "C:\Windows\System32\cmd.exe" 시스템 파일을 추가 실행하여 악의적인 코드를 삽입한 후 메모리에 상주시킵니다.

 

  • C:\Windows\System32\calc.exe
  • C:\Windows\System32\svchost.exe

참고로 최근 변종에서는 cmd.exe 시스템 파일이 아닌 calc.exe, svchost.exe 등의 다양한 시스템 파일을 로딩하여 코드를 삽입하는 것으로 알려져 있습니다.

감염이 이루어진 환경에서는 "Internet Protocol Version 4 (TCP/IPv4)" 속성의 기본/보조 DNS 서버를 "127.0.0.1 / 127.0.0.1"로 변경하여 VPN 서버를 통해 통신을 하도록 구성을 변경합니다.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SharedAccess\Parameters\FirewallPolicy\FirewallRules
 - {4928F388-C624-4DDF-A7EA-ED8A3667AB6C} = v2.10|Action=Allow|Active=TRUE|Dir=In|Protocol=17|Profile=Private|App=C:\Windows\System32\cmd.exe|
Name=Sevsl|
 - {79411903-744C-4F90-96A6-85698D47771F} = v2.10|Action=Allow|Active=TRUE|Dir=In|Protocol=6|Profile=Private|App=C:\Windows\System32\cmd.exe|
Name=Sevsl|

Windows 부팅 이후 자동 실행되는 "C:\Windows\System32\cmd.exe" 시스템 파일(Windows 명령 처리기)이 Windows 방화벽에 의한 차단이 이루어지지 않도록 레지스트리 값을 등록하며, cmd.exe 프로세스를 TCP/IP 정보를 확인해보면 UDP 프로토콜을 통해 외부와 통신을 하는 역할을 수행하는 것을 알 수 있습니다.

이를 통해 Windows 부팅시마다 특정 QQ 계정에 접속하여 파밍(Pharming) 서버에 접속할 IP 정보(104.149.173.103)를 받아오는 동작을 확인할 수 있습니다.

또한 NPKI 공인인증서 폴더를 자동 검사하여 "C:\Users\(사용자 계정)\AppData\Local\Temp\f53fd090044693a4b9e172e41c305cb9.zip" 압축 파일 형태로 수집하여 미국(USA)에 위치한 104.149.173.103 IP 서버로 전송을 시도합니다.

 

그러므로 이런 파밍(Pharming) 악성코드에 감염된 사용자는 악성코드 제거 후 공인인증서가 외부로 유출되었을 가능성이 있다는 점을 명심하시고 폐기 및 재발급 받으시길 권장합니다.

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main
 - Start Page = (사용자 지정 홈 페이지) :: 감염 전
 - Start Page = www.naver.com :: 감염 후

해당 파밍(Pharming) 악성코드에 감염된 환경에서는 사용자가 지정한 홈 페이지 주소를 네이버(Naver)로 자동으로 변경하여 사용자가 Internet Explorer 웹 브라우저를 실행할 경우 네이버(Naver) 메인 페이지가 자동으로 연결되도록 구성되어 있습니다.

연결된 네이버(Naver) 홈 페이지는 실제로는 미국(USA)에 위치한 104.149.173.103 파밍(Pharming) 웹 서버에서 제공하는 가짜 웹 사이트이며, 화면에는 금융감독원 팝업창이 생성되어 보안 관련 인증절차를 진행하도록 유도하고 있습니다.

 

  • 가짜 국민은행 : h**p://www.kbstar.com.r
  • 가짜 농협은행 : h**p://www.nonghyup.com.r
  • 가짜 신한은행 : h**p://www.shinhan.com.r
  • 가짜 우리은행 : h**p://www.wooribank.com.r
  • 가짜 Standard Chartered : h**p://www.standardchartered.co.kr.r
  • 가짜 우체국 : h**p://www.epostbank.go.kr.r
  • 가짜 기업은행 : h**p://www.ibk.co.kr.r
  • 가짜 외환은행 : h**p://www.keb.co.kr.r
  • 가짜 새마을금고 : h**p://www.kfcc.co.kr.r
  • 가짜 하나은행 : h**p://www.hanabank.com.r
  • 가짜 시티은행 : h**p://www.citibank.co.kr.r
  • 가짜 수협은행 : h**p://www.suhyup-bank.com.r

실제 가짜 국민은행에 접속할 경우 정상적인 URL 주소가 아닌 점과 메뉴를 클릭할 경우 "※ 보다 안전한 인터넷 뱅킹의 이용을 위하여 2014.3.24(월) 인터넷뱅킹, 스마트뱅킹, 폰뱅킹.이 모든 서비스를 이용하시려면 (개인.기업)추가인증후 이용이 가능합니다.※"와 같은 메시지 창이 생성되는 것을 볼 수 있습니다.

이를 통해 전자금융사기예방서비스 페이지로 자동 연결되어 개인정보 및 금융 정보를 입력하여 각종 계좌 정보 및 보안카드 정보를 수집하도록 제작되어 있으므로 절대로 양식에 정보를 입력하는 일이 없도록 하시기 바랍니다.

 

■ 파밍(Pharming) 악성코드 제거로 인한 문제

DLL Planting 악성코드 기법은 정상적인 실행 파일을 Windows 시작시 자동 실행하도록 등록하여 악성 DLL 파일(PotPlayer.dll)을 로딩하는 방식이며, 보안 제품에서는 악성 DLL 파일(PotPlayer.dll)만을 제거하여 부팅시 "Cannot find or init PotPlayer.dll" 에러(Error)창을 생성할 수 있습니다.

 

그러므로 시작 프로그램에 등록된 "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\MAdanLI" 레지스트리 값을 반드시 삭제해야 합니다.

또한 파밍(Pharming) 악성코드 감염으로 인해 DNS 서버 구성값이 수동으로 설정되어 악성 DLL 파일이 삭제된 경우 웹 브라우저를 통한 인터넷이 되지 않는 문제가 발생할 수 있습니다.

"네트워크 및 인터넷 → 네트워크 상태 및 작업 보기 → 로컬 영역 연결 → 속성 → Internet Protocol Version 4 (TCP/IPv4)" 메뉴를 실행하여 "다음 DNS 서버 주소 사용 ⇒ 자동으로 DNS 서버 주소 받기"로 변경하시기 바랍니다.(※ 기업 내부 및 특수한 네트워크 환경에서는 DNS 서버 주소가 수동으로 설정해야 될 수 있습니다.)

 

위와 같은 파밍(Pharming) 악성코드에 감염되지 않기 위해서는 Windows, Internet Explorer, Adobe Flash Player, Oracle Java 등 사용자 PC에 설치된 각종 소프트웨어를 최신 버전으로 업데이트를 해야 하지만 대부분의 인터넷 사용자들은 보안 패치에 대한 정보가 부족한 것이 사실입니다.

 

그러므로 알약(ALYac), 네이버 백신(Naver Vaccine), MSE 무료 백신 사용자는 반드시 취약점 차단 솔루션을 추가적으로 설치하여 취약점(Exploit) 방식의 자동 감염이 노출되지 않도록 시스템을 보호하시기 바랍니다.

728x90
반응형