MITRE의 MAEC 프로젝트에서 영감을 얻어 나름 악성코드에 대한 간단한 특징 분석 표준안을 만들어본다.
악성코드의 특징을 분석 할 때에 크게 정적인 특징과 동적인 특징으로 주로 구분을 하는데, 이처럼 분석 된 결과를 보면 실제 어떤 악영향을 주는지 바로 인지하기 어려운 경우가 있다. 아래와 같이 "전파 및 감염 / 지속성 유지 / 악의적 기능" 으로 분류를 하면 해당 악성코드가 감염이 되면 결과적으로 어떤 영향을 미치는지, 감염이 어떻게 이루어지는지 그리고 감염이 된 이후에 사용자로부터 감염사실을 숨기거나 안티바이러스 제품으로부터 탐지되지 어렵게 하기 위해서 어떤 기능들이 있는지 인지하기가 한결 쉽다.
아래는 320 때의 악성코드에 대한 분석자료를 근거로 위의 구분에 맞추어 분류를 해 본 것이다. (분석 내용 자체는 실제와 다를 수 있으니 분류 방법을 보여주기 위한 예제 정도로 보자)
구분 |
정적인 특징, 동적인 특징 |
||
전파 및 감염 |
지속성 유지 |
악의적 기능 |
|
ApcRunCmd.exe |
* PMS를 통한 전파 및 감염 |
N/A |
* Drop: %Temp% 폴더에 파일 생성 - AgentBase.exe, Alg.exe,Conime.exe, ~pr1.tmp * AgentBase.exe 실행 * 원격관리툴 설정파일 정보 획득 후 원격접속 (mRemote / SecureCRT) 원격접속 관리툴 여부 확인 및 명령어 실행(alg.exe, conime.exe) |
AgentBase.exe |
* ApcRunCmd.exe에 의해 Drop |
* Anti-Virus 확인 및 강제 종료 시도 - %Temp% 폴더에서 ~v3.log 파일 확인 - Taskkill /F /IM pasvc.exe - Taskkill /F /IM clisvc.exe * 한 프로세스 실행 - FileMapping Object 존재여부 확인 |
* 실행 즉시 MBR / VBR / 논리드라이브 Overwrite (PRINCPES) * 실행 즉시 MBR / VBR / 논리드라이브 파일 내용 삭제 * 시스템 재부팅 |
alg.exe |
* ApcRunCmd.exe에 의해 Drop |
* Packing - UPX Packer |
* SSH 연결 - PUTTY plink Program |
conime.exe |
* ApcRunCmd.exe에 의해 Drop |
* Packing - UPX Packer |
* SCP 연결 - PUTTY pscp Program |
~pr1.tmp |
* ApcRunCmd.exe에 의해 Drop |
* Unix 계열 스크립트 - dd 명령어 실행 XX MB 단위로 NULL Overwrite - /kernel 등 특정 경로를 rm으로 삭제 |
|
kv_d[1].tmp |
N/A |
* Anti-Virus 무력화 - 하우리 관련 프로세스 종료 - 하우리 관련 파일 삭제 |
* Drop - vms1014.zip -> OthDown.exe - update.zip -> vmsinit.ini (환경설정) |
OthDown.exe |
* kv_d[1].tmp에 의해 Drop |
* 특정 시각 이후에 MBR / VBR / 논리드라이브 Overwrite (HASTATI) |
|
mb_join[1].gif |
???? |
* 실행 즉시 MBR / VBR / 논리드라이브 Overwrite (PR!NCPES) |
'Work Log > As Cybersecurity Consultant' 카테고리의 다른 글
OECD's Guidelines for the Security of Information Systems (0) | 2013.10.25 |
---|---|
특허 출원, 출원 명세서 기재요령 및 참고자료 (0) | 2013.06.12 |
간단한 Passive Honeypot 구조 (0) | 2013.06.10 |
접근통제, RBAC구현을 위한 데이터 모델 (0) | 2013.06.04 |
웹 기반 서비스의 취약점 데모를 위한 참조 (0) | 2013.06.03 |