본문 바로가기

ORACLE

[ORACLE] 오라클 포렌직에 필요한 것들

오라클 포렌식을 수행하는데 필요한 수행 방법은 크게 3가지 Principle과 8가지 Process로 정의 할 수 있다.

1. 프로세스 방법론

1.1 Principles

- 반복된 결과가 만들어 지는 프로세스의 문서화
- 침해흔적의 증거자료 남기기
- 법적인 증거 자료로서의 무결성 검증(Chain of Custody)

1.2 Process

- 시간대 별로 컴퓨터 이벤트에 대한 기록
- 침해사고에 대한 식별
- 무결성한 파일의 보존 및 백업
- 서비스 및 삭제된 파일복구
- 시간대 별 자료 및 로그 정보의 수집
- 시간대 별 모든 이벤트 및 로그정보에 대한 분석
- 키 데이터에 대한 상세한 분석 및 examination
- 법적 증거 자료에 대한 적용방법

2. 포렌식 하기 전의 백업과정

2.1 RMAN(Recovery Manager)

RMAN은DBA의 강력한 운영체제 독립 스크립트 언어로 backup, restore, recovery 프로세스를 관리하는데 도움을 주는 오라클유틸리티이다.

RMAN은 명령어 라인 기반의 인터페이스 및 Oracle Enterprise Backup Manager(GUI)를 통해서도 사용 할 수 있다.

2.2 Full Logical Export

[파일위치]$ORACLE_HOME/exp “sys/password as sysdba”full=y file=export.dump  

2.3 Cold Backup(오프라인 상태)

아래 경로에 있는 파일을 백업 받는다.

[파일위치]cp /oracle/oradata/SID/*.dbf  /bak/oradata/clone/cp /oracle/oradata/SID/*.log  /bak/oradata/clone/cp /oracle/oradata/SID/*.ctl  /bak/oradata/clone/ 

2.4 Hot Backup(온라인 상태)

온라인 상태에서 Hot Backup을 실시한다. 아래 명령어는 Hot Backup 실시한다.

[파일위치]Alter tablespace data begin backupAlter database backup controlfile to C:\bakcup.bak 

2.5 확인(Verify)

[실행명령어]dbv file=C:\oracle\datafile.bak logfile=C:\dbverify log  

2.6 삭제된 데이터의 복구 및 Attack Hide 탐지

다음과 같이 flashback과 Redo 로그를 통해서 삭제된 데이터를 복구하고 공격자가 Hide 시킨 것이 없는 지 점검한다.
또한, LogMinder를 사용하여 Redo Log 로그 분석한다.

[점검쿼리문]- select ora_rowscn, name from sys.user$;- select To_Char(TIME_DP, dd/mm/yyyy hh:m:ss, SCN_BAS FROM SYS.SMON_SCN_TIME; 

3. 분석도구

상세한 데이터 분석을 위해 아래와 같은 분석도구를 이용한다.

3.1 Oradebug

http://julian.dyke.users.btopenworld.com/Oracle/Diagnostics/Tools/ORADEBUG/ORADEBUG.html

3.2 Ian Redfern TNS Protocol Analysis

http://www.ukcert.org.uk/oracle/Oracle%20Protocol.htm

3.3 Pete Finning’s PLSQL unwrapping

http://www.insight.co.uk/presentations/BlackHat%20conference.pdf

4. 로그분석

4.1 Listener 로그

오라클 리스너 로그위치는 다음과 같다.

[파일위치]/oracle/product/10.0.2/db_4/network/listener.log 

4.2 Alert 로그

Alert 로그는 DB 시스템 중요한 알람상태(alert)를 알려 주는 로그이다.

[파일위치]App/oracle/admin/ocl/bdump 

4.3 Sqlnet.log

데이터베이스 커넥션이 실패한 로그를 점검한다.

4.4 Redo Log : 데이터파일 안에 체크되지 않은 현재의 변경사항(확장자는.dbf)

[파일위치]- /u01/app/oracle/oradata/orcl/redo02.log/u01/app/oracle/oradata/orcl/redo01.log/u01/app/oracle/oradata/orcl/redo03.log 

4.5 최종승인(Fine-Granted) 감사로그

[점검쿼리문]FGA_LOG$, DBA_FGA_AUDIT_TRAIL VIEW Auditing 

4.6 Oracle 데이터베이스의SYS.AUD$ 테이블과DBA_AU DIT_TRAIL VIEW Auditing 하라

5. OS Auditing

데이터베이스 시스템의 O/S 시스템 Audit 로그를 점검한다.

[파일위치]/us01/app/oracle/admin/orcl/adump
출처 : Oeasy.net Lab실 http://www.oeasy.net/security/forensics4.html

'ORACLE' 카테고리의 다른 글

[ORACLE] 점검 목록  (0) 2010.04.14
[ORACLE] 시작과 종료  (0) 2010.04.14
[oracle] 락 걸린 테이블 확인하고 세션죽이기  (0) 2010.04.12
[oracle] 오라클 삭제하기  (0) 2010.04.12
[ORACLE] 10g Install Guide  (0) 2010.04.12