디지털 포렌식 (Forensic) (62) 썸네일형 리스트형 [디지털포렌식전문가 2급 필기] 4-5-1. 트랜잭션 트랜잭션 - 완전히 수행하거나 전혀 수행되지 않은 상태로 회복되어야 함 - 데이터베이스를 변경시키고 그 변경이 완료되면 결과는 이후의 어떠한 고장에도 손실되지 않아야 함 - 완료될 때 까지 자신이 갱신한 값들을 다른 트랜잭션이 보게 해서는 안 됨 트랜잭션의 정의 또는 특징 - 데이터베이스에서 하나의 논리적 기능을 수행하기 위한 작업 단위 - 데이터베이스 복구 및 병행 수행 시 처리되는 논리적 작업 단위 - 한 번에 실행되어야 할 일련의 데이터베이스 연산 집합 트랜잭션의 특징ㄷ - Atomicity (원자성) - Consistency (일관성) - Isolation (고립성) - Durability (지속성) Atomicity - 트랜잭션의 연산은 데이터베이스에 모두 반영되든지 아니면 전혀 반영되지 않아야.. [디지털포렌식전문가 2급 필기] 4-4-4. SQL Injection SQL 인젝션 - 임의의 쿼리, 명령어를 조합하여 데이터베이스 인증을 우회/접속하는 해킹 기법 - 공격 코드를 검증되지 않거나 잘못 검증되는 문자열 스트링 값 기반의 변수를 가진 가변형 SQL에 투입하여 공격자가 원하는 작업을 실행하도록 하는 것 - 공격자가 자신이 생성한 SQL 질의를 응용 프로그램이 수행하게 만드는 것 - 데이터베이스 자체로는 보안이 안전하다 하더라도 응용 프로그램의 취약점을 이용하여 시스템에 심각한 피해를 줄 수 있는 것 - 응용에 들어 있는 SQL 문의 일부를 변경하여 불법적인 작업을 수행하는 일종의 보안 공격 SQL 인젝션 공격을 방어하기 위한 방법 - 데이터베이스 어플리케이션을 최소 권한으로 구동 - 데이터베이스 내장 프로시저를 사용 - 테이블 이름, 컬럼 이름, SQL 구조 .. [디지털포렌식전문가 2급 필기] 4-4-3. 데이터 제어어 (DCL) DDL, DML, DCL 에서 성격이 나머지 셋과 다른 것 - GRANT GRANT 명령어 - 데이터베이스 사용자에게 사용 권한을 부여하는 DCL 명령어 [디지털포렌식전문가 2급 필기] 4-4-2. 데이터 조작어 (DML) 뷰 (View) - 뷰의 정의는 기본 테이블처럼 ALTER 문을 이용하여 변경할 수 없음 - 뷰는 기본적으로 다른 테이블로부터 유도된 이름을 가진 가상 테이블 - 뷰는 테이블과 마찬가지로 SELECT 문을 사용할 수 있지만, INSERT, DELETE, UPDATE 문을 사용하는 데는 상당한 제한이 있음 - 여러 사용자의 상이한 응용이나 요구를 지원해 줌 - 사용자가 데이터 관리를 간단히 할 수 있도록 함 - 숨겨진 데이터를 위한 자동 보안이 제공 - 한 개 이상의 데이터베이스 테이블로부터 유도되어 만들어진 가상 테이블 - CREATE VIEW 명령어를 사용하여 정의 - 구현하는 방식은 크게 2가지 - 가장 보편적인 방식인 질의 수정 - 뷰에 대한 최초의 질의가 요청될 때 임시 뷰 테이블을 물리적으로 실.. [디지털포렌식전문가 2급 필기] 4-4-1. 데이터 정의어 (DDL) 데이터 정의어 (DDL)에 해당하는 명령어 - CREATE - ALTER - DROP DDL에 해당하지 않는 명령어 - ROLLBACK - SELECT - INSERT - DELETE ALTER TABLE - DDL에서 테이블에 대한 정의를 변경하는 명령어 Drop Table - DDL에서 테이블을 삭제하는 명령어 [디지털포렌식전문가 2급 필기] 4-4. 데이터베이스 언어 SQL - 비절차적 (Non-Procedural)인 고급 언어 - 개개의 튜플 단위로 처리하는 언어가 아니라 튜플을 집합 단위로 처리 - SQL은 데이터베이스 전용 언어로서 현재 보편적으로 사용되는 관계형 모델의 표준 언어 - SQL의 명령은 사용 용도에 따라 DDL(데이터 정의어), DML(데이터 조작어), DCL(데이터 제어어)로 구분할 수 있음 [디지털포렌식전문가 2급 필기] 4-3-2. 관계형 대수 관계 연산자 - select : 열을 기준으로 한 행의 subset - join : 열을 기준으로 한 각 행을 수평적으로 묶음 - union : 중복 배제를 기준으로 각 행을 수직적으로 묶음 join - 공통 속성을 중심으로 두 개의 릴레이션을 하나로 합쳐서 새로운 릴레이션을 만드는 연산 프로젝션 - 하나의 릴레이션에서 특정 속성들만 해당하는 열을 선택하는데 사용되는 관계 연산자 셀렉션 - 한 릴레이션에서 주어진 조건 식을 만족하는 튜플 만을 선택하는 관계형 대수 [디지털포렌식전문가 2급 필기] 4-3-1. 관계형 모델의 개념 개체 무결성 제약 - 관계 데이터 모델이 가지고 있는 무결성 제약 중 "어떠한 기본 키 값도 null 값이 될 수 없다'는 개념 무결성 (integrity) - 무결성 규정은 규정 이름, 검사 시기, 제약 조건, 위반 조치를 포함 - 무결성 서브 시스템의 주요 기능은 무결성 규정을 관리 유지하고 트랜잭션이 수행하는 갱신 연산이 무결성 규정에 위반되지 않는가를 감시 - 릴레이션 무결성 규정에서 과도 제약(transition constraint)은 데이터베이스의 한 상태에서 다른 상태로 변환되는 과정에서 적용되는 규정으로 데이터베이스 상태의 변환 직전과 직후의 비교가 관련됨 영역 (Domain) - 한 속성이 가질 수 있는 값의 범위 - 한 도메인은 하나의 데이터 형(Data Type)을 가짐 - 한 속성은.. [디지털포렌식전문가 2급 필기] 4-2-2. ER 모델 데이터베이스의 관계 (Relationship) - 엔터티와 엔터티 사이의 관계도 집합임 - 집합 간에 존재하는 무수히 많은 관계 중에 직접 종속인 것만을 관계로 보고모델링함 - 다대다 (M:M) 관계는 복합성을 증가시키므로, 발견 즉시 두 개의 일대다 (1:M) 관계를 갖는 관계 엔터티로 분해됨 - 엔티티 사이에 존재하는 연관성을 의미 ER 모델 - 특정 DBMS와 하드웨어에 모두 상관 없이 독립적으로 설계할 수 있는 모델 Chen에 의해 제안된 ER 모델의 구성 요소 - 엔티티 - 관계 - 속성 ERD - 정보화 시스템 구축할 때 데이터 모델링을 위한 도구 데이터베이스의 엔티티(Entity) - 실세계에서 독립적으로 존재 - 물리적 (개인, 차, 집, 종업원 등) 혹은 개념적(회사, 직업, 대학 과정 .. [디지털포렌식전문가 2급 필기] 4-2-1. 데이터베이스 모델링의 개념 개념 스키마 (Conceptual Schema) - 모든 응용 시스템들이나 사용자들이 필요로 하는 데이터를 통합한 조직 전체의 데이터베이스를 기술한 것 개념 모델 - 데이터베이스 설계의 가장 상위 레벨 - 총체적인 개관으로 실세계의 정보 환경의 개관을 이해하기 쉽게 보여줌 - 개념적 모델은 실세계의 정보 환경의 개관을 이해하기 쉽게 보여줌 - 가장 일반적으로 사용하는 개념 모델은 엔티티-관계 모델(ER 모델) - 개념 모델은 데이터 묘사와 식별의 기본이 됨 물리 모델 - 추상화의 가장 하위 단계 - 데이터가 디스크와 같은 저장 매체에 저장되는 것을 기술 계층형 데이터 모델 - 개체 타입 간 상, 하 관계가 존재 - 개체 타입들 사이에는 사이클이 허용되지 않음 - 두 개체 사이에는 하나의 관계만 허용 외부.. 이전 1 2 3 4 5 6 7 다음