악성코드 분석 all_mind@naver.com Malware Analysis 악성코드 분석 all_mind@naver.com.

Slides:



Advertisements
Similar presentations
ⓒ 2015 NHN Entertainment Corp. Django 로 만드는 초간단 블로그 시스템운영팀 김영태 개발환경 구축.
Advertisements

출석수업 과제 – 총 5문제, 10월 25일 제출 정보통계학과 장영재 교수.
Format String Attack! 포맷 스트링 공격 경일대학교 사이버보안학과 학년 남주호.
컴퓨터와 인터넷.
1. 사용자 PC 접속제한 현상 발생 : 백신 미사용의 경우

2장. 프로그램의 기본 구성. 2장. 프로그램의 기본 구성 2-1"Hello, World!" 들여다 보기 /* Hello.c */ #include int main(void) { printf("Hello, World! \n"); return 0;
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
Image & Video processing
1. 신뢰할 수 있는 싸이트 등록 인터넷 익스플로러 실행 후 실행
Power Java 제3장 이클립스 사용하기.
컴퓨터 프로그래밍 기초 [Final] 기말고사
Power Java 제2장 자바 개발 도구.
Outlook Express 메일 백업 및 복원가이드
CI서버 구축 목차 CI(Continuous Integration) 개요 CI 설치, 환경 구축 maven build
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
ANSYS17.2 Student 제품 무료 다운로드
Windows 8 Ksystem G&I 설치.
한국골프대학 종합정보시스템 Windows Vista 사용자를 위한 Component 설치안내서
한국골프대학 종합정보시스템 Windows 7 사용자를 위한 Component 설치안내서
NCS 학사운영 시스템 Guide.
Matasploit의 소개와 사용법
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
C / C++ Programming in multi platform
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
17강. 데이터 베이스 - I 데이터 베이스의 개요 Oracle 설치 기본적인 SQL문 익히기
WinCE Device Driver 실습 #3
WinCE Device Driver 실습 #2
Cross Compiler 설치.
Sungkyunkwan University OS Project Dongkun Shin
FTP 프로그램의 활용 FTP 프로그램의 용도 인터넷 공간에 홈페이지 파일을 업로드할 때 필요
Malware (Sample) Static/Dynamic Analysis (no reversing)
10강. JSP 본격적으로 살펴보기-II 스크립트릿, 선언, 표현식 지시자 주석 Lecturer Kim Myoung-Ho
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
시스템 인터페이스 Lab3 Unix 사용법 실습.
TSRM 사용시 PC 기본환경설정 1. 로그인이 안되는 문제해결 1) Windows8 이상일때
29강 JAVA 스레드 - 스레드란? - 멀티스레드 문법 - synchronized Lecturer Kim Myoung-Ho
Device Driver 임베디드 시스템 I.
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
Wi-Fi 취약점 분석 본 프로젝트는 Wi-Fi 환경에서의 취약점 분석을 위한 프로젝트로 다양한 공격방법을 테스트
툴 설치 가이드 PrimeTime SynopsysMentor.
2 보안 1 도구 윈도우 XP > 온밀크 프로그램 설치 장애 (보안 설정) / 품목추가 깨질 때 장애증상
Adobe 제품 다운로드 및 설치 방법 안내 Adobe Creative Cloud Adobe License 권한을 받으신 분
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
ASP.NET AJAX / AJAX Control Toolkit 응용 2008 컴퓨터공학실험( I )
MAIL CLIENT 김창우 윤성훈 이경재.
BI MATRIX 기술 문서 5.0 기술지원 프로세스.
데이터 베이스 DB2 관계형 데이터 모델 권준영.
법령안편집기 연결버튼 표시가 안 될 경우 정부입법지원센터( 입안 및 심사안을 진행시
PMIS 서버 설정 환경설정 작성자 : 배경환.
14강. 세션 세션이란? 세션 문법 Lecturer Kim Myoung-Ho Nickname 블스
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
( Windows Service Application Debugging )
디버깅 관련 옵션 실습해보기 발표 : 2008년 5월 19일 2분반 정 훈 승
KISTI Supercomputing Center 명훈주
13주 실습강의 학기, 소프트웨어 설계 및 실험(Ⅰ).
기초C언어 제2주 실습 프로그래밍의 개념, 프로그램 작성 과정 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원
MotionSolve Contact 해석을 위해 Mesh를 조밀하게 짜서 해석하였지만
채팅 및 파일전송 프로그램 권 경 곤 김 창 년.
Wake On Lan 발표자: 김 홍 기 김홍기 조성오
방승욱 여은수 민세훈 해킹.
어드민 로그인 ID : admin 비밀번호 : 서보테크 1. 제품소개 등록 - MISUBISHI
Homework #7 (1/3) 1. 다음 순서에 따라 수행하고, 그 과정의 화면을 캡쳐한다.
CODE INJECTION 시스템B 김한슬.
7 생성자 함수.
6 객체.
SafeMSR 설정.
XSS 취약점을 이용한 웹메일 해킹
Presentation transcript:

악성코드 분석 all_mind@naver.com Malware Analysis 악성코드 분석 all_mind@naver.com

Malware Analysis 목차 악성코드 유형 악성코드 분석과정 악성코드 분석 툴 악성코드 분석 (Sony pictures : diskpartmg16.exe)

악성코드 유형 백도어 - 공격자의 접근을 허용할 목적으로 감염 봇넷 – 백도어와 유사하지만, 감염된 모든 PC가 동일 명령어 수신 다운로더 – 다른 악성 코드를 다운로드 할 목적으로 사용 정보 유출 악성코드 – 감염 PC에서 정보 수집 후 공격자에게 전송 실행기 – 다른 악성코드를 실행하기 위한 악성 프로그램 루트킷 – 다른 코드 내에서 자신의 존재를 숨기도록 설계한 악성코드 스케어웨어 – 감염 PC 사용자가 무언가를 구매하도록 겁을 주는 악성코드 스팸 전송 악성코드 – 사용자 장비를 감염시켜 스팸을 전송하는 악성코드 웜/바이러스 – 자신을 복제해 추가로 컴퓨터를 감염시키는 악성코드

악성코드 분석과정 정적 분석 동적 분석 상세 분석

악성코드 분석과정 – 정적 분석 악성코드를 판단하는 안티 바이러스 도구 사용 악성코드를 판별하는 해시 사용 안티 바이러스 도구(백신)를 이용하여 해당 파일이 악성코드가 삽입된 파일인 지 확인. Ex) 알약, V3, 바이러스 토탈 등 악성코드를 판별하는 해시 사용 파일의 특정 값을 해시 알고리즘(SHA-1, MD5 등)을 이용하여 산출 된 해시 값이 악성코드가 삽입된 파일인지 판별 Ex) 바이러스 토탈 등 파일의 문자열, 함수, 헤더에서 대략적인 정보 수집 특정 URL, IP 등 악의적 행위와 관련된 문자열, API 등을 수집 Ex) Strings, Dependency Walker 등

악성코드 분석과정 – 동적 분석 악성코드를 실행하여, 행위를 관찰하여 기능 및 목적을 분석 장점 : 난독화나 패킹이 되어 있을 경우 분석이 가능 단점 : 기능 하나하나 세밀하게 알아내는데 한계 Ex) 샌드박스, Process monitor 등

악성코드 분석과정 – 상세 분석 고급 정적 분석, 동적 분석을 통틀어 상세 분석이라고 한다. 고급 정적 분석 고급 동적 분석 IDA Pro 등 을 사용하여 함수 발견, 스택 분석 등 고급 동적 분석 OllyDBG 등 을 사용하여 내부적으로 어떠한 일이 발생하는지 분석

악성코드 분석 툴 PeStudio - 1 추천 이유 : 바이러스 토탈, API, Strings 확인이 동시에 가능 파일을 올리면 기본적으로 해시 값 을 알 수 있습니다.

악성코드 분석 툴 PeStudio - 2 바이러스 토탈에서 분석되었던 정 보를 가져와서 볼 수 있습니다.

악성코드 분석 툴 PeStudio - 3 API 확인이 가능하며 악성코드에서 주로 사용되는 API인지 안티 디버깅 으로 사용되는 API인지 알 수 있습 니다.

악성코드 분석 툴 PeStudio - 4 프로그램 내 문자열들을 볼 수 있으 며, 악성코드에서 자주 보이는 문자 열인지 표시가 됩니다.

악성코드 분석 분석한 악성코드 : Sony pictures 해킹 사건 diskpartmg16.exe 분석 툴 : PeStudio, IDA Pro, OllyDBG

분석 과정 - 1 - PeStudio를 이용하여 해시 값(MD5, SHA1) 그리고 해당 파일의 시그너처를 알 수 있었습니다.

분석 과정 - 2 다음은 PeStudio에 또 다른 기능인 바이러스 토탈 검사 정보를 볼 수 있습니다. 대부분의 백신에서 바이러스로 감 지되고 있는 것을 볼 수 있습니다.

분석 과정 - 3 CreateFileA 파일 생성 CreateProcessA 프로세스 생성 CreateServiceA 서비스 생성 StartServiceCtrlDispatcherA 서비스 호출

분석 과정 - 4 처음에 메인 함수를 찾는 과정이 어 려워서 IDA Pro를 사용해 메인 함수 가 어떠한 행위를 하는지 알아보았 습니다. GetModuleFileNameA를 이용하여 현재 실행 디렉토리를 가져오고 있 다는 것을 알 수 있습니다. -I, -k –s를 이용한 여러가지 행위를 하고 있다는 것을 추가적으로 유추 가 가능했습니다.

분석 과정 - 5 OllyDBG로 실행 후 IDA Pro에서 봤 던 GetModuleFileNameA API 부분 입니다.

분석 과정 - 6 - 앞에서 봤던 주소를 보시면 해당 디 렉토리가 저장이 되고 있는 것을 볼 수 있습니다.

분석 과정 - 7 CreateProcessA API 부분입니다. 사진이 작아 안보이지만 “C:\Documents and Settings\Administrator\Desktop\ analysis tool\tool\malware\diskpartmg16 –i” 이러한 문자열입니다. 새로운 프로세스를 실행하며 -i 인 자를 넘겨줍니다.

분석 과정 - 8 인자 “–i” 실행 시 CreateServiceA API를 만나실수 있습니다. 해당 API에서는 서비스 명 “WinsSchMgmt” 표시 명 “Windows Schedule Management Service” 형 태로 서비스를 등록하는 것을 볼 수 있습니다.

분석 과정 - 9 - 서비스 등록 확인

분석 과정 - 10 인자 “-k” 실행 시 StartServiceCtrlDispatcherA API를 만나 볼 수 있습니다. 해당 API는 자세하게는 모르지만 서 비스를 호출하는 API라고 알고 있습 니다.

분석 과정 - 11 인자 “-s” 실행 시 어떠한 함수를 호 출하는 것을 볼 수 있습니다.

분석 과정 - 12 여러 API들이 보였지만 API에 대한 지식이 부족하여 자세하게 분석은 하지 못하였지만 igfxtrayex.exe라는 악성코드를 생성하는 부분을 발견 하였습니다.

분석 중간 결과 diskpartmg16.exe 실행 -> 인자 –i를 넘겨 실행 -> 서비스 생성 -> 인자 –k를 넘겨 실행 -> 서비스 실행 -> 인자 –s로 넘겨 실행 -> 기타 작동 및 igfxtrayex.exe 악성코드 생성 시간관계상 더 이상 분석은 하지 못하였습니다.

정보 출처 API정보 : MSDN 이론정보 : 실전 악성코드와 멀웨어 분석 바이러스 샘플 : 보안프로젝트 특강