사용자 PC를 감염시켜 봇으로 만드는 악성코드 jorik 




1. 개요 


해커가 마음대로 제어할 수 있는 감염된 다수의 컴퓨터로 형성된 네트워크를 봇넷(Botnet)이라 한다. 이 봇넷을 구성하는 감염된 컴퓨터 봇(Bot)은 C&C(Command and Control) 서버의 명령을 수행한다. C&C 서버의 명령은 주로 봇넷 확장을 위한 악성코드 유포 또는 DDoS(Distributed Denial of Service) 공격을 이루기 위한 DoS(Denial of Service) 공격 등이다. 본 보고서에선 사용자 컴퓨터를 감염시켜 봇으로 만드는 C&C 악성코드의 주요 기능을 분석하여 봇의 동작 방식을 알아보고자 한다.





2. 분석 정보


2-1. 파일 정보

구분

내용

파일명

server.exe

파일크기

90,624 byte

진단명

Trojan/W32.jorik.90624.Z

악성동작

파일 드롭, 다운로드 및 실행, 포트 루트킷, DoS 공격

네트워크

116.***.***.150:8692 - 유포지

v******l.c***s.com:8080 - 공격자 서버

 


2-2. 유포 경로

유포 경로는 정확히 알려진 바가 없지만 개인 서버에서 수집된 것으로 보아, 다른 악성코드에서 추가로 다운로드되어 실행되었을 가능성이 커 보인다.




2-3. 실행 과정

server.exe는 자신의 리소스로부터 SynDrives.sys 바이너리를 가져와 생성하고, 임의의 문자 6자리 파일명으로 자신을 복사한다. 각 파일의 경로는 아래와 같으며, 두 파일 모두 서비스로 생성 및 시작 시킨 뒤 server.exe는 자가 삭제 후 종료된다.


구 분

포트 루트킷

자가 복제

파일명

SynDrives.sys

[Random_06].exe

경로

%SystemRoot%\system32\dirvers\

%SystemRoot%\system32\

서비스명

SynDrives

National Instruments Domain Service

[1] 드롭 파일


자가 복제된 파일인 [random_06].exe가 실질적으로 공격자 서버와 통신하며 공격자의 명령을 수행하며, SynDrives.sys는 공격자 서버와의 통신을 은닉하기 위한 포트 루트킷 기능을 수행한다.



3. 악성 동작


3-1. 타 서버 DoS(Denical of Service) 공격

공격자 서버로부터 명령을 받아 대상이 된 서버에 아래 그림과 같은 의미 없는 요청을 반복하여 대상 서버에 부하를 일으킨다.


[그림 1] 패킷 내용 중 일부[그림 1] 패킷 내용 중 일부


[그림 2] 패킷 전송 스레드 반복 생성[그림 2] 패킷 전송 스레드 반복 생성





SYN Flood 기능 및 다양한 소켓 옵션, 패킷 내용 등이 존재하며, 패킷 내용 대부분이 HTTP GET 요청 메소드인 것으로 미루어 보아 공격 대상은 주로 웹 서버일 것으로 추측된다.




3-2. 파일 다운로드 및 실행

공격자가 특정하는 URL을 통해 아래 그림과 같이 웹 서버에서 파일을 다운로드 받고, 실행시킨다. 이 후 server.exe가 등록했던 서비스들을 삭제한다.

[그림 3] 파일 다운로드 및 실행[그림 3] 파일 다운로드 및 실행




등록했던 2개의 서비스를 모두 제거하는 것으로 보아, 추가로 다운로드 된 모듈 또한 같은 서비스명을 가질 가능성이 높아 보인다.





4. 결론


해당 악성코드는 서비스로 돌아가며, 포트 또한 감춰져 있어 일반 사용자가 감염 사실을 알아차리기 어렵다. 악성코드 감염을 막기 위해선, 주기적으로 바이러스 검사를 해 감염 상태를 확인해야 하며, 운영체제와 응용 소프트웨어들을 최신 버전으로 업데이트하고 출처가 불분명한 파일을 내려받지 않아야 한다.


위 악성코드는 잉카인터넷 안티바이러스 제품 nProtect Anti-Virus Spyware V3.0과 nProtect Anti-Virus/Spyware V4.0에서 진단 및 치료가 가능하다.


[그림 4] nProtect Anti-Virus/Spyware V4.0 진단 및 치료 화면[그림 4] nProtect Anti-Virus/Spyware V4.0 진단 및 치료 화면



[그림 5] nProtect Anti-Virus/Spyware V3.0 진단 및 치료 화면[그림 5] nProtect Anti-Virus/Spyware V3.0 진단 및 치료 화면








저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by nProtect
1. 개 요


 

잉카인터넷 대응팀은 최근 해외에서 Bot 기능이 있는 것으로 화제가 되었던 악성파일을 분석하여 관련된 내용을 일부 공개하게 되었다. 이와 같은 안드로이드 악성 파일은 아직까지 국내에 정식 감염된 피해 사례는 보고된 바 없는 상태이다. 이번 악성파일은 공격자의 지능화된 무선 명령 및 지시에 따라 다양한 정보 유출 기능 등을 수행할 수 있는 이른바 좀비폰 역할이 가능한 종류로 한단계 진화된 형태로 볼 수 있다. 특히, 해당 악성파일은 "한국의 이동통신사망(APN)을 체크 시도"하는 기능이 있어 국내 사용자로 대상 범위를 확대하고자 하는 또 다른 시도가 아닌가 조심스럽게 추정되고 있어, 잉카인터넷 대응팀은 관련 정보 수집을 계속 진행 중이다.


 

- 한국 이동통신사의 APN 이용, 국내를 겨냥용 안드로이드 악성파일 신호탄?
- 잠들지 않는 좀비폰 당신의 일거수 일투족을 엿볼 수 있다.
- DDoS 공격, 악성스팸 전파, 통화 음성 녹음 등 개인정보 유출 시도


국내 각종 포털 및 커뮤니티에서 안드로이드 악성파일 유포 중
http://erteam.nprotect.com/259

안드로이드 악성파일 실제 유포과정 최초 공개
http://erteam.nprotect.com/257

안드로이드 기반 악성파일 국내 자료실에서 배포
http://erteam.nprotect.com/239

안드로이드 악성 앱 자동 탐지 & 분석 시스템 개발
http://erteam.nprotect.com/227

2. 유포경로 및 감염 증상

현재 안드로이드 기반의 악성 애플리케이션들은 이전과 다르게 3rd party 마켓 등 각종 블랙마켓과 정식 구글마켓을 가리지 않고 유포가 이루어지고 있다. 오픈 지향성이 안드로이드의 매우 큰 강점이지만 이와 동시에 보안적인 측면에서 다소 위협이 된다는 것은 부인할 수 없는 사실이다.

다만, 구글정식 마켓을 통해 유포되는 악성 애플리케이션들은 블랙마켓 등과 다르게 대부분 제작 당시 악의적인 목적을 가지고 만들어졌다기 보다 다소 악의적인 용도로 사용될 소지가 있는 기능들이 포함되어 악성 애플리케이션으로 진단되고 있는 경우도 많다.

이번에 이슈가된 악성 애플리케이션의 경우는 중국의 비공식 안드로이드 마켓을 통해 유포
가 이루어진 것으로 알려졌으며, 메인 아이콘을 구글 등의 정식 서비스 애플리케이션으로 위장한 만큼 제작초기부터 악의적인 목적으로 만들어진 실제적인 악성 애플리케이션이라고 볼 수 있다.

  

◈ 설치 단계

해당 악성 애플리케이션은 다운로드 후 설치시 아래의 그림과 같이 다양한 권한을 요구한다.

 

 

※ 전체 권한

- android:name="android.permission.READ_PHONE_STATE"
- android:name="android.permission.MODIFY_PHONE_STATE"
- android:name="android.permission.CALL_PHONE"
- android:name="android.permission.PROCESS_OUTGOING_CALLS"
- android:name="android.permission.RECORD_AUDIO"
- android:name="android.permission.CAMERA"
- android:name="android.permission.MODIFY_AUDIO_SETTINGS"
- android:name="android.permission.READ_CONTACTS"
- android:name="android.permission.WRITE_CONTACTS"
- android:name="android.permission.RECEIVE_BOOT_COMPLETED"
- android:name="android.permission.SEND_SMS"
- android:name="android.permission.RECEIVE_SMS"
- android:name="android.permission.READ_SMS"
- android:name="android.permission.WRITE_SMS"
- android:name="android.permission.INTERNET"
- android:name="android.permission.ACCESS_COARSE_LOCATION"
- android:name="android.permission.ACCESS_FINE_LOCATION"
- android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"
- android:name="android.permission.ACCESS_MOCK_LOCATION"
- android:name="android.permission.UPDATE_DEVICE_STATS"
- android:name="android.permission.WAKE_LOCK"
- android:name="android.permission.DEVICE_POWER"
- android:name="android.permission.WRITE_SETTINGS"
- android:name="android.permission.DISABLE_KEYGUARD"
- android:name="android.permission.WRITE_EXTERNAL_STORAGE"
- android:name="android.permission.READ_LOGS"
- android:name="android.permission.KILL_BACKGROUND_PROCESSES"
- android:name="android.permission.RESTART_PACKAGES"
- android:name="android.permission.ACCESS_NETWORK_STATE"
- android:name="android.permission.WRITE_APN_SETTINGS"
- android:name="android.permission.BLUETOOTH"


또한, 위에서 설명했듯이 해당 악성 애플리케이션은 아래의 그림과 같이 메인 아이콘을 구글의 것과 유사한 이미지를 도용해 정상 애플리케이션인것 처럼 위장하고 있으며, 설치 후 별도의 실행 아이콘은 존재하지 않는다. 해당 악성 애플리케이션의 설치 여부는 "환경설정" -> "응용프로그램" -> "응용프로그램 관리"에서 확인할 수 있다.

 

  


◈ 악성 기능 분석

해당 악성 애플리케이션은 위에서 설명한것과 동일하게 실행 아이콘이 없으므로 별도의 실행 명령 없이 내부적으로 백그라운드 상태에서 동작할 수 있는 리시버와 서비스 기능에 의존할 수 밖에 없다.

우선, 해당 악성 애플리케이션의 전체적인 악성 기능을 아래와 같이 몇가지로 요약해볼 수 있다.

※ 전체 악성 기능

- Bot 기능 수행
- 사용자 몰래 수신되는 SMS 감시
- 단말기 등의 정보 수집(IMEI, IMSI, 단말기 위치정보)
- 사용자 몰래 공격자에게 SMS 발송 (요금 부과 피해 가능)
- 통화내용 녹취
- 단말기 화면 저장
- 다국적 APN(Access Point Name) 체크
- 특정 패키지명 프로세스 종료 시도
- 단말기 조건에 따라 재부팅 시도

전체적인 악성 기능에 대해 하나하나 살펴보도록 하겠다.

㉠ 좀비 폰(Bot) 기능 수행 및 사용자 몰래 수신되는 SMS 감시

전체 악성 기능에서 설명한 Bot 기능의 경우 아래의 일부 코드와 같이 특정 명령자에 의해 악성기능 동작 조건을 충족하는 SMS(악성 기능 수행 명령어 포함, "*" 로 시작되는 문자열의 SMS 체크)를 수신하게 되면 수행될 수 있다. 즉, 특정 SMS 수신을 통해서 좀비 폰 기능이 활성화 되는 것이다.

 


명령자에 의해 악성기능 동작 조건을 충족하는 SMS가 수신되면 위의 일부 코드가 수행되어 조건 체크 및 악성 기능 수행 후 해당 SMS는 사용자 몰래 삭제된다.

㉡ 단말기 등의 정보 수집

해당 악성파일은 아래의 일부 코드에 의해 IMEI, IMSI, 단말기 위치정보 등을 수집하게 된다.


또한, 수집되는 정보는 내부에 존재하는 Resource 등의 XML 파싱과 SMS 발송 등을 통해 외부로 유출 시도가 이루어진다.

㉢ 사용자 몰래 SMS 발송

해당 악성 애플리케이션은 수집된 정보 및 전달된 명령어의 수행 여부를 명령자에게 SMS형태로 전달하게 되는데 이때, 아래의 일부 코드가 수행된다.


위와 같은 코드를 사용하여 문자를 발송하게 되면 SMS 발신함 등에 기록이 남지 않기 때문에 일반 사용자들은 SMS 발송 여부를 확인하기 어렵다.

㉣ 통화내용 녹취

해당 악성 애플리케이션은 감염 후 리스너를 통해 통화 상태 변경에 대한 체크를 지속적으로 진행하며, 조건을 충족하게 되면 아래의 일부 코드를 통해 통화내용을 녹취해 .amr 형태의 파일로 저장하게 된다.


㉤ 화면 저장

해당 악성 애플리케이션은 악성 서비스 등록을 통해 아래의 일부 코드를 수행하여 지속적인 조건 체크 후 스크린샷 캡쳐 동작을 진행하며, 캡쳐파일은 .jpg 형태로 저장 된다.


㉥ 네트워크(APN) 설정 체크 

해당 악성 애플리케이션은 공격자의 의도대로 원활한 악성 기능 수행을 위해 네트워크(APN) 설정을 체크하게 되는데 통신망 사업자 정보 등을 체크 후 내부에 존재하는 XML 파일에서 각 통신망 사업자에 해당하는 APN(Access Point Name) 정보를 추출하여 아래의 일부 코드를 통해 설정을 확인하는 방식을 사용하고 있다.

※ APN(Access Point Name)

- APN은 휴대정보단말기 등을 휴대전화 네트워크에 연결하여 데이터 통신을 할 때 필요한 대상을 지정하는 문자열이다.

 


이때, 파싱되는 XML파일을 살펴보면 아래의 그림과 같이 중국내 사용 가능한 APN 정보가 포함되어 있으며 web.sktelecom.com, ktfwing.com 등의 국내 APN 정보도 포함되어 있는 것을 확인할 수 있다.

※ 내부에 포함된 APN, MMS 설정 정보

[중국]
- http://mmsc.monternet.com
- http://mmsc.myuni.com
- http://www.wo.com.cn
- http://mmsc.vnet.mobi
- http://mms.emome.net

[대만]
- http://mms.catch.net.tw
- http://mms.kgtmms.net.tw/mms/wapenc

[홍콩]
- http://mms.peoples.com.hk
- http://mobile.three.com.hk
- http://3gmms.pccwmobile.com
- http://mms.smartone-vodafone.com

[한국]
- http://always.ktfwing.com
- http://mmsc.ktfwing.com
- web.sktelecom.com
- smart.nate.com
- http://omms.nate.com

 


㉦ 특정 프로세스 종료

해당 악성 애플리케이션은 구동중인 특정 애플리케이션에 대한 종료 기능을 수행할 수 있는데 이때 사용되는 코드는 아래의 그림과 같다.


다만, 위에서 사용된 프로세스 종료 관련 API는 안드로이드 SDK 2.1 이하 버전에서만 정상적으로 동작하므로 현재로서는 동작하지 않는것으로 볼 수 있다.

㉧ 재부팅 시도

해당 악성 애플리케이션은 기본적으로 재부팅이 이루어져야 완벽한 동작을 보장한다. 때문에 감염시 아래의 일부 코드를 통해 재부팅을 시도할 수 있는데 해당 악성 애플리케이션의 경우 재부팅과 관련된 "android.permission.REBOOT" 권한을 가지고 있지 않으며, 해당 기능은 루팅된 스마트폰에서만 정상 동작이 가능하다.

 

  

3. 예방 조치 방법

해당 악성 애플리케이션은 코드분석 완료 후 아래와 같은 국내 단말기 환경에서 실제 감염 및 명령 테스트 과정을 거쳤으나, 정상적인 동작이 확인되지는 않았다.

※ 테스트 환경

- 겔럭시S (진저브레드 이상)
- 겔럭시S2 (진저브레드 이상)
- 넥서스원 (진저브레드 이상)


다만, 이와 같은 Bot 기능 기반의 악성 애플리케이션은 언제든지 악성파일 제작자에 의해 좀 더 다양한 악성 기능이 포함되어 제작 및 유포가 이루어질 수 있으며, 기능적인 측면으로 인해 일반 사용자의 경우 감염 여부에 대한 확인이 어렵다. 때문에 이러한 악성 애플리케이션으로 부터 안전한 스마트폰 사용을 위해서는 아래와 같은 "스마트폰 보안 관리 수칙"을 준수하는 등 사용자 스스로의 관심과 주의가 무엇보다 중요하다고 할 수 있다.

※ 스마트폰 보안 관리 수칙

1. 신뢰할 수 있는 보안 업체에서 제공하는 모바일 백신을 최신 엔진 및 패턴 버전으로 업데이트하여 실시간 보안 감시 기능을 항상 "ON" 상태로 유지해 사용할 수 있도록 한다.

2. 애플리케이션 다운로드 시 항상 여러 사용자를 통해 검증된 애플리케이션을 선별적으로 다운로드 하는 습관을 가질 수 있도록 한다.

3. 다운로드한 애플리케이션은 항상 모바일 백신으로 검사한 후 사용 및 설치 하도록 한다.

4. 스마트폰을 통해 의심스럽거나 알려지지 않은 사이트 방문 또는 QR 코드 이용시 각별히 주의한다.

5. 발신처가 불분명한 MMS 등의 메시지, 이메일 등의 열람을 자제한다.

6. 스마트폰에는 항상 비밀번호 설정을 해두고 사용하도록 한다.

7. 블루투스와 같은 무선 인터페이스는 사용시에만 켜두도록 한다.

8. 중요한 정보 등의 경우 휴대폰에 저장해 두지 않는다.

9. 루팅과 탈옥 등 스마트폰 플랫폼의 임의적 구조 변경을 자제한다.


※ 잉카인터넷(시큐리티대응센터/대응팀)에서는 해당 악성 애플리케이션에 대해 아래와 같이 진단/치료 기능을 제공하고 있으며, 24시간 지속적인 대응체계 가동 및 "nProtect Mobile for Android" 를 통해 다양한 모바일 보안 위협에 대응하고 있다.




저작자 표시
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by nProtect