74
데이터 복구 그리고, 그 구조 ICEWALL 오효근

데이터 복구 그리고 그 구조 - ICEWALL 발표

Embed Size (px)

Citation preview

Page 1: 데이터 복구 그리고 그 구조 - ICEWALL 발표

데이터 복구 그리고, 그 구조

ICEWALL 오효근

Page 2: 데이터 복구 그리고 그 구조 - ICEWALL 발표

발표자의 상태가 이상합니다

이 상

Page 3: 데이터 복구 그리고 그 구조 - ICEWALL 발표

발표자의 상태가 이상합니다

이명

어깨 결림

몸살

Page 4: 데이터 복구 그리고 그 구조 - ICEWALL 발표

주제

• 포렌식

• 툴 사용법

• 파일 시스템 구조

• 실제로 써 먹을 수 있는, 밥 얻어먹기 좋은 기술

Page 5: 데이터 복구 그리고 그 구조 - ICEWALL 발표

때는 2000년대 초반

Page 6: 데이터 복구 그리고 그 구조 - ICEWALL 발표

초등학생이었던 발표자는

Page 7: 데이터 복구 그리고 그 구조 - ICEWALL 발표

외장 하드디스크를 구했다

Page 8: 데이터 복구 그리고 그 구조 - ICEWALL 발표

그 당시 기준으로 충격적인 용량 40GB

Page 9: 데이터 복구 그리고 그 구조 - ICEWALL 발표

어릴적 이런 저런 것들을 저장하는 걸 취미로

Page 10: 데이터 복구 그리고 그 구조 - ICEWALL 발표

40GB를 다 채우게 되고

Page 11: 데이터 복구 그리고 그 구조 - ICEWALL 발표

80GB 하드를 구하여

Page 12: 데이터 복구 그리고 그 구조 - ICEWALL 발표

데이터를 옮기게 된다

Page 13: 데이터 복구 그리고 그 구조 - ICEWALL 발표

하지만, 데이터를 모두 옮기지 못한채

Page 14: 데이터 복구 그리고 그 구조 - ICEWALL 발표

실수로 40GB 하드를 포맷해버리고

Page 15: 데이터 복구 그리고 그 구조 - ICEWALL 발표

멘붕하게 되는데…

Page 16: 데이터 복구 그리고 그 구조 - ICEWALL 발표
Page 17: 데이터 복구 그리고 그 구조 - ICEWALL 발표

그렇게 하드 복구에 입문했습니다 (…)

Page 18: 데이터 복구 그리고 그 구조 - ICEWALL 발표

하드 복구는 그렇게 어렵지 않습니다.

Page 19: 데이터 복구 그리고 그 구조 - ICEWALL 발표

대부분 툴에 의존하고,

Page 20: 데이터 복구 그리고 그 구조 - ICEWALL 발표

보통은 데이터를 날리는 패턴도 비슷합니다.

Page 21: 데이터 복구 그리고 그 구조 - ICEWALL 발표

몇 가지 실수만 안한다면 도전해볼 만합니다.

Page 22: 데이터 복구 그리고 그 구조 - ICEWALL 발표

그 전에, 구조를 배웁시다

Page 23: 데이터 복구 그리고 그 구조 - ICEWALL 발표

데이터는 어찌 저장되는가?

• 하드디스크에 저장된다는 건 누구나 알고 있음

• 근데 어찌 저장되는지, 어찌 읽는지, 왜 하드가 뻑이 나는지는 이해도 못 함

• 사실 구조가 간단한 편이 아니고, 현대 기술의 총집합이라고 할 정도로 복잡함

• 하지만, 기본 이론은 아주 간단함

Page 24: 데이터 복구 그리고 그 구조 - ICEWALL 발표

데이터는 어찌 저장되는가?

• 상자가 여러개 있고, 그 상자에 데이터를 넣는다.

• 상자에는 주소가 붙어있고, 그 주소에 뭐가 있는지 적혀있는 커다란 전화번호부 비슷한게 있다

• 전화번호부는 보통 2개로 미러링(백업)되어 있으며 이 부분이 손상이 되면 컴퓨터는 데이터를 읽지를 못한다

• 또한, 상자의 데이터가 맛이 가도 읽지 못한다 (베드섹터)

Page 25: 데이터 복구 그리고 그 구조 - ICEWALL 발표

데이터는 어찌 저장되는가?

• 그리고 상자를 언급하는 규격을 파일 시스템이라고 함

• 하드디스크의 원반을 일정한 간격으로 나누고, 그 부분에 데이터를 저장해서 컴퓨터가 파일을 인식할 수 있게 하는 것이 그것

• 사실 이 부분 설명하기 귀찮아서 이렇게 간략화해서 쓴 거임. 더 복잡함 그건 레퍼런스에서 찾아서 보시길

Page 26: 데이터 복구 그리고 그 구조 - ICEWALL 발표

파일 시스템

• 요즘 많이 쓰이는거 위주, 윈도 환경 위주로 설명

• NTFS와 FAT32 위주로 설명

• -nix like (Linux, OS X, UNIX …)에서 쓰이는 건 설명 X

• 일단, 데이터가 저장되는 방법을 알아야지 어찌 복구되는지 알 수 있음

Page 27: 데이터 복구 그리고 그 구조 - ICEWALL 발표

NTFS

• MS 윈도우 XP부터 쓰이기 시작한 파일 시스템(정확히는 NT부터)

• 상당히 폐쇄적이어서, 윈도만을 위한 시스템

• 현재 제일 많이 쓰이는 파일 시스템 중 하나

Page 28: 데이터 복구 그리고 그 구조 - ICEWALL 발표

NTFS

Volume Boot

Record

Master File Table

Data Area

Page 29: 데이터 복구 그리고 그 구조 - ICEWALL 발표

FAT32

• 거의 대부분의 OS에서 사용가능한 시스템

• exFAT이나, FAT16, FAT12 같은 녀석들이 친척임

• 구조적 문제로 4기가 이상의 파일이 존재할 수 없음

• 무식하게 간단한 시스템

Page 30: 데이터 복구 그리고 그 구조 - ICEWALL 발표

FAT32

Reserved Area

FAT Area

Data Area#1 FAT #2 FAT

Page 31: 데이터 복구 그리고 그 구조 - ICEWALL 발표

패턴은?

Page 32: 데이터 복구 그리고 그 구조 - ICEWALL 발표

실수로 삭제 해 버렸어!

• 제일 자주 일어나는 실수

• 일단 컴퓨터는 만지지 말고 냅둔다.

• 딴 컴퓨터나 라이브 CD/USB 준비

• 컴퓨터 전원을 빼버리고 (걍 전원코드 빼라)

• 타겟 하드를 건드리지 않는 시스템으로 복구하기.

Page 33: 데이터 복구 그리고 그 구조 - ICEWALL 발표

실수로 삭제 해 버렸어!

• 보통 뭔가 뻘짓을 더 해서 복구가 어려워짐

• 보통 외장하드나 USB 메모리면 쉽게 해결이 됨

• 그러나 윈도 깔린 하드면 엄청나게 복잡해지는 문제

• 그냥 복구 프로그램 하나 깔아두는 걸 습관으로 합시다

Page 34: 데이터 복구 그리고 그 구조 - ICEWALL 발표

헉, 실수로 파티션 날렸다.

• 윈도나 리눅스 설치할 때마다 꼭 한 두 번씩 있는 일

• 꼭, GParted나 윈도 파티션 관리자 쓰다가 아무 생각없이 (다음) 누르면 일어나는 일

• 보통 파티션만 날릴 경우, 복구가 쉬워짐

• 허나, 포맷을 하면 약간 어려움

• 다른 파일 시스템을 올리는 경우 꽤 시간 많이 걸리고, 완전복구 불가 (99% 장담)

Page 35: 데이터 복구 그리고 그 구조 - ICEWALL 발표

헉, 실수로 파티션 날렸다.

• 일단, 이런 삽질을 막기 위해서는 자기가 쓰는 파티션 관리 툴에 익숙해질 것

• 그리고 일이 터지면 10시간 이상 컴퓨터 켜 놓고, 복구가 되리라는 믿음을 갖고 있는 부처 멘탈이 필요

• Testdisk를 씁시다 여러분

Page 36: 데이터 복구 그리고 그 구조 - ICEWALL 발표

주의해야할 문제는?

Page 37: 데이터 복구 그리고 그 구조 - ICEWALL 발표

주의 사항

• 전체 데이터 복구를 시도할 경우, 데이터를 복구할 타깃보다 백업할 저장장치의 용량이 커야함 (상식임 -_-)

• 그리고 보통 뭔가 작업하려고 보면 뭔가 선이 잘못되거나, 시스템 문제가 있거나, 아님 툴이 오작동을 하거나 그런 경우가 있음.

• 그러니, 여분으로 여러 개 준비하는게 정신건강상 좋음

Page 38: 데이터 복구 그리고 그 구조 - ICEWALL 발표

주의 사항

• 저장 장치에 데이터가 덧 씌워지는 일을 벌이면 안됨

• 데이터 복구율의 승패는 얼마나 데이터가 손상 안됐는가에 달려 있음

• 특히, 윈도우 깔린 하드에서 데이터 복구할 때, 윈도우 재부팅은 절대 하지 말 것

Page 39: 데이터 복구 그리고 그 구조 - ICEWALL 발표

주의 사항

• 대부분의 OS에서는 부팅시 데이터를 최소 200MB 이상을 쓰게 됨

• 즉, 최소 200MB 이상의 데이터가 복구 불가 하는 것이고, 파편화가 심하게 된 데이터는 걍 망했다고 보면 됨

• 종료도 걍 전원 코드 뽑는 쪽이 좋음 (아님 덤프 뜨던지)

Page 40: 데이터 복구 그리고 그 구조 - ICEWALL 발표

주의 사항

• 경험은 실력을 쌓게 함

• 초반의 삽질은 결과적으로 나중의 실력을 가지고 오게 함

• 하드디스크 복구시 하드에서 나는 소리만으로 문제 파악을 할 수 있을 정도임

• 실제로 베드 섹터가 있는 하드와 MBR 맛간 하드의 소리는 분명히 다름

Page 41: 데이터 복구 그리고 그 구조 - ICEWALL 발표

주의 사항

• RAID로 묶여 있거나, NTFS/FAT 를 제외한 파일 시스템은 절대로 손 대지 말 것

• RAID의 경우 묶여있는 순서를 모를 경우 모든 순서를 다 시도해야함, 실수로 여러개의 RAID 시스템을 섞을 경우 개ㅋ망ㅋ

• 다른 파일 시스템은 님들 실력으로 건드릴 수 있는게 아님

• 일단 자신의 소유의 하드에 시도하는 것부터 시작하길

Page 42: 데이터 복구 그리고 그 구조 - ICEWALL 발표

헛소리 같죠?

Page 43: 데이터 복구 그리고 그 구조 - ICEWALL 발표

예시

• 삼성은 모터 달린 제품을 제대로 만들어 내는게 없음

• 사실 대부분의 컴퓨터 실력은 삼성 제품 고치면서 생김

• 삼성 하드만 4개인가 뻑이 났고, 데이터 복구, 수리 등등을 진행하면서 쌓인 결과

• WD는 나름 잘 버티는데, 한 번 고장나면 대규모 베드 섹터가 발견 되는 경우가 있음

Page 44: 데이터 복구 그리고 그 구조 - ICEWALL 발표

예시

• 삼성 80GB 하드가 2006~8년경에 인식이 안 됨

• 보건데 데이터 부분에 뻑이 난 게 아니라, 주소 필드에 맛이 간 걸로 추측 (발표자가 간략하게 설명하려고 이렇게 말함. 복구한 하드디스크는 2.5인치

IDE 하드디스크였고, FAT32 단일 파티션이었음. 아마도 FAT Area 손상으로 하드가 제대로 인식이 안되던 상황이었고, 이를 복구했음)

• 2008년 파이널 데이터로 데이터 복구

• 2014년 Testdisk로 데이터 재복구 (우연히 하드 재발견)

Page 45: 데이터 복구 그리고 그 구조 - ICEWALL 발표

예시

• 작동 중인 WD 640GB 하드에 실수로 드라이버 낙하

• 640GB 중 플래터 바깥 부분 대부분에 배드섹터 생성

• 약 250기가를 제외한 전 부분에 베드섹터가 생겨 데이터를 옮기고, 토렌트 하드로 사용하기 시작

• 하드디스크가 드디어 사망 (2012 또는 2013)

• Testdisk로 토렌트 데이터 접근 후 백업

Page 46: 데이터 복구 그리고 그 구조 - ICEWALL 발표

툴을 쓴다면서요?

Page 47: 데이터 복구 그리고 그 구조 - ICEWALL 발표

Test disk

• 발표자가 제일 좋아하는 하드 복구 프로그램

• 물리적 베드섹터도 씹어먹음 (못 할 때도 있긴 함)

• Deep Search가 포맷된 파티션까지 잘 잡아줌

• 얘로 복구 안되면 포기하는게 좋다는 이야기가 있을 정도

Page 48: 데이터 복구 그리고 그 구조 - ICEWALL 발표

Test disk

• http://www.cgsecurity.org/wiki/TestDisk

• GPL v2+ 라이센스 사용. 소스코드 공개 됨

• 포터블 버전으로 존재

• 일단 이 녀석으로 해결 가능한거 상당히 많음

• CLI 사용 : 다소 복잡할 수 있으나 익숙해지면 진짜 편함

Page 49: 데이터 복구 그리고 그 구조 - ICEWALL 발표

Final Data

• 나름 국산 데이터 복구 프로그램

• 발표자가 제일 처음으로 접한 녀석. 초딩 때 이 녀석으로 결국 하드 50% 이상 복원 시킬 수 있었음

• GUI가 약간 불친절하고, 하드 전체를 스캔하기에 느림

• 지금은 3.0 버전이 나왔으나 좀 많이 잊혀짐 (안 써봄)

Page 50: 데이터 복구 그리고 그 구조 - ICEWALL 발표

Recuva

• 포터블하고 간단한 파일 복구 프로그램

• 전체적으로 필요한 파일 (eg. 이미지, 영상) 만 골라 복원이 가능

• SD 카드 같은 저장장치도 잘 복원해 줌

• 전체적인 스캔시간은 보통 수준 (실제로 시간 안 재 봄)

• 스캔/복원 알고리즘은 모르겠지만, 가볍게 쓸 만함

Page 51: 데이터 복구 그리고 그 구조 - ICEWALL 발표

Recuva

• https://www.piriform.com/recuva

• Professional_Version_Price == 28,851 Won

Page 52: 데이터 복구 그리고 그 구조 - ICEWALL 발표

File Carving

• 앞서 배운 파일 시스템 구조를 충분히 이해하면 가능함

• 데이터를 직접 분석하여 지금 이 녀석이 어떤 파일인지, 언제 수정 되었는지, 복원이 가능한지, 용도가 뭔지 등등을 판별할 수 있음

• 일단, 복구 대상에 다이렉트로 연결하는 건 비추

Page 53: 데이터 복구 그리고 그 구조 - ICEWALL 발표

File Carving

• EnCase를 사용하여 덤프를 뜨는 걸 추천

• 타 회사 프로그램도 있지만, 사실 써보지를 않아서……

• 사실 이 부분 질문하면 대답 해 줄건 거의 없음 ㅠㅠ

• 발표자도 하드디스크 다이렉트로 접근하는 경우가 아주 많다는 건 안 비밀

Page 54: 데이터 복구 그리고 그 구조 - ICEWALL 발표

그러면 흔적은 어찌 지워?

Page 55: 데이터 복구 그리고 그 구조 - ICEWALL 발표

Zero Fill

• 말 그대로 모든 하드디스크 영역에 0으로 채워넣는 것

• 일종의 하드디스크 로우 포맷과 비슷함

• 이 경우 데이터 복구 프로그램은 쓸 데가 없음

• 하지만, 방법은 존재한다!

Page 56: 데이터 복구 그리고 그 구조 - ICEWALL 발표

Zero Fill

• 하드디스크의 경우 데이터 값을 0과 1로 표현

• 0과 1은 자기장의 방향으로 기록

• 데이터를 덮어 씌우게 되면 방향이 미세하게 다름!!

• 이걸 이용해서 덮어씌운 데이터 이전의 값을 추론 가능!!

• (발표 후 자료를 찾아보니 이게 안 될 확률이 크다네요 참고자료, 데이터 복구의 모든 것 참조 요망)

Page 57: 데이터 복구 그리고 그 구조 - ICEWALL 발표

무작위 채우기

• 이런 자기장의 방향은 3번 정도 무작위로 채우면 쉽게 추론이 불가능해짐

• 그래서, 난수를 발생시켜서 데이터를 여러번 덮어씌우는 방법이 존재

• HDtune이나 Eraser 같은 프로그램들이 이런 것을 지원

• 심지어, 개별 파일도 무작위 채우기로 완전삭제 가능

Page 58: 데이터 복구 그리고 그 구조 - ICEWALL 발표

그런데 왜 SSD는 이야기 안해요?

Page 59: 데이터 복구 그리고 그 구조 - ICEWALL 발표

얘는 구조 자체부터 다름 복구 해본 경험이 없음

Page 60: 데이터 복구 그리고 그 구조 - ICEWALL 발표
Page 61: 데이터 복구 그리고 그 구조 - ICEWALL 발표

왜 배워둬야하죠?

Page 62: 데이터 복구 그리고 그 구조 - ICEWALL 발표

필요할 날이 올 것임

Page 63: 데이터 복구 그리고 그 구조 - ICEWALL 발표
Page 64: 데이터 복구 그리고 그 구조 - ICEWALL 발표

허접한 강의 들어주셔서 감사합니다

Page 65: 데이터 복구 그리고 그 구조 - ICEWALL 발표

QnA

Page 66: 데이터 복구 그리고 그 구조 - ICEWALL 발표

QnA

• Q : 왜 FAT32는 4기가 (발표자 실수로 2기가라 함) 이상 단일 파일을 저장 할 수 없는건가요?

• A : http://support.microsoft.com/en-us/kb/314463

• Q : FAT32와 NTFS 같은 디스크 포맷 방식은 어떤 차이로 결정되나요?

• A : 구조 차이, 참고자료에 걸린 링크 읽어보시길

Page 67: 데이터 복구 그리고 그 구조 - ICEWALL 발표

QnA

• Q : 주소필드가 안맞아서 안된다고했는데 주소필드가 뭔가요? 맞게할려면 어떻게해야되요?

• A : 사실 헛소리 한겁니다 (…) 죄송합니다. 슬라이드에 정확한 문제를 다시 설명해 놨습니다. 확실히 데이터 부분이 손상이 안 가서 확인해보니 FAT Area에 문제가 생긴게 확실하였고 (그걸 몰랐을 때에는) Final Data로 전체 스캔해서 데이터를 복구했고, (그걸 안 후에는)Test Disk로는 읽을 수 있는 부분만 찾아내서 따로 데이터를 또 복구했습니다. 사실 앞에 전화번호부를 비유해서 이야기를 하여서 이 부분도 이렇게 비유하려다가 실패한 겁니다. 다시 한 번 죄송합니다.

Page 68: 데이터 복구 그리고 그 구조 - ICEWALL 발표

참고자료

• FAT, HPFS 및 NTFS 파일 시스템의 개요 : https://support.microsoft.com/en-us/kb/100108/ko

• FAT 12/16/32 File System : http://forensic-proof.com/wp-content/uploads/2013/07/FP-FAT121632-File-System.pdf

• NTFS File System : http://forensic-proof.com/wp-content/uploads/2013/07/FP-NTFS.pdf

Page 69: 데이터 복구 그리고 그 구조 - ICEWALL 발표

참고자료

• NTFS - $DATA 속성 : http://forensic-proof.com/archives/1769

• 데이터 복구의 거의 모든 것 : http://forensic-proof.com/wp-content/uploads/2013/07/FP-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B3%B5%EA%B5%AC%EC%9D%98-%EA%B1%B0%EC%9D%98-%EB%AA%A8%EB%93%A0-%EA%B2%83.pdf

Page 70: 데이터 복구 그리고 그 구조 - ICEWALL 발표

참고자료

• NTFS Log Tracker : http://forensicinsight.org/wp-content/uploads/2013/06/F-INSIGHT-NTFS-Log-TrackerKorean.pdf

• 파일 시스템과 파일 복구 : http://www.parkjonghyuk.net/lecture/2012-2nd-lecture/computersecurity/chap08.pdf

• 덮어 쓴 데이터 복구의 진실 : http://dailysecu.com/news_view.php?article_id=3670

Page 71: 데이터 복구 그리고 그 구조 - ICEWALL 발표

참고자료

• 하드디스크 구조 : http://forensic-proof.com/wp-content/uploads/2013/07/FP-%ED%95%98%EB%93%9C%EB%94%94%EC%8A%A4%ED%81%AC-%EA%B5%AC%EC%A1%B0.pdf

• File System Forensics I : http://forensic-proof.com/wp-content/uploads/2013/07/FP-File-System-Forensics.pdf

• File System Forensics II : http://forensic-proof.com/wp-content/uploads/2013/07/FP-File-System-Forensics-II.pdf

Page 72: 데이터 복구 그리고 그 구조 - ICEWALL 발표

• 하드디스크 소음별 상태 : http://datacent.com/hard_drive_sounds.php

• SSD 포렌식:데이터복구 : http://forensic-proof.com/archives/3221

• SSD 포렌식: TRIM 명령 : http://forensic-proof.com/archives/640

• SSD 관련 자료는 여기가 끝인 듯 더 못찾겠습니다. :(

Page 73: 데이터 복구 그리고 그 구조 - ICEWALL 발표

• Forensic Proof라는 블로그가 대부분의 자료나 지식의 원천. 책이나 해외 자료들도 꽤 많이 읽긴하지만, 여기서 자료 찾아서 공부하는 걸로 시작을 했습니다.

• http://forensic-proof.com/ << 여기

• 하지만, 아직도 이 블로그에 올라온 모든 글을 읽지는 못했습니다. 그리고 슬라이드 내에서도 틀린 이야기를 너무 많이 해서 수정을 하고 또 했는데 오개념을 이야기해서 죄송합니다.

Page 74: 데이터 복구 그리고 그 구조 - ICEWALL 발표

• 실제로 여기서 나온 사례들은 실제 포렌식과는 약간 동떨어져있습니다. 대부분 발표자의 하드를 복구하면서 얻게 된 노하우를 공유하는 것이고, 이를 통해서 이런 저런거에 관심 좀 가져보라는 용도의 프레젠테이션이었습니다. 그러니 이걸 뭐 실전에서 쓰겠다는 건 자제 좀 해주셨으면… 뭐 자기 하드 날리고 복구하는건 가능하지만 그 이상은 좀 무리일 겁니다. 공부 더 하시고 하세요 제발. 특히, 앞에서 말했지만, 몇몇 파일 시스템은 손도 대시지 마세요.