Download presentation
Presentation is loading. Please wait.
Published byMartha Jørgensen Modified 5년 전
1
악성코드 분석 all_mind@naver.com
Malware Analysis 악성코드 분석
2
Malware Analysis 목차 악성코드 유형 악성코드 분석과정 악성코드 분석 툴
악성코드 분석 (Sony pictures : diskpartmg16.exe)
3
악성코드 유형 백도어 - 공격자의 접근을 허용할 목적으로 감염
봇넷 – 백도어와 유사하지만, 감염된 모든 PC가 동일 명령어 수신 다운로더 – 다른 악성 코드를 다운로드 할 목적으로 사용 정보 유출 악성코드 – 감염 PC에서 정보 수집 후 공격자에게 전송 실행기 – 다른 악성코드를 실행하기 위한 악성 프로그램 루트킷 – 다른 코드 내에서 자신의 존재를 숨기도록 설계한 악성코드 스케어웨어 – 감염 PC 사용자가 무언가를 구매하도록 겁을 주는 악성코드 스팸 전송 악성코드 – 사용자 장비를 감염시켜 스팸을 전송하는 악성코드 웜/바이러스 – 자신을 복제해 추가로 컴퓨터를 감염시키는 악성코드
4
악성코드 분석과정 정적 분석 동적 분석 상세 분석
5
악성코드 분석과정 – 정적 분석 악성코드를 판단하는 안티 바이러스 도구 사용 악성코드를 판별하는 해시 사용
안티 바이러스 도구(백신)를 이용하여 해당 파일이 악성코드가 삽입된 파일인 지 확인. Ex) 알약, V3, 바이러스 토탈 등 악성코드를 판별하는 해시 사용 파일의 특정 값을 해시 알고리즘(SHA-1, MD5 등)을 이용하여 산출 된 해시 값이 악성코드가 삽입된 파일인지 판별 Ex) 바이러스 토탈 등 파일의 문자열, 함수, 헤더에서 대략적인 정보 수집 특정 URL, IP 등 악의적 행위와 관련된 문자열, API 등을 수집 Ex) Strings, Dependency Walker 등
6
악성코드 분석과정 – 동적 분석 악성코드를 실행하여, 행위를 관찰하여 기능 및 목적을 분석
장점 : 난독화나 패킹이 되어 있을 경우 분석이 가능 단점 : 기능 하나하나 세밀하게 알아내는데 한계 Ex) 샌드박스, Process monitor 등
7
악성코드 분석과정 – 상세 분석 고급 정적 분석, 동적 분석을 통틀어 상세 분석이라고 한다. 고급 정적 분석 고급 동적 분석
IDA Pro 등 을 사용하여 함수 발견, 스택 분석 등 고급 동적 분석 OllyDBG 등 을 사용하여 내부적으로 어떠한 일이 발생하는지 분석
8
악성코드 분석 툴 PeStudio - 1 추천 이유 : 바이러스 토탈, API, Strings 확인이 동시에 가능
파일을 올리면 기본적으로 해시 값 을 알 수 있습니다.
9
악성코드 분석 툴 PeStudio - 2 바이러스 토탈에서 분석되었던 정 보를 가져와서 볼 수 있습니다.
10
악성코드 분석 툴 PeStudio - 3 API 확인이 가능하며 악성코드에서 주로 사용되는 API인지 안티 디버깅 으로 사용되는 API인지 알 수 있습 니다.
11
악성코드 분석 툴 PeStudio - 4 프로그램 내 문자열들을 볼 수 있으 며, 악성코드에서 자주 보이는 문자 열인지 표시가 됩니다.
12
악성코드 분석 분석한 악성코드 : Sony pictures 해킹 사건 diskpartmg16.exe
분석 툴 : PeStudio, IDA Pro, OllyDBG
13
분석 과정 - 1 - PeStudio를 이용하여 해시 값(MD5, SHA1) 그리고 해당 파일의 시그너처를 알 수 있었습니다.
14
분석 과정 - 2 다음은 PeStudio에 또 다른 기능인 바이러스 토탈 검사 정보를 볼 수 있습니다.
대부분의 백신에서 바이러스로 감 지되고 있는 것을 볼 수 있습니다.
15
분석 과정 - 3 CreateFileA 파일 생성 CreateProcessA 프로세스 생성
CreateServiceA 서비스 생성 StartServiceCtrlDispatcherA 서비스 호출
16
분석 과정 - 4 처음에 메인 함수를 찾는 과정이 어 려워서 IDA Pro를 사용해 메인 함수 가 어떠한 행위를 하는지 알아보았 습니다. GetModuleFileNameA를 이용하여 현재 실행 디렉토리를 가져오고 있 다는 것을 알 수 있습니다. -I, -k –s를 이용한 여러가지 행위를 하고 있다는 것을 추가적으로 유추 가 가능했습니다.
17
분석 과정 - 5 OllyDBG로 실행 후 IDA Pro에서 봤 던 GetModuleFileNameA API 부분 입니다.
18
분석 과정 - 6 - 앞에서 봤던 주소를 보시면 해당 디 렉토리가 저장이 되고 있는 것을 볼 수 있습니다.
19
분석 과정 - 7 CreateProcessA API 부분입니다.
사진이 작아 안보이지만 “C:\Documents and Settings\Administrator\Desktop\ analysis tool\tool\malware\diskpartmg16 –i” 이러한 문자열입니다. 새로운 프로세스를 실행하며 -i 인 자를 넘겨줍니다.
20
분석 과정 - 8 인자 “–i” 실행 시 CreateServiceA API를 만나실수 있습니다.
해당 API에서는 서비스 명 “WinsSchMgmt” 표시 명 “Windows Schedule Management Service” 형 태로 서비스를 등록하는 것을 볼 수 있습니다.
21
분석 과정 - 9 - 서비스 등록 확인
22
분석 과정 - 10 인자 “-k” 실행 시 StartServiceCtrlDispatcherA API를 만나 볼 수 있습니다.
해당 API는 자세하게는 모르지만 서 비스를 호출하는 API라고 알고 있습 니다.
23
분석 과정 - 11 인자 “-s” 실행 시 어떠한 함수를 호 출하는 것을 볼 수 있습니다.
24
분석 과정 - 12 여러 API들이 보였지만 API에 대한 지식이 부족하여 자세하게 분석은 하지 못하였지만 igfxtrayex.exe라는 악성코드를 생성하는 부분을 발견 하였습니다.
25
분석 중간 결과 diskpartmg16.exe 실행 -> 인자 –i를 넘겨 실행 -> 서비스 생성 -> 인자 –k를 넘겨 실행 -> 서비스 실행 -> 인자 –s로 넘겨 실행 -> 기타 작동 및 igfxtrayex.exe 악성코드 생성 시간관계상 더 이상 분석은 하지 못하였습니다.
26
정보 출처 API정보 : MSDN 이론정보 : 실전 악성코드와 멀웨어 분석 바이러스 샘플 : 보안프로젝트 특강
Similar presentations