CyberRanger

[정보보안기사] 데이터베이스 보안 본문

정보보안기사/애플리케이션 보안

[정보보안기사] 데이터베이스 보안

CyberRanger 2024. 8. 9. 16:55

1. 개요

· 데이터베이스 보안: 저장된 데이터에 대한 인가되지 않은 접근, 의도적인 데이터 변경, 파괴, 일관성 저해 등의 다양한 위협 요소로 부터 보호하는 것.

 

1.1. 데이터베이스 보안 위협 요소

위협 요소 설명
직접적인 접근을 통한 위협 직접적인 접근을 통한 위협.
집합성(Aggregation) · 낮은 보안 등급의 정보들을 이용하여 높은 등급의 정보를 알아내는 것.
· 개별정보는 의미가 부족하나 합치면 중요 정보를 알 수 있음.
추론(Interence) · 보안 등급이 없는 일반 사용자가 보안으로 분류되지 않은 정보에 정당하게 접근하여 기밀 정보를 유추해 내는 행위.

 

1.2. 데이터베이스 보안 요구사항

보안 요구사항 설명
무결성 보장 · 처리 중 운영적 무결성 보장
· 처리된 데이터의 의미적 무결성 보장
추론 방지 · 일반 정보에서 기밀정보를 추측하고 도출하는 추론 방지
· 통계적 집계 정보에서 각 객체에 추론 방지
사용자 제한(접근 제어) · 인가된 사용자만이 접근 가능
· 엄격한 사용자 인증 기준 마련
감사 기능 · 모든 접근 기록 저장(Read, Write)
· 접근단계별 log trail 추적
암호화 · 주요 데이터 암호화

 

 

 


2. 데이터베이스 보안 기법

· 민감 데이터를 암호화한다.

· 패스워드의 경우 별도의 솔루션 사용보다 해시함수를 사용함.

· 국내의 경우 SHA-256 이상의 해시함수를 의무적으로 사용해야 함.

 

2.1. 데이터베이스 암호화 솔루션

종류 설명
Plug In 방식 · DB 서버에 별도의 암호화 솔루션 설치하고 애플리케이션이 데이터 조작어(insert, update, select 등)을 실행하면 암 / 복호화하는 방식이다.

· DB 서버에 부하가 간다.
API 방식 · 암호화 API를 호출하여 암호화 수행.

· 암호화가 필요한 애플리케이션을 직접 수정해야 한다.

· 암호화 솔루션의 이슈는 암호화, 복호화의 속도이다. 암호화 솔루션의 성능 저하로 전체 서비스의 지연을 유발할 수 있다.

· DB에 저장되어 있는 패스워드는 반드시 암호화를 해야 하며, 복호화가 될 수 없는 일방향 함수를 사용해야 한다.

 

 

2.2. 데이터베이스 접근 제어 솔루션

· 권한이 없는 사용자의 DB 접근을 차단.

· 사용자 ID, PW를 발급하여 해당 사용자 컴퓨터의 IP주소를 등록해서 접근 제어를 수행.

· 실제 기업에서 잘 사용하지 않는 방식.

장점 단점
· 독립된 서버로 다중 인스턴스에 대해 통제 가능한 독립된 서버

· DB 단위의 접근 제어
· 독립된 서버이기 때문에 이중화 구성 필요.

· Telnet을 통하여 접근하는 SQL 명령에 대해서는 통제가 어려움.

· 우회에서 접근할 수 있으므로 보안 허점이 발생.

 

 

2.3. 데이터베이스 감사 솔루션

데이터베이스 감사는 DB의 모든 접근에 대한 로그를 기록하여 추적성을 확보하는 것으로, SQL을 실행할 때 그 로그를  모두 기록하고 관리하는 솔루션이다.

스니핑 방식으로 클라이언트에서 실행된 SQL을 캡쳐하여 Log에 기록하는 방식. 스니퍼 프로그램보다 T-Sensor를 사용하면 해당 네트워크로 유입되는 패킷을 하드웨어에서 복제하여 Log에 기록한다. 이러한 T-Sensor 방식이 실제 기업에서 많이 사용하는 방식으로 성능 저하를 최소화 할 수 있고, Packet Loss가 발생하지 않는다.

 

 

 


3. 데이터베이스 백업

· 백업은 장애 및 공격 등으로 데이터 유실을 방지하기 위한 최소한의 활동이다.

· 데이터베이스 백업은 (1)전체 백업, (2)차등 백업, (3)증분 백업으로 분류된다.

 

· 전체 백업은 DB 전체를 백업하는 것. 가장 단순하지만 많은 저장공간이 필요하다.

 

· 따라서 시스템 구축 시 처음 1회만 전체 백업을 하고 그 다음부터는 변경된 내용만 백업한다.

· 여기서 차등 백업, 증분 백업이 있다.

 

3.1. 백업 방법

백업 방식 설명
전체 백업 · 전체 내용을 백업. 많은 양의 저장공간이 필요.
차등 백업 · 마지막 전체 백업 이후, 변경된 모든 것을 백업.
증분 백업 · 마지막 백업 이후, 변경된 것만 백업.
· 효율적인 저장공간, 시간 사용.

 

3.2. 백업 방법 별 예시

 
전체 백업 A, B, C A, B, C A, B, C A, B, C A, B, C, D A, B, C, D, E A, B, C, D, E, F
차등 백업 A, B, C A B C D E F
증분 백업 A, B, C A A, B A, B, C A, B, C, D A, B, C, D, E A, B, C, D, E, F