분석 목적에 따른 분류
- 수사 관점
- 범행 흔적, 정보 복구, 검색 과정을 거쳐 정보 추출 목적
- 사고 대응 관점
- 사고 내용 분석후 조치해 추가 피해 예방
- 서비스 재개
분석 대상에 따른 분류
- 디스크 포렌식 : 하드디스크, CD-ROM 등 보조 기억장치에서 증거 수집
- 시스템 포렌식 : 운영체제, 응용 프로그램 및 프로세스 분석
- 네트워크 포렌식 : 네트워크 통해 전송되는 데이터 및 암호 분석
- 인터넷 포렌식 : www, ftp 등 인터넷 프로토콜 사용하는 증거 수집
- 데이터베이스 포렌식 : DB부터 데이터 추출해 증거 획득
- 암호 포렌식 : 문서나 시스템에서 암호 찾기
- 침해사고 포렌식 : 논리 폭탄, 메일 폭탄, ddos 등 침해사고
- 그외 기타 등등…
명확한 기준에 의해 구분되어있지 않다
수행과정
- 증거 획득
- 사본 데이터 생성, 휘발성 메모리 저장
위법하게 수집된 증거는 효력 X
무결성 유지
필요 (ex. 수사관의 폰과 대상시스템 시간이 한장에 나오도록 촬영)
- 증거 분석
- 분석실 이송해 여러 기법 사용
- 파일 분석 과 확인 과정에 대한
문서화 필요
- 원본
무결성 유지
- 증거 보관
- 무결성 보증가능한 환경에서 보관 및 격리
- 증거 제출 및 증거 조사
- 증거물에 꼬리표 달아 문서화 필요
- 문서화를 통해 획득, 분석 과정을 알 수 있도록 하여 증거물로서 타당성 제공
- 전문가가 검증가능한 방법으로 증거가 조작되지 않음을 증명할 수 있어야 한다
- 제 3자 검증
- 전자적 증거는 제출자가 진정서에 대해 입증
- 진정성 : 증거가 원본과 동일하며 위변조 되지 않음을 포함
- 전자적 증거는 제출자가 진정서에 대해 입증
세대별 컴퓨터
- 1세대 : 진공관
- 2세대 : 진공관을 트렌지스터로
- 3세대 : 집적회로 사용, 소형화
- 4세대
- 고밀도 집적회로, 소형화, 저렴한 가격
- PC 대중화
- 5세대
- 초고밀도 집적회로
- 인공지능 및 멀티미디어 가상현실 등을 목표
프로세스
프로세스
- 실행 중인 프로그램
프로세스 상태
- 실행상태(Run)
- 할당시간 만료 시(Time Runout) -> 준비상태 변경
- 준비상태(Ready)
- Dispatch
- 우선순위 높은 준비상태의 프로세스에게 프로세서 할당하는 것
- Dispatch
- 보류상태(Block)
- 입출력 등 외부신호 기다림
PCB (프로세스 제어블록)
- 프로세스 관련 정보를 가짐
- OS에게 정보 제공 목적
프로세스 작업
- 생성
- PCB 생성 및 프로세스 실행
- 소멸
- PCB 회수 및 프로세스 제거
- 일시 정지
- 수행 작업을 멈추고 대기
- 본인 프로세스 또는 타 프로세스에 의해 발생
- 재시작
- 일시정지된 프로세스를 실행 상태로 변경
인터럽트
- 예외적인 상황을 CPU에게 알리기 위한 수단
- ex. 입력, 시간
- 인터럽트가 없다면 cpu는 계속 입출력과 시간을 확인하는데 자원을 써야 한다
데이터의 단위
물리적 단위
비트
- 퀘터 (= 2bits)
- 니블 (= 4bits)
바이트
(= 8bits)워드
(= 2bytes = 16bit)- 더블워드
- 쿼드워드
논리적 단위
- 필드 (field)
- 여러 개의 바이트나 워드가 모여 이루어진 파일 구성의 최소 단위
- 레코드 (record)
- 프로그램 내 자료 처리 기본 단위
- (논리적 레코드)
- 블록 (block)
- 저장 매체 입출력 기본 단위
- (물리적 레코드)
- 파일 (file)
- 관련된 레코드의 집합
- 데이터베이스 (database)
- 파일(레코드)의 집합으로 계층적 구조를 갖는 자료 단위
빅 엔디안, 리틀 엔디안
- 빅 엔디안
- 큰쪽에서 작은쪽으로 값이 저장됨
- 직관적으로 읽히는 순서
- 큰쪽에서 작은쪽으로 값이 저장됨
- 리틀 엔디안
- 작은쪽 -> 큰쪽으로 값이 저장됨
데이터의 부호 결정
부호 지정
- 부호화 절대치
- 최상위 비트가 부호를 결정
- 1의 보수
- 음수는 양수에서 1의 보수를 취한 것
- 2의 보수
- 음수는 양수에서 1의 보수를 취한 후 1을 더한 것
소수점
- 고정 소수점
- 부동 소수점
- 부호, 지수, 가수를 이용해 소수를 표현
유니코드
시험안나올듯?
해시
저장 매체
ROM
- 읽기 전용 메모리
- PROM : 사용자가 한번 기록 가능
- EPROM : 소자에 강한 자외선으로 정보를 지울 수 있음
- EEPROM : 전기적으로 지우고 기록 가능
플래시 메모리
- 전기적으로 데이터를 지우고 재기록이 가능한 비휘발성 메모리
- EEPROM과 달리 블록 단위 프로그래밍 방식을 사용
- 덮어쓰기와 지우기는 임의 접근 X
- 대용량으로 부적합
- NAND 플래시
- 페이지 단위 읽기/쓰기 동작
- 지우기 횟수 제한됨
SSD
- NAND 플래시 사용
RAID
- RAID 0
- 디스크 조각 분배 방식 (Striping)
- 데이터 안정 보장 X
- 오류정정 기능 없음
- RAID 1
- 같은 데이터 중복 기록 (Mirroring)
- 안정성 크게 증가
- 볼륨 크기 변화 없음
- RAID 2, 3, 4
- 오류정정 정보를 기록하는 패리티 사용
- 한 디스크에 패리티 저장하므로 잘 사용하지 않는다
- RAID 5
- 패리티 정보를 모든 디스크에 나누어 저장
- rebuilding 중 성능이 크게 ㅉ떨어짐
- RAID 6
- 두개의 패리티 정보가 독립적으로 저장
- RAID 5보다 내장애성이 높음
- RAID 10 (1+0)
- RAID 1을 스트라이핑
- RAID 1(미러링)으로 구성한 것에 대해 RAID 0(스트라이핑) 적용
- 내장애성과 IO성능 필요시
- RAID 1을 스트라이핑
- RAID 50, RAID 60
- RAID 5, 6을 스트라이핑
- 저장 용량 확보 및 I/O 성능 필요시