목록분류 전체보기 (63)
Piki's Play
*디지털 포렌식의 세계는 개인 공부용입니다!! 정리가 대충되어있을 수 있습니다.* ▶ 메모리 분석 메모리 : 프로세스가 사용한 데이터, 프로세스 자체, 웹 브라우저를 통해 전송된 정보, 복호화된 데이터 ▷ 메모리 분석의 관심과 장,단점 1. 하드디스크에서 실행되지 않고 메모리상에서 바로 실해오디는 악성코드의 존재 2. 사용자 응용 프로그램의 프라이버시 보호 기능 강화 -> 암호화나 개인정보보호가 중요해지면서 악성코드조차도 보호하기도 함. 그런데 실행하기 위해서 복호화가 되어야 하므로 이때를 알기 위해서는 메모리 분석이 중요. 3. 안티 포렌식 기술의 확산으로 하드드라이브에 존재하고 있는 데이터의 무결성 불완전 ※ 라이브 포렌식과의 차이(라이브 포렌식이 메모리 포렌식보다 안좋은점) 1. 도구의 신뢰성 저하..

- 이번장에서는 UFS1, UFS2 파일시스템을 구성하는 데이터 구조체를 설명한다. 데이터 구조체 레이아웃과 해당 구조체들이 파일시스템 이미지에서 어디에 위치하는지 예를들어 설명하겠다. - 이전 장에서 언급한것 처럼 UFS 데이터 구조체는 다른 형식으로 값들을 저장하기 위해 여러 필드들을 포함하고있다. 예를들어 블록크기를 저장하기 위해 조각 개수와 바이트 개수 둘다 저장한다. 이렇게 다른 형식들을 제공하는 것은 운영체제가 매번 다른 값들을 계산하는 번거로움을 피하기 위해서이다. 어떤 운영체제는 오직 바이트 기반으로 블록크기를 결정하고, 다른 것들은 조각 크기로 블록크기를 결정할 수 있다. 이 장에서는 여러 형식들 중 하나만 확인하겠지만, 그 형식이 모든 도구나 운영체제들에서 적용될지는 장담할 수 없다. ..

16.5 파일 이름 범주 - 파일이름 범주는 inode와 다른 메타데이터에 사람이 읽기 가능한 이름들을 할당하는 데이터이다. 이 절에서는 UFS가 데이터를 어디에 저장하는지, 그리고 어떻게 분석하는지 설명하도록 하겠다. ▶ 개요 - UFS1과 UFS2는 ExtX와 동일한 파일이름 데이터 구조체를 사용한다. 디렉토리 엔트리 데이터 구조체는 파일의 이름, inode 주소, 그리고 유형 값을 저장한다. 구조체의 길이는 최대 파일의 길이가 255개 문자인 이름 길이를 참조한다. 이름은 ASCII로 저장되고, Ext이름은 null로 끝나지 않았지만 UFS에서는 null로 끝난다. - 디렉토리 엔트리 구조체들은 디렉토리에 할당된 블록에 위치한다. 디렉토리들을 일반 파일과 다르게 타입이 모드필드에 디렉토리로 설정이 ..

16.3 내용 범주 -> 내용범주는 파일과 디렉토리를 포함한다. 이 절은 UFS 파일과 디렉토리 내용을 어디에 저장하는지와 그것을 어떻게 분석하는지 설명하겠다. ▶ 개요 - UFS는 파일과 디렉토리를 저장하기 위해 조각과 블록을 이용한다. 조각(fragment)은 연속적인 섹터의 그룹이고, 블록(block)은 연속적인 조각의 그룹이다. 모든 조각들은 주소가 있고, 0으로 시작한다. 또한 블록주소는 조각의 첫 주소로 지정된다. 첫 블록과 조각은 파일시스템의 첫 번째 섹터이다. 블록의 최소크기는 4096바이트이고 블록의 조각 개수는 8개가 최대이다. ※ 아래 그림은 블록과 조각의 관계를 보여준다. -> 조각 64와 71일 포함하는 블록 64는 파일에 할당되었고, 조각 74와 75는 다른 파일에 할당되었다. ..

-> UFS(Unix File System)는 다양한 종류가 있으며 FreeBSD, HP-UX, NetBSD, OpenBSD, 애플 OS X, Sun 솔라리스 같은 유닉스 시스템에서 사용하는 파일시스템이다. 많은 운영체제들이 자신들에게 맞게 지속적으로 데이터 구조체들을 수정했지만, 내부구조의 개념은 거의 동일하다. 현재 이 파일시스템은 UFS1과 UFS2 두 종류가 있고, UFS2는 대용량 디스크와 더 큰 시간스탬프를 지원한다. 하지만 이 책에서는 두 파일시스템을 UFS라는 용어로 통일해서 사용하겠다. 수사관들은 유닉스 서버를 조사할 때 UFS 파일 시스템을 분석할 수 있다. Ext2와 Ext3는 UFS를 기반으로 발전했으며, 그 이유에 대해서는 앞장에서 상세히 설명했다. 이 장은 "Ext2와 Ext3 ..

14.6 응용프로그램 범주 - Ext3는 오직 한가지 응용프로그램 수준의 기능 즉, 파일스시템 저널만을 갖는다. Ext2에는 저널기능이 없고, 할당같은 다른 응용프로그램 범주기능이 일반 사용자 파일에 구현되어있다. ▶ 파일시스템 저널링 - 8장에서 설명했던 파일시스템 저널을 Ext3는 포함한다. 파일시스템 저널은 파일시스템이 손상되었을때 재빨리 복구할 수 있도록 파일시스템에 업데이트를 기록한다. ▷ 개요 - 파일시스템 저널은 보통 inode8을 사용한다. Ext3 저널은 슈퍼블록에서 위치가 지정되기 때문에 어디든 위치할 수 있긴하다. 저널은 호환시스템 기능으로 저널 사용시 슈퍼블록에 해당 값을 설정한다. 슈퍼블록은 또한 저널 장치를 위해 비호환 기능도 존재한다. 비호환 기능이 설정될 때 파일시스템은 외부..

14.5 파일 이름 범주 - 데이터 파일 이름 범주는 각 파일과 디렉토리 이름을 저장하는 데이터 구조체를 포함한다. 이 절에서는 그 데이터가 어디에 저장이되고, 그것들을 어떻게 분석하는지를 설명한다. ▶ 개요 - ExtX에는 파일이나 디렉토리의 이름을 저장하는 다양한 방법이 있는데, 여기서는 3가지 방법을 설명하겠다. 먼저 이름 할당에 사용하는 디렉토리 엔트리에 대해 알아보고 하드링크, 소프트 링크, 해시트리를 설명한다. ▷ 디렉토리 엔트리 - ExtX 디렉토리는 inode에서 특별한 타입 값이 있는 것을 제외하고는 정규 파일과 같다. 디렉토리들은 디렉토리 엔트리 데이터 구조체들의 목록을 포함할 블록들을 할당한다. 디렉토리 엔트리는 파일 이름과 파일의 메타데이터를 어디에서 찾을 수 있는지를 설명하는 간단..

-> 메타데이터 범주는 파일이나 디렉토리를 설명하는 데이터를 포함한다. 이 절은 데이터가 어디에 저장되어 있는지, 그리고 그것들을 어떻게 분석하는지에 대해 설명한다. ▶ 개요 - ExtX 에서 파일의 주 메타데이터는 inode 데이터 구조체에 저장된다. 추가적인 메타데이터는 확장된 속성들에 저장될 수 있다. ▷ inode - 모든 ExtX inode 들의 크기는 동일하고, 슈퍼블록에 정의되어있다. 한개의 inode는 모든 파일들과 디렉토리에 할당되고, 각 inode에는 1로 시작하는 주소가 있다. 슈퍼블록에서 크기가 주어지는 inode 집합은 각 블록 그룹에 할당된다. 각 그룹의 inode들은 테이블에 저장되고 그 위치는 그룹 기술자에서 주어진다. 그 그룹은 다음과 같은 계산으로 결정될 수 있다. gro..