악성코드포렌식 JK Kim @pr0neer proneer@gmail.com
윈도우악성코드포렌식 악성코드분석케이스 1. 보안 HW/SW 에의해악성코드가탐지된경우 발견된악성코드를기준으로분석 발견된악성코드이외의추가적인악성코드를탐지못할가능성 2. 서비스의비정상적인행위로악성코드감염이의심되는경우 비정상행위가발생한시점을기준으로분석 빠른대응을하지못하는경우악성코드를탐지못할가능성 악성코드가발견된경우다양한보안위협에대한고려가필요 체계적인분석을통해악성코드의근원과영향을분석하고대응해야함 2
Security is a people problem 3
~ 300,000 시그니처기반 PE 분류 40,000 ~ 화이트리스트해시룩업 자동 분석 500 ~ 70~ 정적분석 백신검사 자동화동적분석 침해흔적지표 (IOC) 70 ~ 10 ~ 파일시스템분석 타임라인분석 반자동 분석 10 ~ 수동정적 / 동적분석 수동 분석 4
~ 300,000 시그니처기반 PE 분류 40,000 ~ 화이트리스트해시룩업 자동 분석 500 ~ 70~ 정적분석 백신검사 자동화동적분석 침해흔적지표 (IOC) 70 ~ 10 ~ 파일시스템분석 타임라인분석 반자동 분석 10 ~ 수동정적 / 동적분석 수동 분석 5
자동분석 시그니처기반 PE 분류 (1/4) PE (Portable Executable) 포맷 유닉스 COFF(Common Object File Format) 을기반으로윈도우 3.1 부터지원된실행파일형식 PE 파일종류 EXE 일반실행파일 DLL 동적링크파일 SYS 드라이버파일 SCR 화면보호기파일 VXD 드라이버파일 OCX 객체제어, Active X 컨트롤파일 CPL 윈도우시스템환경설정파일 ( 제어판기능추가 ) VXD 와 SYS 의차이점은? 6
자동분석 시그니처기반 PE 분류 (2/4) 확장자분류의문제점 윈도우는기본적으로확장자기반의애플리케이션바인딩사용.AVI 윈도우미디어플레이어 ( 기본 ) 곰플레이어설치후?.JPG 윈도우사진뷰어 꿀뷰, 알씨설치후? 애플리케이션바인딩정보는레지스트리 (HKEY_CLASSES_ROOT) 에저장 유로 2012 미녀.src, 야구동영상.(exe).avi 7
자동분석 시그니처기반 PE 분류 (3/4) PE 시그니처 IMAGE_DOS_HEADER MZ 시그니처 MZ (0x4D5A) IMAGE_NT_HEADER PE 시그니처 PE (0x50450000) 8
자동분석 시그니처기반 PE 분류 (4/4) 야구동영상을이용한악성코드배포유형 1. 다운로드프로그램 웹하드 ( 파일공유 ) 사이트마다고유의다운로드프로그램사용 2. 확장자변경 9 회말 2 아웃.(exe).avi 정상동영상파일앞부분에악성파일삽입, 리소스변경을이용해아이콘변경 3. 자체압축풀림 (self-extracting archive, SFX) 9 회말 2 아웃.exe 4. 동영상플레이어취약점 플레이어의취약점을이용해동영상포맷구성 9
~ 300,000 시그니처기반 PE 분류 40,000 ~ 화이트리스트해시룩업 자동 분석 500 ~ 70~ 정적분석 백신검사 자동화동적분석 침해흔적지표 (IOC) 70 ~ 10 ~ 파일시스템분석 타임라인분석 반자동 분석 10 ~ 수동정적 / 동적분석 수동 분석 10
자동분석 화이트리스트해시룩업 (1/3) 화이트리스트해시 알려진정상파일에대한해시 (MD5, SHA-1, SHA-256) RDS (Reference Data Set) 를활용 NSRL(National Software Reference Library by NIST) RDS 미국국립표준원에서지원하는화이트리스트해시프로젝트 1 년에 4 번분기말에배포 (3 월, 6 월, 9 월, 12 월 ) 2012 년 6 월기준, 26,911,012 개의유일한해시값배포 운영체제서비스팩 / 패치별로해시값계산 RDS 포맷으로배포 RDS 이외에 EnCase, Hashkeeper, Vogon 형식으로도배포 11
자동분석 화이트리스트해시룩업 (2/3) NSRL 프로젝트 (http://www.nsrl.nist.gov/) 12
자동분석 화이트리스트해시룩업 (3/3) NSRL RDS 지원기관 Adobe Systems Incorporated, U.S. Air Force, Faronics Incorporated, Federal Bureau of Investigation U.S. Food and Drug Administration, Microsoft, Netherlands Forensic Institute, NIST, Oracle Corporation Sanderson Forensics, G. Sherwood, Summitsoft Corporation, WetStone Technologies, Inc. NSRL RDS 의한계 다국어운영체제에대한지원미흡 국내소프트웨어에대한미지원 국내형 RDS 필요 지속적인업데이트와관리를위해국가연구기관에서주도하는것이필요 특수목적만을위한것이아닌공개형으로개발 13
~ 300,000 시그니처기반 PE 분류 40,000 ~ 화이트리스트해시룩업 자동 분석 500 ~ 70~ 정적분석 백신검사 자동화동적분석 침해흔적지표 (IOC) 70 ~ 10 ~ 파일시스템분석 타임라인분석 반자동 분석 10 ~ 수동정적 / 동적분석 수동 분석 14
자동분석 정적분석 (1/4) PE 파일포맷분석 PE 파일에서악성파일이주로사용하는값의설정여부를검증 가중치 15
자동분석 정적분석 (2/4) 엔트로피계산 PE 파일의각섹션별엔트로피를계산하여패킹및암호화탐지 16
자동분석 정적분석 (3/4) 서명검증 파일의디지털서명이유효한지, 제품명 / 제조사와디지털서명이같은지검사 17
자동분석 정적분석 (4/4) 카탈로그해시비교 윈도우카탈로그해시데이터베이스값비교 18
자동분석 백신검사 (1/2) 2 개이상의백신중복검사 국내백신중 1 개 안랩 V3, 하우리바이로봇 국외백신중 1 개 카스퍼스키, 어베스트, 아비라, AVG, 마이크로소프트, ESET, 시만텍, 맥아피, 트렌드마이크로, 비트디펜더, 소포스, 백신순위 AV-TEST (http://www.av-test.org/en/tests/) VB100 (http://www.virusbtn.com/vb100/index) AV-Comparatives (http://www.av-comparatives.org/comparativesreviews) 19
자동분석 백신검사 (2/2) 악성파일시그니처 DB 에질의 Virus Total https://www.virustotal.com/ Jotti http://virusscan.jotti.org/ 20
자동분석 자동화동적분석 (1/2) 동적분석방법 분석대상실행파일을가상화환경에서실행한후행위모니터링 동적행위 프로세스모니터링 파일생성 / 읽기모니터링 로드한 DLL 모니터링 레지스트리생성 / 읽기모니터링 네트워크연결모니터링 21
자동분석 자동화동적분석 (2/2) 동적분석도구 Anubis http://anubis.iseclab.org/ CWSandbox http://www.gfi.com/malware-analysis-tool Norman Sandbox http://www.norman.com/security_center/security_tools/ Joebox http://www.joesecurity.org/ 22
자동분석 침해흔적지표 (IOC) 확인 (1/2) 침해흔적지표 (IOC, Indicators Of Compromise) 침해사고를의심하거나판단할수있는시스템흔적 알려진지표를이용해분석대상시스템을점검 대표적으로맨디언트 (Mandiant) 의 OpenIOC OpenIOC 현재맨디언트의주도하에많은기관이참여하고있지않음 국내표적형악성파일에대한데이터부족 국내 IOC 데이터의활용방안이필요 23
자동분석 침해흔적지표 (IOC) 확인 (2/2) IOC Example : Stuxnet 24
~ 300,000 시그니처기반 PE 분류 40,000 ~ 화이트리스트해시룩업 자동 분석 500 ~ 70~ 정적분석 백신검사 자동화동적분석 침해흔적지표 (IOC) 70 ~ 10 ~ 파일시스템분석 타임라인분석 반자동 분석 10 ~ 수동정적 / 동적분석 수동 분석 25
반자동분석 파일시스템분석 (1/7) 파일시스템시간변조 $SIA (STANDARD_INFORMATION ATTRIBUTE), $FNA (FILE_NAME ATTRIBUTE) 생성시간 (Created Time) 수정시간 (Written Time) 접근시간 (Last Accessed Time) MFT 수정시간 (MFT Modified Time) API 를통해생성, 수정, 접근시간만수정가능 MFT 수정시간을통해시간변조탐지 26
반자동분석 파일시스템분석 (2/7) 행위에따른파일시스템시간흔적 (GUI) $STANDARD_INFO 생성수정접근삭제복사로컬이동볼륨이동이름변경 Created Written Accessed MFT Modified $FILE_NAME 생성수정접근삭제복사로컬이동볼륨이동이름변경 Created Written Accessed MFT Modified 27
반자동분석 파일시스템분석 (3/7) 파일시스템시간변조 시스템폴더중요파일의생성 / 수정 / 접근시간을얻어온후자신의시간정보수정 MFT 수정시간이나생성시간정렬을이용해악성의심파일검출가능 28
반자동분석 파일시스템분석 (4/7) 시스템폴더에파일생성 파일명을시스템파일과동일하게생성하여은닉 ( 다른경로, Windows System32) 시스템파일을패치 ( 정상동작 ) 하여자신을은닉 파일명을램덤으로생성하여은닉 비정상적인경로에파일생성 최근에는 APT 공격을위해최종목적을이루기위한시스템을찾을때까지자신의흔적을은닉하면서이동 시스템폴더보다는비정상적인경로에파일생성 %SystemDrive%\$Extend %SystemDrive%\$Recycle.Bin %SystemDrive%\ProgramData %SystemDrive%\System Volume Information 29
반자동분석 파일시스템분석 (5/7) 슬랙영역사용 슬랙영역 논리적인구조와물리적인구조의차이로생기는낭비되는공간 MFT 슬랙 INDX 슬랙 램슬랙 드라이브슬랙 파일슬랙 파일시스템슬랙 볼륨슬랙 30
반자동분석 파일시스템분석 (6/7) 슬랙영역사용예 MBR 루트킷의경우 MBR 슬랙을주로이용 TDL3/4 루트킷의경우동적디스크를위해예약된파티션되지않은영역사용 31
반자동분석 파일시스템분석 (7/7) 파일카빙 최근 APT 공격이증가하면서목적을달성하기전까지흔적을삭제 단순파일삭제 완전삭제 (wiping) 기법사용 파일삭제시파일카빙을통한복구필요 레코드단위의카빙필요 확장자변조 외부감염된사이트에올려둔파일을내려받을때확장자변조주로사용 32
반자동분석 타임라인분석 (1/2) 이상징후발견시해당징후를기준으로타임라인분석이필요 악성코드행위확인 추가적인악성코드발견 감염경로확인 타임라인데이터 파일시스템시간정보레지스트리시간정보인터넷익스플로러 / 파이어폭스 / 크롬 / 사파리시간정보이벤트로그시간정보아파치 /IIS 시간정보링크파일시간정보 프리 / 슈퍼패치시간정보 PCAP 시간정보 EXIF 시간정보휴지통시간정보복원지점 / 볼륨섀도우복사본시간정보. 33
반자동분석 타임라인분석 (2/2) 타임라인도구 log2timeline (http://log2timeline.net/) 슈퍼타임라인분석 http://blogs.sans.org/computer-forensics/files/2012/01/newpicture034.jpg 34
~ 300,000 시그니처기반 PE 분류 40,000 ~ 화이트리스트해시룩업 자동 분석 500 ~ 70~ 정적분석 백신검사 자동화동적분석 침해흔적지표 (IOC) 70 ~ 10 ~ 파일시스템분석 타임라인분석 반자동 분석 10 ~ 수동정적 / 동적분석 수동 분석 35
수동분석 수동정적 / 동적분석 디버거를이용한분석 정적 / 동적디버거 OllyDbg, IDA 36
수동분석 수동정적 / 동적분석 가상화환경에서의심악성코드실행후메모리분석 Volatility, Responder Pro, Redline, 37
최근악성코드위협 Security is a people problem 38
최근악성코드흐름 스피어 - 피싱위협 연봉계약서 39
최근악성코드흐름 피싱사이트위협 금융권피싱사이트 개인의사이트아이디 / 비번, 보안카드번호탈취목적 PC 와모바일을모두지원하는피싱사이트 40
최근악성코드흐름 애플리케이션취약점위협 41
최근악성코드흐름 스마트폰악성코드위협 http://image.ahnlab.com/comm/info/1203026626222985.jpg 42
최근악성코드흐름 이벤트형악성코드위협 43
최근악성코드흐름 위장형악성코드위협 44
최근악성코드흐름 고급안티포렌식기법사용 파일삭제 자신의목적을달성한후은닉을위해파일삭제 일반삭제 완전삭제 (wiping), 시스템파일로여러번덮어쓰기 이벤트로그중지 / 삭제 1. 이벤트로그에흔적을남기지않기위해이벤트로그서비스를중지시킨후악성행위 2. 악성행위후이벤트로그를초기화 네트워크탐지솔루션우회를위해인코딩기법사용 특정바이트나패턴으로 XOR 포렌식분석데이터의조작 45
질문및답변 46