SlideShare une entreprise Scribd logo
1  sur  23
Télécharger pour lire hors ligne
FORENSIC)INSIGHT;)
DIGITAL)FORENSICS)COMMUNITY)IN)KOREA
forensic.n0fate.com
DTrace를 이용한 악성코드 분석
Malware analysis using DynamicTrace Framework
forensicinsight.org
순서
•DTrace 소개
•DTrace 구성
•관련 스크립트 정리
•악성코드 동적 분석 예제
2
forensicinsight.org
DTrace
•포괄적인 동적 추적 프레임워크
•솔라리스 운영체제를 위해 최초 개발함
•커널 코드에 통합되어 있음
•지원 운영체제
•Solaris 10, Mac OS X 10.5, FreeBSD 7.1,
NetBSD, Linux Kernel(?)
3
forensicinsight.org
DTrace
4
Reference : Brendan gregg, DTrace
forensicinsight.org
DTrace
$ dtrace	
Usage: dtrace [-aACeFHlqSvVwZ] [-arch i386|x86_64] [-b bufsz] [-c cmd] [-D name[=def]]	
	 [-I path] [-L path] [-o output] [-p pid] [-s script] [-U name]	
	 [-x opt[=val]]
$ sudo dtrace -n ‘syscall::open:entry /execname == “Safari”/’	
dtrace: description 'syscall::open:entry' matched 1 probe	
CPU ID FUNCTION:NAME	
7 159 open:entry 	
7 159 open:entry
Provider Function Name Predicate
5
forensicinsight.org
용어정리
•Provider : 함수 클래스와 유사, syscall의 경우 유닉스
시스템 콜을 의미, 특정 프로세스 ID도 될 수 있으며,
Objective-C의 클래스도 가능
•Module : Provider를 기준으로 정해짐. 모듈이 없다면
생략할 수 있음. 동적 라이브러리(.dylib)도 사용 가능
•Function : 모듈 또는 Provider 내의 함수
•예를 들면 syscall의 open
•Name : Provider에 의해 정해지며, 보통 특정 함수의
실행 시점인 entry와 종료 시점인 return을 가짐
•DTrace 자체의 생성자/소멸자인 BEGIN/END 가능
6
forensicinsight.org
용어정리
•Predicate// : 일치 여부를 판단(if)하는 정보
•actions{} : probe에 해당하는 데이터가
predicate를 통과하면 실행
•probe : 동작 중인 소프트웨어에 동적으로
instrumentation 포인트 추가하는 지점
•fire : probe를 활성화하고 코드 흐름에서
instrumented probe point 지점에 도달하면 발생
7
forensicinsight.org
D Script
•DTrace 코드를 스크립트화 시킬 수 있음
•커맨드라인은 비효율적
•D Language로 작성
•-s 옵션으로 사용 가능
8
forensicinsight.org
D Script
$ cat open.d 	
#!/usr/sbin/dtrace -s	
!
syscall::open:entry	
/execname == "Safari"/	
{	
	 printf("open %s filen", copyinstr(arg0));	
}	
$ chmod 755 open.d	
$ sudo ./open.d 	
dtrace: script './open.d' matched 1 probe	
CPU ID FUNCTION:NAME	
0 159 open:entry open /Library/Internet Plug-Ins/QuickTime
Plugin.plugin/Contents/Resources/English.lproj/InfoPlist.strings file	
!
0 159 open:entry open /Users/chainbreaker/Library/Preferences/
com.apple.quicktime.plugin.preferences.plist file	
!
0 159 open:entry open /Library/Internet Plug-Ins/
SharePointBrowserPlugin.plugin/Contents/PkgInfo file
Actions
9
forensicinsight.org
추천 스크립트
이름 내용 기본 탑재
execsnoop exec로 실행되는 프로세스 추적 O
iosnoop I/O 추적 O
opensnoop 오픈되는 파일 추적 O
rwsnoop 읽기/쓰기 추적 O
newproc.d 새로 생성되는 프로세스(인자
포함) 추적
O
soconnect_mac.d 네트워크 연결 추적 X
maclife.d 파일 생성/삭제 추적 X
10
forensicinsight.org
분석 예제!
(Reference : Digitally signed data-stealing malware targets Mac users in
"undelivered courier item" attack)
•OSX/Laoshu-A
•이메일을 이용한 Spear-phising attack
11
forensicinsight.org
분석 예제!
(Reference : Digitally signed data-stealing malware targets Mac users in
"undelivered courier item" attack)
•링크를 통해 zip 파일 다운로드
•Safari의 경우, 알려진 압축 파일 자동 해제
•겉으로 보기에는 PDF 파일
•알려진 확장자 자동 숨김을 이용
•아이콘을 PDF로 설정
•디지털 서명되어 있음
12
forensicinsight.org
분석 예제!
(Reference : Digitally signed data-stealing malware targets Mac users in
"undelivered courier item" attack)
13
forensicinsight.org
분석 예제!
(Reference : Digitally signed data-stealing malware targets Mac users in
"undelivered courier item" attack)
14
forensicinsight.org
분석 예제!
(Reference : Digitally signed data-stealing malware targets Mac users in
"undelivered courier item" attack)
•주요 기능
•문서 파일 검색 및 압축
•(DOC,XLS,PPT,DOCX,XLSX,PPTX)
•특정 서버에 업로드
•새로운 파일 다운로드
•커맨드 명령어 실행
•새로운 파일 다운로드 : DTrace 분석 예제
15
forensicinsight.org
분석 예제
•OSX/Laoshu-A에서 다운로드하는 악성코드
•MD5(OSX_Update.app/Contents/MacOS/
worty) = ea2045d1344719d95f85ee8a2fcbe0a7
•주요 기능 : 화면을 캡쳐하여 특정 URL에 업로드
•상세 분석 자료 : http://
forensic.n0fate.com/?p=706
16
forensicinsight.org
분석 예제
•모든 문자열을 암호화한 후 Base64로 인코딩
•실행 시점에 특정 클래스의 함수로 복호화
17
forensicinsight.org
분석 예제
•cry class : 암복호화
•fi : Base64 decoding
•chi : Base64 encoding
•end : DES encryption
•ded : DES decryption
•CCCryptor : Common
Cryptographic Algorithm
Interfaces
18
forensicinsight.org
분석 예제
•추적에 필요한 것
•Provider : Process ID
•Module : libcommonCrypto.dylib
•Function : CCCrypt
•Name : entry or return
•함수 인자
19
forensicinsight.org
분석 예제
/* written by n0fate	
* dtrace -q -s cccrypt.d PID	
*/	
pid$1:libcommonCrypto.dylib:CCCrypt:entry	
/execname == "worty"/	
{	
	 printf("%d %d %d key:%016llx size:%d iv:%016llx datainput:%x, dataoutput:%x", arg0,
arg1, arg2, *(unsigned long long *)copyin(arg3, arg4), arg4, *(unsigned long long
*)copyin(arg5, 8), arg6, arg8);	
	 self->dataoutput = arg8;	
}	
!
pid$1:libcommonCrypto.dylib:CCCrypt:return	
/execname == "worty"/	
{	
	 printf("(%s)n", copyinstr(self->dataoutput, *(unsigned int*)copyin(arg9, 4)));	
	 ustack(5,0);	
}
20
forensicinsight.org
시연
21
forensicinsight.org
참고 문서
•Brendan Gregg, dtrace.org
•SourceFire Vulnerability Research Team,
http://vrt-blog.snort.org/2014/03/
osxtrojanleverage-breakdown-using-
dtrace.html.
•Sophos, http://nakedsecurity.sophos.com/
2014/01/21/data-stealing-malware-targets-
mac-users-in-undelivered-courier-item-
attack/.
22
forensicinsight.org
Q & A
n0fate@n0fate.com
23

Contenu connexe

Tendances

(141031) #fitalk plaso 슈퍼 타임라인 분석 도구 활용 방안
(141031) #fitalk   plaso 슈퍼 타임라인 분석 도구 활용 방안(141031) #fitalk   plaso 슈퍼 타임라인 분석 도구 활용 방안
(141031) #fitalk plaso 슈퍼 타임라인 분석 도구 활용 방안INSIGHT FORENSIC
 
(FICON2015) #3 어떻게 들어왔는가?
(FICON2015) #3 어떻게 들어왔는가?(FICON2015) #3 어떻게 들어왔는가?
(FICON2015) #3 어떻게 들어왔는가?plainbit
 
(Fios#02) 3. 빠르게 끝내는 악성코드 분석과 대응
(Fios#02) 3. 빠르게 끝내는 악성코드 분석과 대응(Fios#02) 3. 빠르게 끝내는 악성코드 분석과 대응
(Fios#02) 3. 빠르게 끝내는 악성코드 분석과 대응INSIGHT FORENSIC
 
(Ficon2016) #3 분석가와 관리자가 바라본 랜섬웨어
(Ficon2016) #3 분석가와 관리자가 바라본 랜섬웨어(Ficon2016) #3 분석가와 관리자가 바라본 랜섬웨어
(Ficon2016) #3 분석가와 관리자가 바라본 랜섬웨어INSIGHT FORENSIC
 
3. 악성코드 분석 사례
3. 악성코드 분석 사례3. 악성코드 분석 사례
3. 악성코드 분석 사례Youngjun Chang
 
2.악성코드와 분석 방안
2.악성코드와 분석 방안2.악성코드와 분석 방안
2.악성코드와 분석 방안Youngjun Chang
 
(130511) #fitalk utilization of ioc, ioaf and sig base
(130511) #fitalk   utilization of ioc, ioaf and sig base(130511) #fitalk   utilization of ioc, ioaf and sig base
(130511) #fitalk utilization of ioc, ioaf and sig baseINSIGHT FORENSIC
 
(130119) #fitalk sql server forensics
(130119) #fitalk   sql server forensics(130119) #fitalk   sql server forensics
(130119) #fitalk sql server forensicsINSIGHT FORENSIC
 
(130316) #fitalk trends in d forensics (feb, 2013)
(130316) #fitalk   trends in d forensics (feb, 2013)(130316) #fitalk   trends in d forensics (feb, 2013)
(130316) #fitalk trends in d forensics (feb, 2013)INSIGHT FORENSIC
 
(130622) #fitalk the stealing windows password
(130622) #fitalk   the stealing windows password(130622) #fitalk   the stealing windows password
(130622) #fitalk the stealing windows passwordINSIGHT FORENSIC
 
2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법Youngjun Chang
 
3.ahn report를 이용한 악성코드 대응
3.ahn report를 이용한 악성코드 대응3.ahn report를 이용한 악성코드 대응
3.ahn report를 이용한 악성코드 대응Youngjun Chang
 
2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법Youngjun Chang
 
3. 악성코드 분석 사례
3. 악성코드 분석 사례3. 악성코드 분석 사례
3. 악성코드 분석 사례Youngjun Chang
 
[2011 CodeEngn Conference 05] daly25 - 파일바이러스 분석 및 치료로직 개발
[2011 CodeEngn Conference 05] daly25 - 파일바이러스 분석 및 치료로직 개발[2011 CodeEngn Conference 05] daly25 - 파일바이러스 분석 및 치료로직 개발
[2011 CodeEngn Conference 05] daly25 - 파일바이러스 분석 및 치료로직 개발GangSeok Lee
 
Memory forensics with volatility
Memory forensics with volatilityMemory forensics with volatility
Memory forensics with volatilityYoungjun Chang
 
[2011 CodeEngn Conference 05] 쿨캣 - virse program messge DOS to Win
[2011 CodeEngn Conference 05] 쿨캣 - virse program messge DOS to Win[2011 CodeEngn Conference 05] 쿨캣 - virse program messge DOS to Win
[2011 CodeEngn Conference 05] 쿨캣 - virse program messge DOS to WinGangSeok Lee
 
1. 악성코드 진단 기법 개론
1. 악성코드 진단 기법 개론1. 악성코드 진단 기법 개론
1. 악성코드 진단 기법 개론Youngjun Chang
 
2. windows system과 file format
2. windows system과 file format2. windows system과 file format
2. windows system과 file formatYoungjun Chang
 
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KOGangSeok Lee
 

Tendances (20)

(141031) #fitalk plaso 슈퍼 타임라인 분석 도구 활용 방안
(141031) #fitalk   plaso 슈퍼 타임라인 분석 도구 활용 방안(141031) #fitalk   plaso 슈퍼 타임라인 분석 도구 활용 방안
(141031) #fitalk plaso 슈퍼 타임라인 분석 도구 활용 방안
 
(FICON2015) #3 어떻게 들어왔는가?
(FICON2015) #3 어떻게 들어왔는가?(FICON2015) #3 어떻게 들어왔는가?
(FICON2015) #3 어떻게 들어왔는가?
 
(Fios#02) 3. 빠르게 끝내는 악성코드 분석과 대응
(Fios#02) 3. 빠르게 끝내는 악성코드 분석과 대응(Fios#02) 3. 빠르게 끝내는 악성코드 분석과 대응
(Fios#02) 3. 빠르게 끝내는 악성코드 분석과 대응
 
(Ficon2016) #3 분석가와 관리자가 바라본 랜섬웨어
(Ficon2016) #3 분석가와 관리자가 바라본 랜섬웨어(Ficon2016) #3 분석가와 관리자가 바라본 랜섬웨어
(Ficon2016) #3 분석가와 관리자가 바라본 랜섬웨어
 
3. 악성코드 분석 사례
3. 악성코드 분석 사례3. 악성코드 분석 사례
3. 악성코드 분석 사례
 
2.악성코드와 분석 방안
2.악성코드와 분석 방안2.악성코드와 분석 방안
2.악성코드와 분석 방안
 
(130511) #fitalk utilization of ioc, ioaf and sig base
(130511) #fitalk   utilization of ioc, ioaf and sig base(130511) #fitalk   utilization of ioc, ioaf and sig base
(130511) #fitalk utilization of ioc, ioaf and sig base
 
(130119) #fitalk sql server forensics
(130119) #fitalk   sql server forensics(130119) #fitalk   sql server forensics
(130119) #fitalk sql server forensics
 
(130316) #fitalk trends in d forensics (feb, 2013)
(130316) #fitalk   trends in d forensics (feb, 2013)(130316) #fitalk   trends in d forensics (feb, 2013)
(130316) #fitalk trends in d forensics (feb, 2013)
 
(130622) #fitalk the stealing windows password
(130622) #fitalk   the stealing windows password(130622) #fitalk   the stealing windows password
(130622) #fitalk the stealing windows password
 
2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법
 
3.ahn report를 이용한 악성코드 대응
3.ahn report를 이용한 악성코드 대응3.ahn report를 이용한 악성코드 대응
3.ahn report를 이용한 악성코드 대응
 
2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법2. 악성코드 분석 방법론과 기법
2. 악성코드 분석 방법론과 기법
 
3. 악성코드 분석 사례
3. 악성코드 분석 사례3. 악성코드 분석 사례
3. 악성코드 분석 사례
 
[2011 CodeEngn Conference 05] daly25 - 파일바이러스 분석 및 치료로직 개발
[2011 CodeEngn Conference 05] daly25 - 파일바이러스 분석 및 치료로직 개발[2011 CodeEngn Conference 05] daly25 - 파일바이러스 분석 및 치료로직 개발
[2011 CodeEngn Conference 05] daly25 - 파일바이러스 분석 및 치료로직 개발
 
Memory forensics with volatility
Memory forensics with volatilityMemory forensics with volatility
Memory forensics with volatility
 
[2011 CodeEngn Conference 05] 쿨캣 - virse program messge DOS to Win
[2011 CodeEngn Conference 05] 쿨캣 - virse program messge DOS to Win[2011 CodeEngn Conference 05] 쿨캣 - virse program messge DOS to Win
[2011 CodeEngn Conference 05] 쿨캣 - virse program messge DOS to Win
 
1. 악성코드 진단 기법 개론
1. 악성코드 진단 기법 개론1. 악성코드 진단 기법 개론
1. 악성코드 진단 기법 개론
 
2. windows system과 file format
2. windows system과 file format2. windows system과 file format
2. windows system과 file format
 
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO
[2014 CodeEngn Conference 11] 김호빈 - Android Bootkit Analysis KO
 

Similaire à (140407) #fitalk d trace를 이용한 악성코드 동적 분석

[2014 CodeEngn Conference 11] 이경식 - 동적 추적 프레임워크를 이용한 OS X 바이너리 분석
[2014 CodeEngn Conference 11] 이경식 - 동적 추적 프레임워크를 이용한 OS X 바이너리 분석[2014 CodeEngn Conference 11] 이경식 - 동적 추적 프레임워크를 이용한 OS X 바이너리 분석
[2014 CodeEngn Conference 11] 이경식 - 동적 추적 프레임워크를 이용한 OS X 바이너리 분석GangSeok Lee
 
[PyCon KR 2018] 진실은 언제나 하나! : Python으로 만나보는 Digital Forensic
[PyCon KR 2018] 진실은 언제나 하나! : Python으로 만나보는 Digital Forensic[PyCon KR 2018] 진실은 언제나 하나! : Python으로 만나보는 Digital Forensic
[PyCon KR 2018] 진실은 언제나 하나! : Python으로 만나보는 Digital ForensicDonghyun Kim
 
IoT with Raspberry Pi + Node JS - Chapter 1
IoT with Raspberry Pi + Node JS - Chapter 1IoT with Raspberry Pi + Node JS - Chapter 1
IoT with Raspberry Pi + Node JS - Chapter 1Park Jonggun
 
악성코드와 분석 방안
악성코드와 분석 방안악성코드와 분석 방안
악성코드와 분석 방안Youngjun Chang
 
악성코드와 분석 방안
악성코드와 분석 방안악성코드와 분석 방안
악성코드와 분석 방안Youngjun Chang
 
16.02.27 해킹캠프 오픈 소스 최우석
16.02.27 해킹캠프 오픈 소스 최우석16.02.27 해킹캠프 오픈 소스 최우석
16.02.27 해킹캠프 오픈 소스 최우석KISEC
 
16.02.27 해킹캠프 오픈_소스_최우석_ver0.3
16.02.27 해킹캠프 오픈_소스_최우석_ver0.316.02.27 해킹캠프 오픈_소스_최우석_ver0.3
16.02.27 해킹캠프 오픈_소스_최우석_ver0.3KISEC
 
랜섬웨어 엔딩 #2016 1Q
랜섬웨어 엔딩 #2016 1Q랜섬웨어 엔딩 #2016 1Q
랜섬웨어 엔딩 #2016 1QNSHC-RedAlert
 
(130608) #fitalk trends in d forensics (may, 2013)
(130608) #fitalk   trends in d forensics (may, 2013)(130608) #fitalk   trends in d forensics (may, 2013)
(130608) #fitalk trends in d forensics (may, 2013)INSIGHT FORENSIC
 
리눅스 커널 기초 태스크관리
리눅스 커널 기초 태스크관리리눅스 커널 기초 태스크관리
리눅스 커널 기초 태스크관리Seungyong Lee
 
High performance networking in chrome
High performance networking in chromeHigh performance networking in chrome
High performance networking in chromeJi Hun Kim
 
(Fios#02) 1. 랜섬웨어 연대기
(Fios#02) 1. 랜섬웨어 연대기(Fios#02) 1. 랜섬웨어 연대기
(Fios#02) 1. 랜섬웨어 연대기INSIGHT FORENSIC
 
20171212 [ai times] 'ai' 인공지능-ai security 개발을 위한 시도 - 1 (nlp 모델 테스트 2.2.11)...
20171212 [ai times] 'ai'   인공지능-ai security 개발을 위한 시도 - 1 (nlp 모델 테스트 2.2.11)...20171212 [ai times] 'ai'   인공지능-ai security 개발을 위한 시도 - 1 (nlp 모델 테스트 2.2.11)...
20171212 [ai times] 'ai' 인공지능-ai security 개발을 위한 시도 - 1 (nlp 모델 테스트 2.2.11)...jason min
 
보안 위협 형태와 악성코드 분석 기법
보안 위협 형태와 악성코드 분석 기법보안 위협 형태와 악성코드 분석 기법
보안 위협 형태와 악성코드 분석 기법Youngjun Chang
 
kgc2014 LINE Rangers/Stage 크래시 및 어뷰징 대응
kgc2014 LINE Rangers/Stage크래시 및 어뷰징 대응kgc2014 LINE Rangers/Stage크래시 및 어뷰징 대응
kgc2014 LINE Rangers/Stage 크래시 및 어뷰징 대응sewoon Nam
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법Youngjun Chang
 
letswift22_우당탕탕 확장 프로그램(이다혜 light).pdf
letswift22_우당탕탕 확장 프로그램(이다혜 light).pdfletswift22_우당탕탕 확장 프로그램(이다혜 light).pdf
letswift22_우당탕탕 확장 프로그램(이다혜 light).pdfLee Dahae
 
(130928) #fitalk cloud storage forensics - dropbox
(130928) #fitalk   cloud storage forensics - dropbox(130928) #fitalk   cloud storage forensics - dropbox
(130928) #fitalk cloud storage forensics - dropboxINSIGHT FORENSIC
 

Similaire à (140407) #fitalk d trace를 이용한 악성코드 동적 분석 (20)

[2014 CodeEngn Conference 11] 이경식 - 동적 추적 프레임워크를 이용한 OS X 바이너리 분석
[2014 CodeEngn Conference 11] 이경식 - 동적 추적 프레임워크를 이용한 OS X 바이너리 분석[2014 CodeEngn Conference 11] 이경식 - 동적 추적 프레임워크를 이용한 OS X 바이너리 분석
[2014 CodeEngn Conference 11] 이경식 - 동적 추적 프레임워크를 이용한 OS X 바이너리 분석
 
[PyCon KR 2018] 진실은 언제나 하나! : Python으로 만나보는 Digital Forensic
[PyCon KR 2018] 진실은 언제나 하나! : Python으로 만나보는 Digital Forensic[PyCon KR 2018] 진실은 언제나 하나! : Python으로 만나보는 Digital Forensic
[PyCon KR 2018] 진실은 언제나 하나! : Python으로 만나보는 Digital Forensic
 
IoT with Raspberry Pi + Node JS - Chapter 1
IoT with Raspberry Pi + Node JS - Chapter 1IoT with Raspberry Pi + Node JS - Chapter 1
IoT with Raspberry Pi + Node JS - Chapter 1
 
악성코드와 분석 방안
악성코드와 분석 방안악성코드와 분석 방안
악성코드와 분석 방안
 
악성코드와 분석 방안
악성코드와 분석 방안악성코드와 분석 방안
악성코드와 분석 방안
 
16.02.27 해킹캠프 오픈 소스 최우석
16.02.27 해킹캠프 오픈 소스 최우석16.02.27 해킹캠프 오픈 소스 최우석
16.02.27 해킹캠프 오픈 소스 최우석
 
16.02.27 해킹캠프 오픈_소스_최우석_ver0.3
16.02.27 해킹캠프 오픈_소스_최우석_ver0.316.02.27 해킹캠프 오픈_소스_최우석_ver0.3
16.02.27 해킹캠프 오픈_소스_최우석_ver0.3
 
랜섬웨어 엔딩 #2016 1Q
랜섬웨어 엔딩 #2016 1Q랜섬웨어 엔딩 #2016 1Q
랜섬웨어 엔딩 #2016 1Q
 
(130608) #fitalk trends in d forensics (may, 2013)
(130608) #fitalk   trends in d forensics (may, 2013)(130608) #fitalk   trends in d forensics (may, 2013)
(130608) #fitalk trends in d forensics (may, 2013)
 
리눅스 커널 기초 태스크관리
리눅스 커널 기초 태스크관리리눅스 커널 기초 태스크관리
리눅스 커널 기초 태스크관리
 
High performance networking in chrome
High performance networking in chromeHigh performance networking in chrome
High performance networking in chrome
 
Ddd
DddDdd
Ddd
 
dddd
dddddddd
dddd
 
(Fios#02) 1. 랜섬웨어 연대기
(Fios#02) 1. 랜섬웨어 연대기(Fios#02) 1. 랜섬웨어 연대기
(Fios#02) 1. 랜섬웨어 연대기
 
20171212 [ai times] 'ai' 인공지능-ai security 개발을 위한 시도 - 1 (nlp 모델 테스트 2.2.11)...
20171212 [ai times] 'ai'   인공지능-ai security 개발을 위한 시도 - 1 (nlp 모델 테스트 2.2.11)...20171212 [ai times] 'ai'   인공지능-ai security 개발을 위한 시도 - 1 (nlp 모델 테스트 2.2.11)...
20171212 [ai times] 'ai' 인공지능-ai security 개발을 위한 시도 - 1 (nlp 모델 테스트 2.2.11)...
 
보안 위협 형태와 악성코드 분석 기법
보안 위협 형태와 악성코드 분석 기법보안 위협 형태와 악성코드 분석 기법
보안 위협 형태와 악성코드 분석 기법
 
kgc2014 LINE Rangers/Stage 크래시 및 어뷰징 대응
kgc2014 LINE Rangers/Stage크래시 및 어뷰징 대응kgc2014 LINE Rangers/Stage크래시 및 어뷰징 대응
kgc2014 LINE Rangers/Stage 크래시 및 어뷰징 대응
 
보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법보안 위협과 악성코드 분석 기법
보안 위협과 악성코드 분석 기법
 
letswift22_우당탕탕 확장 프로그램(이다혜 light).pdf
letswift22_우당탕탕 확장 프로그램(이다혜 light).pdfletswift22_우당탕탕 확장 프로그램(이다혜 light).pdf
letswift22_우당탕탕 확장 프로그램(이다혜 light).pdf
 
(130928) #fitalk cloud storage forensics - dropbox
(130928) #fitalk   cloud storage forensics - dropbox(130928) #fitalk   cloud storage forensics - dropbox
(130928) #fitalk cloud storage forensics - dropbox
 

Plus de INSIGHT FORENSIC

(150124) #fitalk advanced $usn jrnl forensics (korean)
(150124) #fitalk   advanced $usn jrnl forensics (korean)(150124) #fitalk   advanced $usn jrnl forensics (korean)
(150124) #fitalk advanced $usn jrnl forensics (korean)INSIGHT FORENSIC
 
(150124) #fitalk advanced $usn jrnl forensics (english)
(150124) #fitalk   advanced $usn jrnl forensics (english)(150124) #fitalk   advanced $usn jrnl forensics (english)
(150124) #fitalk advanced $usn jrnl forensics (english)INSIGHT FORENSIC
 
(140118) #fitalk 2013 e-discovery trend
(140118) #fitalk   2013 e-discovery trend(140118) #fitalk   2013 e-discovery trend
(140118) #fitalk 2013 e-discovery trendINSIGHT FORENSIC
 
(141031) #fitalk os x yosemite artifacts
(141031) #fitalk   os x yosemite artifacts(141031) #fitalk   os x yosemite artifacts
(141031) #fitalk os x yosemite artifactsINSIGHT FORENSIC
 
(140716) #fitalk 전자금융사고에서의 디지털 포렌식
(140716) #fitalk   전자금융사고에서의 디지털 포렌식(140716) #fitalk   전자금융사고에서의 디지털 포렌식
(140716) #fitalk 전자금융사고에서의 디지털 포렌식INSIGHT FORENSIC
 
(140716) #fitalk digital evidence from android-based smartwatch
(140716) #fitalk   digital evidence from android-based smartwatch(140716) #fitalk   digital evidence from android-based smartwatch
(140716) #fitalk digital evidence from android-based smartwatchINSIGHT FORENSIC
 
(140625) #fitalk sq lite 소개와 구조 분석
(140625) #fitalk   sq lite 소개와 구조 분석(140625) #fitalk   sq lite 소개와 구조 분석
(140625) #fitalk sq lite 소개와 구조 분석INSIGHT FORENSIC
 
(140625) #fitalk sq lite 삭제된 레코드 복구 기법
(140625) #fitalk   sq lite 삭제된 레코드 복구 기법(140625) #fitalk   sq lite 삭제된 레코드 복구 기법
(140625) #fitalk sq lite 삭제된 레코드 복구 기법INSIGHT FORENSIC
 
(130216) #fitalk potentially malicious ur ls
(130216) #fitalk   potentially malicious ur ls(130216) #fitalk   potentially malicious ur ls
(130216) #fitalk potentially malicious ur lsINSIGHT FORENSIC
 
(130202) #fitalk trends in d forensics (jan, 2013)
(130202) #fitalk   trends in d forensics (jan, 2013)(130202) #fitalk   trends in d forensics (jan, 2013)
(130202) #fitalk trends in d forensics (jan, 2013)INSIGHT FORENSIC
 
(130202) #fitalk china threat
(130202) #fitalk   china threat(130202) #fitalk   china threat
(130202) #fitalk china threatINSIGHT FORENSIC
 
(130119) #fitalk apt, cyber espionage threat
(130119) #fitalk   apt, cyber espionage threat(130119) #fitalk   apt, cyber espionage threat
(130119) #fitalk apt, cyber espionage threatINSIGHT FORENSIC
 
(130119) #fitalk all about physical data recovery
(130119) #fitalk   all about physical data recovery(130119) #fitalk   all about physical data recovery
(130119) #fitalk all about physical data recoveryINSIGHT FORENSIC
 
(130105) #fitalk trends in d forensics (dec, 2012)
(130105) #fitalk   trends in d forensics (dec, 2012)(130105) #fitalk   trends in d forensics (dec, 2012)
(130105) #fitalk trends in d forensics (dec, 2012)INSIGHT FORENSIC
 
(130105) #fitalk criminal civil judicial procedure in korea
(130105) #fitalk   criminal civil judicial procedure in korea(130105) #fitalk   criminal civil judicial procedure in korea
(130105) #fitalk criminal civil judicial procedure in koreaINSIGHT FORENSIC
 
(131116) #fitalk extracting user typing history on bash in mac os x memory
(131116) #fitalk   extracting user typing history on bash in mac os x memory(131116) #fitalk   extracting user typing history on bash in mac os x memory
(131116) #fitalk extracting user typing history on bash in mac os x memoryINSIGHT FORENSIC
 
(131102) #fitalk get windows logon password in memory dump
(131102) #fitalk   get windows logon password in memory dump(131102) #fitalk   get windows logon password in memory dump
(131102) #fitalk get windows logon password in memory dumpINSIGHT FORENSIC
 
(130907) #fitalk generating volatility linux profile
(130907) #fitalk   generating volatility linux profile(130907) #fitalk   generating volatility linux profile
(130907) #fitalk generating volatility linux profileINSIGHT FORENSIC
 
(130727) #fitalk rp log tracker
(130727) #fitalk   rp log tracker(130727) #fitalk   rp log tracker
(130727) #fitalk rp log trackerINSIGHT FORENSIC
 
(130727) #fitalk pfp (portable forensic platform), #2 story
(130727) #fitalk   pfp (portable forensic platform), #2 story(130727) #fitalk   pfp (portable forensic platform), #2 story
(130727) #fitalk pfp (portable forensic platform), #2 storyINSIGHT FORENSIC
 

Plus de INSIGHT FORENSIC (20)

(150124) #fitalk advanced $usn jrnl forensics (korean)
(150124) #fitalk   advanced $usn jrnl forensics (korean)(150124) #fitalk   advanced $usn jrnl forensics (korean)
(150124) #fitalk advanced $usn jrnl forensics (korean)
 
(150124) #fitalk advanced $usn jrnl forensics (english)
(150124) #fitalk   advanced $usn jrnl forensics (english)(150124) #fitalk   advanced $usn jrnl forensics (english)
(150124) #fitalk advanced $usn jrnl forensics (english)
 
(140118) #fitalk 2013 e-discovery trend
(140118) #fitalk   2013 e-discovery trend(140118) #fitalk   2013 e-discovery trend
(140118) #fitalk 2013 e-discovery trend
 
(141031) #fitalk os x yosemite artifacts
(141031) #fitalk   os x yosemite artifacts(141031) #fitalk   os x yosemite artifacts
(141031) #fitalk os x yosemite artifacts
 
(140716) #fitalk 전자금융사고에서의 디지털 포렌식
(140716) #fitalk   전자금융사고에서의 디지털 포렌식(140716) #fitalk   전자금융사고에서의 디지털 포렌식
(140716) #fitalk 전자금융사고에서의 디지털 포렌식
 
(140716) #fitalk digital evidence from android-based smartwatch
(140716) #fitalk   digital evidence from android-based smartwatch(140716) #fitalk   digital evidence from android-based smartwatch
(140716) #fitalk digital evidence from android-based smartwatch
 
(140625) #fitalk sq lite 소개와 구조 분석
(140625) #fitalk   sq lite 소개와 구조 분석(140625) #fitalk   sq lite 소개와 구조 분석
(140625) #fitalk sq lite 소개와 구조 분석
 
(140625) #fitalk sq lite 삭제된 레코드 복구 기법
(140625) #fitalk   sq lite 삭제된 레코드 복구 기법(140625) #fitalk   sq lite 삭제된 레코드 복구 기법
(140625) #fitalk sq lite 삭제된 레코드 복구 기법
 
(130216) #fitalk potentially malicious ur ls
(130216) #fitalk   potentially malicious ur ls(130216) #fitalk   potentially malicious ur ls
(130216) #fitalk potentially malicious ur ls
 
(130202) #fitalk trends in d forensics (jan, 2013)
(130202) #fitalk   trends in d forensics (jan, 2013)(130202) #fitalk   trends in d forensics (jan, 2013)
(130202) #fitalk trends in d forensics (jan, 2013)
 
(130202) #fitalk china threat
(130202) #fitalk   china threat(130202) #fitalk   china threat
(130202) #fitalk china threat
 
(130119) #fitalk apt, cyber espionage threat
(130119) #fitalk   apt, cyber espionage threat(130119) #fitalk   apt, cyber espionage threat
(130119) #fitalk apt, cyber espionage threat
 
(130119) #fitalk all about physical data recovery
(130119) #fitalk   all about physical data recovery(130119) #fitalk   all about physical data recovery
(130119) #fitalk all about physical data recovery
 
(130105) #fitalk trends in d forensics (dec, 2012)
(130105) #fitalk   trends in d forensics (dec, 2012)(130105) #fitalk   trends in d forensics (dec, 2012)
(130105) #fitalk trends in d forensics (dec, 2012)
 
(130105) #fitalk criminal civil judicial procedure in korea
(130105) #fitalk   criminal civil judicial procedure in korea(130105) #fitalk   criminal civil judicial procedure in korea
(130105) #fitalk criminal civil judicial procedure in korea
 
(131116) #fitalk extracting user typing history on bash in mac os x memory
(131116) #fitalk   extracting user typing history on bash in mac os x memory(131116) #fitalk   extracting user typing history on bash in mac os x memory
(131116) #fitalk extracting user typing history on bash in mac os x memory
 
(131102) #fitalk get windows logon password in memory dump
(131102) #fitalk   get windows logon password in memory dump(131102) #fitalk   get windows logon password in memory dump
(131102) #fitalk get windows logon password in memory dump
 
(130907) #fitalk generating volatility linux profile
(130907) #fitalk   generating volatility linux profile(130907) #fitalk   generating volatility linux profile
(130907) #fitalk generating volatility linux profile
 
(130727) #fitalk rp log tracker
(130727) #fitalk   rp log tracker(130727) #fitalk   rp log tracker
(130727) #fitalk rp log tracker
 
(130727) #fitalk pfp (portable forensic platform), #2 story
(130727) #fitalk   pfp (portable forensic platform), #2 story(130727) #fitalk   pfp (portable forensic platform), #2 story
(130727) #fitalk pfp (portable forensic platform), #2 story
 

Dernier

Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Wonjun Hwang
 
A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)Tae Young Lee
 
Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Wonjun Hwang
 
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Kim Daeun
 
캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스
 
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionMOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionKim Daeun
 

Dernier (6)

Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)
 
A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)
 
Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)
 
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
 
캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차
 
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionMOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
 

(140407) #fitalk d trace를 이용한 악성코드 동적 분석

  • 2. forensicinsight.org 순서 •DTrace 소개 •DTrace 구성 •관련 스크립트 정리 •악성코드 동적 분석 예제 2
  • 3. forensicinsight.org DTrace •포괄적인 동적 추적 프레임워크 •솔라리스 운영체제를 위해 최초 개발함 •커널 코드에 통합되어 있음 •지원 운영체제 •Solaris 10, Mac OS X 10.5, FreeBSD 7.1, NetBSD, Linux Kernel(?) 3
  • 5. forensicinsight.org DTrace $ dtrace Usage: dtrace [-aACeFHlqSvVwZ] [-arch i386|x86_64] [-b bufsz] [-c cmd] [-D name[=def]] [-I path] [-L path] [-o output] [-p pid] [-s script] [-U name] [-x opt[=val]] $ sudo dtrace -n ‘syscall::open:entry /execname == “Safari”/’ dtrace: description 'syscall::open:entry' matched 1 probe CPU ID FUNCTION:NAME 7 159 open:entry 7 159 open:entry Provider Function Name Predicate 5
  • 6. forensicinsight.org 용어정리 •Provider : 함수 클래스와 유사, syscall의 경우 유닉스 시스템 콜을 의미, 특정 프로세스 ID도 될 수 있으며, Objective-C의 클래스도 가능 •Module : Provider를 기준으로 정해짐. 모듈이 없다면 생략할 수 있음. 동적 라이브러리(.dylib)도 사용 가능 •Function : 모듈 또는 Provider 내의 함수 •예를 들면 syscall의 open •Name : Provider에 의해 정해지며, 보통 특정 함수의 실행 시점인 entry와 종료 시점인 return을 가짐 •DTrace 자체의 생성자/소멸자인 BEGIN/END 가능 6
  • 7. forensicinsight.org 용어정리 •Predicate// : 일치 여부를 판단(if)하는 정보 •actions{} : probe에 해당하는 데이터가 predicate를 통과하면 실행 •probe : 동작 중인 소프트웨어에 동적으로 instrumentation 포인트 추가하는 지점 •fire : probe를 활성화하고 코드 흐름에서 instrumented probe point 지점에 도달하면 발생 7
  • 8. forensicinsight.org D Script •DTrace 코드를 스크립트화 시킬 수 있음 •커맨드라인은 비효율적 •D Language로 작성 •-s 옵션으로 사용 가능 8
  • 9. forensicinsight.org D Script $ cat open.d #!/usr/sbin/dtrace -s ! syscall::open:entry /execname == "Safari"/ { printf("open %s filen", copyinstr(arg0)); } $ chmod 755 open.d $ sudo ./open.d dtrace: script './open.d' matched 1 probe CPU ID FUNCTION:NAME 0 159 open:entry open /Library/Internet Plug-Ins/QuickTime Plugin.plugin/Contents/Resources/English.lproj/InfoPlist.strings file ! 0 159 open:entry open /Users/chainbreaker/Library/Preferences/ com.apple.quicktime.plugin.preferences.plist file ! 0 159 open:entry open /Library/Internet Plug-Ins/ SharePointBrowserPlugin.plugin/Contents/PkgInfo file Actions 9
  • 10. forensicinsight.org 추천 스크립트 이름 내용 기본 탑재 execsnoop exec로 실행되는 프로세스 추적 O iosnoop I/O 추적 O opensnoop 오픈되는 파일 추적 O rwsnoop 읽기/쓰기 추적 O newproc.d 새로 생성되는 프로세스(인자 포함) 추적 O soconnect_mac.d 네트워크 연결 추적 X maclife.d 파일 생성/삭제 추적 X 10
  • 11. forensicinsight.org 분석 예제! (Reference : Digitally signed data-stealing malware targets Mac users in "undelivered courier item" attack) •OSX/Laoshu-A •이메일을 이용한 Spear-phising attack 11
  • 12. forensicinsight.org 분석 예제! (Reference : Digitally signed data-stealing malware targets Mac users in "undelivered courier item" attack) •링크를 통해 zip 파일 다운로드 •Safari의 경우, 알려진 압축 파일 자동 해제 •겉으로 보기에는 PDF 파일 •알려진 확장자 자동 숨김을 이용 •아이콘을 PDF로 설정 •디지털 서명되어 있음 12
  • 13. forensicinsight.org 분석 예제! (Reference : Digitally signed data-stealing malware targets Mac users in "undelivered courier item" attack) 13
  • 14. forensicinsight.org 분석 예제! (Reference : Digitally signed data-stealing malware targets Mac users in "undelivered courier item" attack) 14
  • 15. forensicinsight.org 분석 예제! (Reference : Digitally signed data-stealing malware targets Mac users in "undelivered courier item" attack) •주요 기능 •문서 파일 검색 및 압축 •(DOC,XLS,PPT,DOCX,XLSX,PPTX) •특정 서버에 업로드 •새로운 파일 다운로드 •커맨드 명령어 실행 •새로운 파일 다운로드 : DTrace 분석 예제 15
  • 16. forensicinsight.org 분석 예제 •OSX/Laoshu-A에서 다운로드하는 악성코드 •MD5(OSX_Update.app/Contents/MacOS/ worty) = ea2045d1344719d95f85ee8a2fcbe0a7 •주요 기능 : 화면을 캡쳐하여 특정 URL에 업로드 •상세 분석 자료 : http:// forensic.n0fate.com/?p=706 16
  • 17. forensicinsight.org 분석 예제 •모든 문자열을 암호화한 후 Base64로 인코딩 •실행 시점에 특정 클래스의 함수로 복호화 17
  • 18. forensicinsight.org 분석 예제 •cry class : 암복호화 •fi : Base64 decoding •chi : Base64 encoding •end : DES encryption •ded : DES decryption •CCCryptor : Common Cryptographic Algorithm Interfaces 18
  • 19. forensicinsight.org 분석 예제 •추적에 필요한 것 •Provider : Process ID •Module : libcommonCrypto.dylib •Function : CCCrypt •Name : entry or return •함수 인자 19
  • 20. forensicinsight.org 분석 예제 /* written by n0fate * dtrace -q -s cccrypt.d PID */ pid$1:libcommonCrypto.dylib:CCCrypt:entry /execname == "worty"/ { printf("%d %d %d key:%016llx size:%d iv:%016llx datainput:%x, dataoutput:%x", arg0, arg1, arg2, *(unsigned long long *)copyin(arg3, arg4), arg4, *(unsigned long long *)copyin(arg5, 8), arg6, arg8); self->dataoutput = arg8; } ! pid$1:libcommonCrypto.dylib:CCCrypt:return /execname == "worty"/ { printf("(%s)n", copyinstr(self->dataoutput, *(unsigned int*)copyin(arg9, 4))); ustack(5,0); } 20
  • 22. forensicinsight.org 참고 문서 •Brendan Gregg, dtrace.org •SourceFire Vulnerability Research Team, http://vrt-blog.snort.org/2014/03/ osxtrojanleverage-breakdown-using- dtrace.html. •Sophos, http://nakedsecurity.sophos.com/ 2014/01/21/data-stealing-malware-targets- mac-users-in-undelivered-courier-item- attack/. 22