PowerPoint 프레젠테이션

Similar documents
목 차

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

Oracle Database 10g: Self-Managing Database DB TSC

The Self-Managing Database : Automatic Health Monitoring and Alerting

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

슬라이드 1

PowerPoint 프레젠테이션

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

MS-SQL SERVER 대비 기능

기업의 주요 정보자산의 보호와 관리를 위한 성공적 보안 모델

Slide 1

62

最即時的Sybase ASE Server資料庫診斷工具

<30362E20C6EDC1FD2DB0EDBFB5B4EBB4D420BCF6C1A42E687770>

Simplify your Job Automatic Storage Management DB TSC

Tablespace On-Offline 테이블스페이스 온라인/오프라인

Jerry Held

오라클 데이터베이스 10g 핵심 요약 노트

Backup Exec

13주-14주proc.PDF

Microsoft PowerPoint - 6.pptx

Intra_DW_Ch4.PDF

Portal_9iAS.ppt [읽기 전용]

PowerPoint Presentation

PRO1_09E [읽기 전용]

PowerPoint Presentation

PRO1_04E [읽기 전용]

DBMS & SQL Server Installation Database Laboratory

PCServerMgmt7

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

CD-RW_Advanced.PDF

목차 BUG 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG ROLLUP/CUBE 절을포함하는질의는 SUBQUE

ETL_project_best_practice1.ppt

10.ppt

untitled

세미나(장애와복구-수강생용).ppt

슬라이드 1

untitled

Web Application Hosting in the AWS Cloud Contents 개요 가용성과 확장성이 높은 웹 호스팅은 복잡하고 비용이 많이 드는 사업이 될 수 있습니다. 전통적인 웹 확장 아키텍처는 높은 수준의 안정성을 보장하기 위해 복잡한 솔루션으로 구현

Oracle hacking 작성자 : 임동현 작성일 2008 년 10 월 11 일 ~ 2008 년 10 월 19 일 신규작성 작성내용

F1-1(수정).ppt

<4D F736F F F696E74202D20352E B8A620C5EBC7D120B0B3C0CEC1A4BAB820BAB8C8A320B9D720B3BBBACEC5EBC1A6BFA120B4EBC7D120C1FAB9AEB0FA20C7D8B4E45FC0CCC1F8C8A32E BC8A3C8AF20B8F0B5E55D>

Remote UI Guide

Orcad Capture 9.x

Oracle 보안 TDE Author 고요한 Creation Date Last Updated Version V2.0 Copyright(C) 2004 Goodus Inc. All Rights Reserved Version 변경일자

Cache_cny.ppt [읽기 전용]

소개 TeraStation 을 구입해 주셔서 감사합니다! 이 사용 설명서는 TeraStation 구성 정보를 제공합니다. 제품은 계속 업데이트되므로, 이 설명서의 이미지 및 텍스트는 사용자가 보유 중인 TeraStation 에 표시 된 이미지 및 텍스트와 약간 다를 수

Tina Admin

Dropbox Forensics

Slide 1

Microsoft Word - 10g RAC on Win2k.doc

Oracle Database 12c High Availability

solution map_....

ALTIBASE HDB Patch Notes

Document Server Information Items Description Test Date 2011 / 05 / 31 CPU Intel(R) Xeon(R) CPU 2.40GHz X 8 Main Memory 1GB O/S version OEL 5.

Oracle9i Real Application Clusters

歯sql_tuning2

vm-웨어-01장

Security Overview

1217 WebTrafMon II

[Brochure] KOR_TunA

15_3oracle

oracle9i_newfeatures.PDF

초보자를 위한 ADO 21일 완성

Microsoft PowerPoint - 10Àå.ppt

untitled

DW 개요.PDF

예제소스는 에서다운로드하여사용하거나툴바의 [ 새쿼리 ]( 에아래의소스를입력한다. 입력후에는앞으로실습을위해서저장해둔다. -- 실습에필요한 Madang DB 와 COMPANY DB 를모두생성한다. -- 데이터베이스생성 US

FlashBackt.ppt

<4D F736F F F696E74202D F6E20325F32BFF93033C0CF5FBFA3C5CDC7C1B6F3C0CCC1EE20C8AFB0E6BFA1BCADC0C720BAF1C1EEB4CFBDBA20C1A4BAB8BAB8C8A3B8A620C0A7C7D120BFC0B6F3C5AC20BAB8BEC820BCD6B7E7BCC75FB1E8C5C2C7FC2E

리뉴얼 xtremI 최종 softcopy

Model Investor MANDO Portal Site People Customer BIS Supplier C R M PLM ERP MES HRIS S C M KMS Web -Based

슬라이드 1

디지털포렌식학회 논문양식

네트워크 안정성을 지켜줄 최고의 기술과 성능 TrusGuard는 국내 최초의 통합보안솔루션으로서 지난 5년간 약 4천여 고객 사이트에 구축 운영되면서 기술의 안정성과 성능면에서 철저한 시장 검증을 거쳤습니다. 또한 TrusGuard는 단독 기능 또는 복합 기능 구동 시

Windows Storage Services Adoption And Futures

thesis

UDP Flooding Attack 공격과 방어

RDB개요.ppt

PRO1_02E [읽기 전용]

APOGEE Insight_KR_Base_3P11

Microsoft PowerPoint - 가상환경에최적화된_NetBackup_Appliance

dbms_snu.PDF

¨ìÃÊÁ¡2

PowerPoint 프레젠테이션

untitled

LCD Display

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

<4D F736F F D205BB4EBBBF3C1A4BAB8B1E2BCFA5DB1E2BCFAB9AEBCAD2D524D414EBBE7BFEBBFB9C1A65F39695F313067>

Microsoft PowerPoint - Tech-iSeminar_Managing_Tablespace.ppt

초보자를 위한 분산 캐시 활용 전략

03여준현과장_삼성SDS.PDF

Sena Device Server Serial/IP TM Version

<목 차 > 제 1장 일반사항 4 I.사업의 개요 4 1.사업명 4 2.사업의 목적 4 3.입찰 방식 4 4.입찰 참가 자격 4 5.사업 및 계약 기간 5 6.추진 일정 6 7.사업 범위 및 내용 6 II.사업시행 주요 요건 8 1.사업시행 조건 8 2.계약보증 9 3

@OneToOne(cascade = = "addr_id") private Addr addr; public Emp(String ename, Addr addr) { this.ename = ename; this.a

PowerPoint 프레젠테이션

시스코 무선랜 설치운영 매뉴얼(AP1200s_v1.1)

vm-웨어-앞부속

Result Cache 동작원리및활용방안 엑셈컨설팅본부 /DB 컨설팅팀김철환 개요 ORACLE DBMS 를사용하는시스템에서 QUERY 성능은무엇보다중요한요소중하나이며그 성능과직접적인관련이있는것이 I/O 이다. 많은건수를 ACCESS 해야만원하는결과값을얻을수있는 QUER

기타자료.PDF

Transcription:

중요데이터암호화와 특권사용자통제를위한 베스트프랙티스 한국오라클 DB Security Solution Specialist 노형준

Agenda Big Picture of Oracle DB Security Advanced Security Option Database Vault Summary 2

Big Picture of Oracle DB Security 3

Database Security 사전예방 모니터링 / 감지 관리보안 Encryption Redaction & Masking Privileged User Controls Activity Monitoring Database Firewall Auditing and Reporting Sensitive Data & Database Discovery Configuration & Vulnerability Scan Patch Automation 4

DB Security Big Picture Oracle Audit Vault Audit consolidation Oracle Database Firewall Applications Network SQL Monitoring and Blocking Encrypted Database Encrypted Backups Procureme Auditing Authorization Authentication Encrypted Traffic Redaction Oracle Transparent Advaced Security Data Encryption Option ( Transparent Data Encryption ) Oracle Database Vault Unauthorized DBA Activity Multi-factor Authorization DB Consolidation Security Oracle Label Security Data Masking Oracle Masking 5

Advanced Security Option 6

Database Security 사전예방 모니터링 / 감지 관리보안 Encryption Redaction & Masking Privileged User Controls Activity Monitoring Database Firewall Auditing and Reporting Sensitive Data & Database Discovery Configuration & Vulnerability Scan Patch Automation 7

안전행정부개인정보보호법 : 기술적보호조치 개인정보의안전성확보조치기준고시및해설서.hwp ( p38 ) 8

Oracle 암호화알고리즘 미국국립표준기술연구소 ( NIST ) 규정 FIPS-Compliant 알고리즘사용 - AES : Federal Information Processing Standard (FIPS) 197 - TDES : Federal Information Processing Standard (FIPS) 46-3 Oracle ASO : Global 표준 AES (128, 192, 256), Triple DES 168 알고리즘지원 AES, 3DES 활용 Oracle 보안 Solution 은미국연방정부정보처리표준 FIPS 140-1 인증보유 Algorithm Key Size Name AES (Advanced Encryption Standard) AES (Advanced Encryption Standard) AES (Advanced Encryption Standard) Three DES (Data Encryption Standard) 128 bits AES128 192 bits(default) AES192 256 bits AES256 168 bits 3DES168 9

Advanced Security Option Transparent Data Encryption Encrypted Data Disk Backups Exports Applications Managed Keys Off-Site Facilities Columns or Tablespaces 암호화 안전한암호화 Key 관리 Database files on disk and on backups 보호 DB 에 Write 시암호화, Read 시복호화 적용에따른 Application 변경없음, 낮은부하 Application 변화, 성능변화낮은최적의 DB 암호화솔루션 10

SGA 1 1 2 DBWR 1 2 Advanced Security Option Column, Tablespace 암호화 2 10g 3 3 3 4 4 4 Server Process 3 4 암호화복호화 4 3 Column 암호화 SQL Result 3 4 3 SGA 4 3 3 Server Process 3 4 1 4 4 11g 복호화 1 DBWR 1 2 2 2 암호화 Tablespace 암호화 SQL No 어플리케이션소스수정 1 3 2 4 일반테이블스페이스 일반블록암호화대상블록특정칼럼만암호화된블록전체암호화된블록 2 1 3 4 일반테이블스페이스암호화된테이블스페이스 SQL + Encrypt/Decrypt Function + DB Kernel 에서암 / 복호화가수행되어안정적인성능을보장 암 / 복호화의자동수행을통해관리항목증가를최소화 어플리케이션에투명하게 ( 소스수정없이 ) 적용 11

Advanced Security Option 안전한 Key 관리 마스터암호화키 ( 암호화 ) Column 암호화키 ( 암호화 ) Tablespace 암호화키 ( 암호화 ) 접근암호입력 별도보안관리자에의해 전자지갑관리 전자지갑 (File or HSM) 암호화키에의해데이터자동암호화 보다안전하게암호화데이터를관리하기위해 3 중의암호화키관리구조를채택 HSM (Hardware Security Module) 을통해성능및암호화키에대한높은안전성을제공 12

Advanced Security Option File 포함전구간암호화 SQL Layer Buffer Cache SSN = 987-65-.. expdp. Encrypted Export file @#4f9kq90 b23490bv@ #$9vj943)IB 4390#90w3 b0aqer9 P[ 32 Credit Card # 주민등록번호주소전화번호 Oracle Database data blocks *M$b@^s%&d7 undo blocks temp blocks redo logs flashback logs 디스크에저장되는데이터뿐만아니라 undo block, temp block, redo log, flashback log 에대한암호화를지원 데이터백업을위해일반적으로많이사용되는 RMAN 및 EXP/IMP 시암호화지원 13

Advanced Security Option 쉬운운영관리 데이터에대한암호화수행을위해추가적인관리항목이발생하거나새로운기술을습득하여야하는관리자의업무부하를최소화할수있는방안을제공합니다. 기존 Oracle 관리기술을그대로사용 암 / 복호화 - Column 암호화 CREATE TABLE employee ( first_name VARCHAR2(128), last_name VARCHAR2(128), emp_id NUMBER, salary NUMBER(6) ENCRYPT using 'AES256' ); create unique index idx_card_id on secure_info(card_id); ^#^*> &$! ALTER TABLE employee MODIFY (salary DECRYPT); - Tablespace 암호화 CREATE TABLESPACE securespace DATAFILE /home/user/oradata/secure01.dbf SIZE 150M ENCRYPTION USING 'AES256' DEFAULT STORAGE(ENCRYPT); [GUI 관리툴 (EM) 에서암 / 복호화관리 ] 14

Advanced Security Option 성능저하최소 신규시스템적용및기존시스템에암호화솔루션을적용할모든경우에도성능저하현상을최소화합니다. 52% Oracle TDE 적용전후 CPU 사용현황 ( 암호화적용후 CPU 평균사용량 2% 증가 ) Oracle TDE 적용전후 TPM 변화량 구분평균 TPM 비율 TPM 측정 41% 43% 10g 11433 100% 11g 11448 100.1% 11g ( 암호화 ) 11184 97.82% 11g Version Up 암호화적용 11g 암호화시 10g 대비 TPM 이 97.82% ( 약 2.18% 정도의감소발생 ) 15

Advanced Security Option 신속한초기 Data 암호화 암호화솔루션도입으로인해기존데이터를암호화할때다운타임을최소화할수있도록 On-line 상에서이를수행하거나가장빠르게수행할수있는방안을제공 Change Materialized View [ Online Redefinition] [ 가장빠른암호화 ] CTAS/I TAS [ SOURCE] [ TARGET] Network Replication 1. 서비스를유지하면서암호화를수행할수있는 On-line Redefinition 기능을제공 2. 동일 DB 내에서 Parallel CTAS 를통해가장빠른암호화수행가능 3. 새로운장비도입과같은물리적으로분리되어있는환경에서 Oracle Replication 솔루션을통해서비스를유지하면서암호화수행 16

Tablespace 암호화 ( AES128 ) 1. 암호화 Key 및 Wallet 생성 -- sqlnet.ora : wallet 생성위치명시 ENCRYPTION_WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METH OD_DATA=(DIRECTORY=/oracle/app/oracle/product/11.2.0/dbs))) -- Master key 생성 SQL> alter system set encryption key identified by "oracle123!"; 2. 암호화 Tablespace 생성 -- 보통 Tablespace CREATE TABLESPACE "POC_TABLESPACE" DATAFILE '/oracle/data/korea/poc_table.dbf' SIZE 400M LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO; -- 암호화 Tablespace CREATE TABLESPACE "POC_TABLESPACE_ENC" DATAFILE '/oracle/data/korea/poc_table_enc.dbf' SIZE 400M LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ENCRYPTION USING 'AES128' DEFAULT STORAGE(ENCRYPT); 3. 암호화확인 SQL> select tablespace_name, encrypted from dba_tablespaces where tablespace_name like 'POC%' order by 2; TABLESPACE_NAME ENC ------------------------------ --- POC_TABLESPACE NO POC_TABLESPACE_ENC YES POC_INDEX_ENC YES 4. 암호화 Table 생성 create table customers ( ~~~) Tablespace POC_TABLESPACE_ENC ; create table orders ( ~~~) Tablespace POC_TABLESPACE_ENC ; Alter table emp move tablespace POC_TABLESPACE_ENC ; EXEC DBMS_REDEFINITION.START_REDEF_TABLE( POC', EMP', EMP_TEMP'); 17

Column 암호화 ( AES128 ) Column 암호화적용 create table customers ( customer_id number(10) encrypt using 'AES128' 'NOMAC' NO SALT, customer_name varchar2(20) encrypt using 'AES128' 'NOMAC' NO SALT, birth_year varchar2(2), birth_month varchar2(2), birth_day varchar2(2), security_id varchar2(14), card_company_id varchar2(4), credit_card_id varchar2(20) encrypt using 'AES128' 'NOMAC' NO SALT, phone1 varchar2(15) encrypt using 'AES128' 'NOMAC' NO SALT, phone2 varchar2(15) encrypt using 'AES128' 'NOMAC' NO SALT, zip varchar2(10), address01 varchar2(256) encrypt using 'AES128' 'NOMAC' NO SALT, address02 varchar2(256) encrypt using 'AES128' 'NOMAC' NO SALT ); Column 암호화적용 create table orders ( order_id number(10), order_date varchar2(6), product_name varchar2(128), order_price number(10), order_num number(10), customer_id number(10) encrypt using 'AES128' 'NOMAC' NO SALT, security_id varchar2(14) encrypt using 'AES128' 'NOMAC' NO SALT, credit_card_id varchar2(20) encrypt using 'AES128' 'NOMAC' NO SALT, phone varchar2(15) encrypt using 'AES128' 'NOMAC' NO SALT, zip varchar2(10), address01 varchar2(256) encrypt using 'AES128' 'NOMAC' NO SALT, address02 varchar2(256) encrypt using 'AES128' 'NOMAC' NO SALT ); 18

Advanced Security Option Downtime 없는 DB 암호화 Online Redefinition 을이용한무중단암호화 [ Downtime 최소화 ] 실시간트랜잭션 Transform( 암호화 ) *M$b@^s%&d7 암호화에따른영향도최소화 Online 상태에서서비스무중단암호화가능 DML 변경이력수집 Transform ( 암호화 ) 암호화테이블 *M$b@^s%&d7 Replication Solution 인 Materialized View 기능을이용해 Online Redefinition 수행 관련 Objects (procedure, function, package) 의 Status 변경간단 19

Advanced Security Option Downtime 없는 DB 암호화 Online Redefinition 작업 STEP 1) 대상 Table 과동일한암호화된 Tablespace 에임시테이블생성. 2) Redefinition 시작 SQL>exec dbms_redefinition.start_redef_table(uname => username', orig_table=> source_table', int_table=> temp_table'); 3) DML Sync 하기위한임시 Table 선언및 Sync sql>exec dbms_redefinition.sync_interim_table( username', soruce_table', temp_table'); 4) Redefinition 종료 ( 임시 Table 에처리된 DML 반영및원본, 임시 Table 변경 ) sql>exec dbms_redefinition.finish_redef_table( username', source_table', temp_table'); 5) Index and Constraints 조치 (Option) 6) 관련 Objects compile (Procedure, Function, Package) 20

Advanced Security Option 약간의 Downtime DB 암호화 Parallel & Fastest CTAS ( Create 암호 Table As Select ) or ITAS ( Insert 암호 Table As Select ) 활용 [ Downtime 최소화 ] PQ 1 Parallel processor PQ 2 Parallel processor PQ 3 Parallel processor [ Parallel 최대활용하여 Downtime 최소화 ] CTAS or ITAS 문장을이용한가장빠른암호화방식 System Resource 를최대사용하는방식으로 DB Downtime 최소화 Data 재구성효과발생 Index 구성도 Parallel 사용 21

Advanced Security Option 약간의 Downtime DB 암호화 CTAS/ITAS 작업 STEP 1) Source Table 과동일한암호화된임시테이블생성. 1-1) CTAS 의경우 sql>create /*+ parallel append */ encrypt_table as select * from source_table; sql>create /*+ parallel append */ encrypt_table tablespace encrypt_tablespace as select * from source_table; 1-2) ITAS 의경우 sql>insert /*+ parallel append */ into encrypt_table select * from source_table; 2) Rename Original Table sql> alter table rename source_table to temp_source_table; sql> alter table rename encrypt_table to source_table; 3) Create Index and constraints 22

Data Redaction 민감한 Application Data 변조처리 Advanced Security Option 조회허용 User 조회불가 User Policy Credit Card # 5105-1051-0510-5100 5454-5454-5454-5454 5500-0000-0000-0004 Application User name, IP address, application context, and other factors 에따라운영 Data 변조 Display 가능 Application 에투명하게적용 최소부하로운영서버 Data 변조기능지원 DB 내부우회경로원천차단 개인정보보유운영시스템적용조회 Level 분리하여운영 23

Full Data Redaction 기능변환기능 Stored Data 10/09/1992 Redacted Display 01/01/2001 Partial 987-65-4328 XXX-XX-4328 RegExp first.last@example.com [hidden]@example.com Random 5105105105105100 5500000000000004 24

Data Redaction 장점 Application 투명성 사용되는모든 Column data types 지원 Table, View, Materialized view Redacting 가능 Data type 유지및추가로정의가능 Database cursor sharing 유지가능 Database query plan 동일 Cache, buffers, storage 내 Data 를변경하지않음 Backup & restore, upgrade & patch, export/import, replication 과같은운영 operation 에변동없음 25

Data Redaction 장점관리편의성 Oracle Enterprise Manager or Command-line API 통해운영가능 Common PCI and PII data 에대한 Redaction format library 제공 Database 중심의중앙집중적인정책관리 즉각적인정책반영, 현재 Active sessions 까지가능 Database kernel 내동작, 별도설치필요없음 26

Application Screen Before Redacting 27

Application Screens After Redacting DBMS_REDACT.ADD_POLICY( object_schema => 'CALLCENTER', object_name => 'CUSTOMERS' column_name => 'SSN'... 28

Data Redaction in Oracle Enterprise Manager 정책관리 29

Data Redaction ( Partial ) 1.Redaction Policy 삭제 -- Drop Redaction Policy BEGIN DBMS_REDACT.drop_policy(object_schema => RED',object_name => 'EMP_RED',policy_name => 'Employee Redaction Test' ); END; / 2.Redaction Policy 생성 BEGIN DBMS_REDACT.add_policy(object_schema => 'RED',object_name => 'EMP_RED',policy_name => 'Employee Redaction Test',expression => 'SYS_CONTEXT(''USERENV'',''SESSION_USER'') NOT IN ( ''RED'' ) OR SYS_CONTEXT(''USERENV'',''SESSION_USER'') IS NULL',column_name => 'JUMIN',function_type => DBMS_REDACT.PARTIAL,function_parameters => 'VVVVVVVFVVVVVVV,VVVVVVV- VVVVVVV,*,8,14'); END; / 3.Redaction 대상 Table 조회 select * from red.emp_red ; EMPNO ENAME JOB JUMIN ---------- ---------- --------- -------------------- 7369 SMITH CLERK 7369736-******* 7499 ALLEN SALESMAN 7499749-******* 7521 WARD SALESMAN 7521752-******* 7566 JONES MANAGER 7566756-******* 7654 MARTIN SALESMAN 7654765-******* 7698 BLAKE MANAGER 7698769-******* 7782 CLARK MANAGER 7782778-******* 4. 일반 Table 조회 select * from red.emp_no_red; EMPNO ENAME JOB JUMIN ---------- ---------- --------- ------------------------------ 7369 SMITH CLERK 7369736-7369736 7499 ALLEN SALESMAN 7499749-7499749 7521 WARD SALESMAN 7521752-7521752 7566 JONES MANAGER 7566756-7566756 7654 MARTIN SALESMAN 7654765-7654765 7698 BLAKE MANAGER 7698769-7698769 7782 CLARK MANAGER 7782778-7782778 30

Data Redaction ( Partial ) 1.Redaction 대상 Table 조회 oracle@[korea1]:/home/oracle # sqlplus app/app 2.Redaction 대상 Table 우회유출시도 oracle@[korea1]:/home/oracle # sqlplus app/app SQL> select * from red.emp_red ; EMPNO ENAME JOB JUMIN ---------- ---------- --------- -------------------- 7369 SMITH CLERK 7369736-******* 7499 ALLEN SALESMAN 7499749-******* 7521 WARD SALESMAN 7521752-******* 7566 JONES MANAGER 7566756-******* 7654 MARTIN SALESMAN 7654765-******* 7698 BLAKE MANAGER 7698769-******* 7782 CLARK MANAGER 7782778-******* SQL >create table emp_red_breach 2 as select * from red.emp_red; as select * from red.emp_red * ERROR at line 2: ORA-28081: Insufficient privileges - the command references a redacted object. 31

Database Vault 32

Database Security 사전예방 모니터링 / 감지 관리보안 Encryption Redaction & Masking Privileged User Controls Activity Monitoring Database Firewall Auditing and Reporting Sensitive Data & Database Discovery Configuration & Vulnerability Scan Patch Automation 33

DBA Database Administrator DBA should manage Database, Not Data 34

Database Users and Security 관리 Tuning Recovery Managing DBAs Create Security Policies to protect data Senior DBA Security Admin Accounts Admin Junior DBA Create and manage Database Users Backup Patch Install Application user Separation Of Duties 35

접근통제의중요성허용된사용자에대해서도안전한접근제어필요 비인가된 IP 주소 재무담당자 비인가된 DB 접속프로그램 정당한권한을가진사용자도인가된환경으로부터접근인지를항시점검 사용자의실수혹은고의로수행될수있는악의적행위 ( 명령어 ) 를차단가능 DB 서버내부에서의접근및우회접근시도에대한사전차단이필수 36

Oracle Database Vault 내부관리자, 사용자통제 Application Procurement HR Finance select * from finance.customers Application DBA DBA 누가, 어디서, 언제, 어떻게 Data 에접근하는지를 Rules, Factors 로통제 관리자 Application Data 접근에대한통제 Application 변경없음, Enterprise Data Governance 강화 임의적인 DB 변경관리통제 37

Oracle Database Vault 데이터베이스내확실한권한분리및통제 데이터베이스내슈퍼유저인 DBA 권한을가진사용자도보호영역의데이터에는접근불가능 보안관리자가접근을허용한유저만이보호영역의데이터에접근가능 성능저하없이기존 Application 에쉽게적용가능 DBA HR DBA select * from HR.emp HR HR HR 데이터보호영역 예 ) 슈퍼유저 (DBA 권한보유사용자 ) 도인사데이터나재무데이터에는접근불허 재무 DBA Fin Fin 재무데이터보호영역 더이상모든데이터에접근권한을가진유저는존재하지않음 38

Oracle Database Vault 다양한조건에의한접근및실행제어 Database Vault 에서제공하는주요조건 사용자명사용자 IP 프로그램명접근시간 예 : 주중 ( 월 ~ 금 ) 09:00 ~ 18:00 사이에는 HR 스키마에대한 Alter,Drop Table 작업을하지못한다. 월요일 14:25 분 HR.CUSTOMERS 에대한 Alter,Drop Table HR DBA 월요일 19:01 분 HR.CUSTOMERS 에대한 Alter,Drop Table HR 스키마 39

Oracle Database Vault 상세접근제어보고서자동생성 다양한접근제어보고서를실시간으로확인 보호영역접근이력보고서 허가되지않은명령어실행차단이력보고서 40

Kernel 방식접근제어 Oracle Database Vault 1 모든우회접근차단가능 (DBA 를통한무제한적인데이터접근도차단가능 ) 접근제어대상테이블에대한 View, Synonym, PL/SQL, Dynamic SQL 등의우회수단으로유출을시도해도모두차단 우회적인데이터유출시도차단 무제한적인데이터접근차단 View Synonym PL/SQL Dynamic SQL 중요데이터 DBA Database Vault - 보안영역 (Realm) 41

Kernel 방식접근제어 Oracle Database Vault 2 로컬접근통제가가능 Database Vault는 Kernel 내부에서접근제어메커니즘이동작하기때문에로컬접근도모두통제외부접근제어솔루션은직접접근통제불가 Telnet 접속후로컬접근 H/W 장비콘솔을통해로컬접근 SQL * Net BEQ 중요데이터 외부접근제어솔루션의로컬접근대비모듈은감사기능정도만수행 42

Kernel 방식접근제어 Oracle Database Vault 3 별도의서버가불필요 ( 동일데이터베이스 Kernel 내부에추가설치되는방식으로추가비용발생없음 ) 외부접근제어솔루션의경우에는보안서버용하드웨어가별도로필요하기때문에추가적인비용발생 Database Vault Oracle Database OS 관리, 설정 웹을통한원격접속 ( 보안정책설정 ) 43

A 사 : DB Vault 사례 AP 우회침투를통한 Data 유출방지방안 WAS / AP 서버 Internet 정형화된접근 Oracle ASO : TDE 외부접속자 외부망 정형쿼리 비정형쿼리 정형화된접근 Oracle DB Vault Client 접근제어 DB 서버 내부사용자 내부망 DB 접근통제보안이슈 보안대책 악의적인외부 / 내부사용자가 DB 서버에접속할때 DB 보안서버를경유하지않고 AP 서버를통한우회접근통해중요정보유출가능 Server 접근제어 : TCP*Wrapper 사용 IP 접근차단 ( 허용 IP 만접속가능 ) DB 접근제어 : SQL*NET.ora ( TCP.INVITED_NODES 허용 IP 만접속가능 ) DB Vault : SQL*Plus 차단 ( only DBA IP, sys or system 접속가능 ) ASO ( TDE ) : DB Tablespace 암호화적용으로대량 Data 유출방지 44 44

Summary 45

Database Security 사전예방 모니터링 / 감지 관리보안 Encryption Redaction & Masking Privileged User Controls Activity Monitoring Database Firewall Auditing and Reporting Sensitive Data & Database Discovery Configuration & Vulnerability Scan Patch Automation 46

Oracle DB Security Composition ASO AVDF DB Vault Data Masking Label Security 47

Oracle DB Security Summary 영역 Option / Product 요약 DB 암호화 ASO (TDE) - Column 단위 (10g), Table Space 단위암호화지원 (11g 이후 ) - 기본이지만, 가장중요 - 최상의성능, 어플리케이션무변화 Masking ASO (Redaction) - Display Masking - TDE 보완 Data Masking - 중요데이타의변조후개발, 테스트에이용 ( 데이타정합성유지 ) 접근제어 감사 / 모니터링 Database Vault Label Security AVDF - SoD (Separation of Duty) - DBA 제어 : DBA 는 Database 관리자이나, Data 관리자는아님 - 행단위접근제어 - Data 의통합이 Data 접근의통합은아님 - White List / Black List 를통한 SQL 모니터및통제 - 유사시에대비 : 방어에는실패했어도사후추적은가능해야함 48