일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #선택정렬 #선택정렬알고리즘
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #c언어포인터와문자열 #c언어문자열
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #C동적메모리할당 #malloc #메모리
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #BrokenAuthentication
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #bruteFource #무차별공격
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #로또번호생성 #로또번호만들기 #중복제거 #중복제거알고리즘
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #c2차원배열동적할당 #c언어동적할당 #c동적할당 #c언어동적할당2차원배열
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #SQLi #sqlinjectioon
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #c언어포인터 #c언어포인터연산
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #IT #PUT메소드 #PUT #HTTP메소드 #취약점
- c언어malloc #동적할당 #c언어동적할당 #c언어malloc사용하기
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #c언어포인터배열 #c언어포인터 #포인터 #c포인터
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #phpcodeinjection #injection
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #IT #SQLi #TimeBaseSQLi #sqlinjection
- #FAT파일시스템 #파일시스템구조 #파일시스템 #Forensic #정보보안 #IT
- C언어 #C #C프로그래밍 #프로그래밍 #언어
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #xss #storedxss #CrossSiteScripting
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #c언어포인터의포인터 #c언어2중포인터
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #IT #robots.txt #검색엔진노출
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #c배열포인터 #c언어포인터 #c언어배열포인터 #배열포인터
- 사이버포렌식 #포렌식 #FAT
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #IT
- c언어문자열처리방법 #c언어문자열
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #포인터 #포인터변수 #c언어주소 #주소
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #Call by value #Call by reference
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #IT #CSRF #
- 포렌식 #사이버포렌식 #Forensic #정보보안 #IT
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #commandinjection
- XSS #ReflectedXSS
- 파일시스템과파티션 #포렌식 #사이버포렌식 #Encase #Forensic #파티션 #파일시스템 #정보보안
- Today
- Total
Hello Security World
Digital Forensic [파일 시스템] 본문
파일 시스템
파일시스템의 정의
1) 컴퓨터에서 파일이나 자료를 쉽게 발견 및 접근할 수 있도록 보관 또 는 조직하는 체제 (wiki)
2) 파일시스템은 저장장치 내에서 데이터를 읽고 쓰기 위해 미리 지정 된 약속
3) 파일 시스템은 통상 하드 디스크나 CD-ROM 같은 실제 자료 보관 장 치를 사용하여 파일의 물리적 소재를 관리하는 것을 가리키나 네트 워크 프로토콜(NFS, SMB, 9P 등)을 수행하는 클라이언트를 통하여 파일 서버 상의 자료로의 접근을 제공하는 방식과 가상의 형태로서 접근 수단만이 존재하는 방식(procfs 등)도 파일 시스템의 범위에 포 함
파일시스템의 분류
Disk 파일시스템
- 일반적으로 HDD에 파일을 저장하기 위해 고안된 구조
-예) FAT, NTFS, HFS, HFS+, HPFS, UFS, ext2/3/4, btrfs, ISO 9660, ODS-5, Veritas File System, ZFS, ReiserFS, Linux SWAP,UDF
플래시 파일시스템
- 플래시 메모리에 저장하기 위해 고안된 구조
- 플래시 메모리 특성: Erasing Block, Random Access, Wear Leveling YAFFS, JFFS 등
파일시스템의 분류 2
Tape 파일시스템
Database 파일시스템
Network 파일시스템
Shared Disk 파일시스템
특별한 목적의 파일시스템
Unix의 (/proc)와 같은 프로세스 정보 저장 파일시스템
일반적인 파일시스템 구성
일반적으로 boot sector, index, data 3가지 영역으로 구분
Boot Sector
- Drive의 시작 부분으로 Drive를 어떻게 읽어야 할지를 결정하는 영역
Index 또는 Metadata
- Drive 에 존재하는 파일이나 폴더들의 정보를 제공
- 일반적으로 파일의 Name, Type, Size, Status, MAC Time, user 등 정보 저장
Data
- 각 파일에 대한 실제 Data 저장
파일 데이터의 구성
Cluster Chain
- 파일의 크기가 커서 연속되거나 분산된 여러 개의 클러스터에 저장하고 이를 연결한 구조 및 형태
Fragmentation
- 하나의 파일이 연속된 클러스터에 저장되어 있지 않고 분산되어 저장되 어 있는 형태
Data Recovery
- 손상, 접근 불가, 은닉, 잔존되어 있는 Data를 분석할 수 있도록 복구 하는 기술
Data Recovery를 위해 요구되는 기술
- File System의 이해
- OS와 File System간의 메커니즘 이해
- 응용 프로그램과 관련된 파일 구성의 이해 응용 프로그램과 관련 파일간의 메커니즘 이해
- 다양한 복구 기법과 원리의 이해 관련 도구(Encase, FTK, …)들의 이해
Logical Data 저장 위치와 특성 (1/2)
Regular files
- 사용자 관점에서 Data가 정상적으로 저장되어 있는 파일
- Filesystem의 metadata(MAC Time, File Name 등), 파일 내의 metadata를 이용하여 추가 정보 획득 가능
Temporary files
- 임시 파일로서 경우에 따라 삭제되는 경우 발생
- 암호화된 관련 파일의 평문 저장 가능
Deleted files
- 사용자에 의해 삭제된 파일로서 overwritten되지 않으며 간단히 복구 가능
Retained Data Block
- 파일이 삭제되어 논리적으로 존재하지 않지만 일부 또는 전체 Data가 잔존하는 Block
- Slack space 또는 할당되지 않은 Disk 영역에 잔존하며 overwritten 될 수 있음
Logical Data 저장 위치와 특성 (2/2)
Hidden blocks
- Vender에 의해 별도로 할당된 블록(복구용)으로서 HPA(Host Protected Area) 등이 있음
- OneNAND와 같은 Flashmemory에서 OTP(One Time Programmable)와 같은 영역
Bad blocks
- 저장장치의 이상으로 일부 blocks이 bad로 설정된 block
- 실제 정상적인 block이나 임의로 bad로 설정된 경우도 존재
Backup data
- 동일한 저장장치 또는 별도의 분리된 장치에 저장된 data
Unused space
- 저장된 정상 데이터의 size가 변경되지 않아 일정한 Slack space를 보 장 받을 수 있는 공간
- 임의로 File 또는 Filesystem Spec.의 유연성을 이용하여 space를 확보 하고 Data 저장
Data Recovery 분류 (1/4)
Physical Recovery
- 손상된 PCB 등 부품 교체
- MFM(Magnetic Force Microscopy ) 장비를 이용한 Scanning
Logical Recovery
- Partition Recovery
- Undelete
- Signature Search
- Data Carving
- Finding hidden data
- Password recovery, Decryption
- Steganalysis
- Unpacking, decoding
- Reverse Engineering
- Etc…
Data Recovery 분류 (2/4)
Partition Recovery
- MBR의 Partition Table에 잔존하는 정보를 이용한 Partition 복구
- Partition Table 없이 File System Signature를 이용한 복구
Undeletion
- 삭제된 파일은 실제 파일 Data가 삭제되지 않고 파일 Index의 일부 정 보만 삭제
- 이러한 남겨진 Index 정보를 이용하여 복구
Signature Search
- Application이 자신과 관련된 File을 Load할 때 정합성을 검사하기 위해 서 일정한 값(표식)을 File의 처음 또는 끝 부분에 표시하고 있음 이러한 표식 값을 검사하여 파일을 복구
Data Carving
- File System 정보 없이 순수 Low Image에서 파일을 검색하고 복구하는 기법
Data Recovery 분류 (3/4)
Finding hidden data
- Disk에서 사용하지 않는 영역, 의도적으로 사용되지 않는 영역으로의 조 작 등으로 발생한 영역에 File 또는 Data를 은닉했을 때 이를 복구
Password recovery, Decryption
- 파일이 존재하지만 암호화되어 있어 일반적으로 복구할 수 없는 경우
- 암호화에 사용된 Key를 찾기 위해서 BFA, Dictionary Attack 등을 수행 하거나 암호화 알고리즘 또는 암호 프로그램의 취약성을 이용하여 복구
Steganalysis
- Steganography와 같이 파일의 사용되지 않는 영역(not used, reserved), 사용되지 않는 bit 영역, 임의로 사용되지 않는 영역을 삽입 하는 방법으로 숨겨진 Data를 복구하는 기법
- 정상적인 File이나 약속된 값이 저장된 File 분석
Data Recovery 분류 (4/4)
Unpacking, decoding
- Packing: 파일에 저장된 Data가 중복되고 반복되는 데이터가 많아 불필 요하게 Size가 큰 파일을 효율적으로 압축하는 기술 Packing은 관련 프로그램 없이 일부러 내용을 어렵도록 하여 Data를 직 접 분석하는데 시간이 오래 걸림
- Packing 알고리즘을 이용하여 Unpacking하여 복구하는 기법 Encoding: 영문자 [SPACE]는 HTTP 상에서 전송될 때 %20 으로 표시하 여 전송하며 이러한 변환을 Encoding이라고 함
- Decoding: %20과 같이 일반적인 문자로 해석하기 위하여 [SPACE]로 변 환하는데 이러한 과정을 Decoding이라고 함
Reverse Engineering
- Binary로 되어 있는 응용프로그램을 분석하기 위해서 Assembly 언어 또는 C언어와 같이 분석자가 해석할 수 있는 코드로 변환하는 기법
'정보보안 > Forensic' 카테고리의 다른 글
Digital Forensic [FAT 파일 시스템] (0) | 2020.05.03 |
---|---|
Digital Forensic [파일 시스템 과 파티션] (0) | 2020.05.03 |
Digital Forensic [Windows Artifact 분석] (0) | 2020.05.03 |
Digital Forensic [Windows 레지스트리 증거 수집] (0) | 2020.05.03 |
Digital Forensic [메모리 수집 분석] (0) | 2020.05.03 |