※ 해당 가이드는 2021년 기준입니다.
주요정보통신기반시설 관리기관은 -정보통신기반 보호법- 제9조에 따라, 주요정보통신기반시설로 신규 지정된 후 6개월이내, 그리고 매년 취약점 분석/평가를 실시하여야 한다. 취약점 분석/평가는 453개의 관리적/물리적/기술적 점검항목에 대한 주요정보통신기반시설의 취약여부를 점검하여, 악성코드 유포, 해킹 등 사이버 위협 대응을 위한 종합적 개선과정이다.
주요정보통신기반시설 취약점 네트워크 장비 점검 항목
■ 취약점 개요
○ 점검개요 : 감사기록 정책 설정이 기관 정책에 적합하게 설정되어 있는지 점검
○ 점검목적 : 데이터, 로그, 응용프로그램에 대한 감사 기록 정책을 수립하고 적용하여 데이터베이스에 문제 발생 시 원활하게 대응
○ 보안위협 : 감사기록 정책이 설정되어 있지 않을 경우, 데이터베이스에 문제 발생 시 원인을 규명할 수 있는 자료가 존재하지 않아 이에 대한 대처 및 개선방안 수립이 어려움
○ 점검대상 : Oracle, MSSQL, ALTIBASE, TIBERO, PostgreSQL 등
○ 판단기준
- 양호 : DBMS의 감사 로그 저장 정책이 수립되어 있으며, 정책 설정이 적용되어 있는 경우
- 취약 : DBMS에 대한 감사 로그 저장을 하지 않거나 정책 설정이 적용되어 있지 않은 경우
■ 점검방법 및 조치방안
○ Oracle
Step 1 | 데이터베이스 감사 기록 정책 및 백업 정책 수립 |
Step 2 | * DBMS에 대한 기본적인 감사를 설정함 * 아래와 같은 명령어를 통해 로그인 실패, 권한, 객체 등에 대한 감사 설정 SQL> connect sys as sysdba Enter password: ****** Connected. SQL> alter system set audit_trail=DB scope=spfile ; System altered. SQL> shutdown immediate Database closed. Database dismounted. ORACLE instance shut down. SQL> startup ; ORACLE instance started. SQL> audit session whenever not successful ; Audit succeeded. |
○ MSSQL
Step 1 | 데이터베이스 감사 기록 정책 및 백업 정책 수립 ㆍMSSQL 2000 DB 접근에 대한 보안 감사를 할 수 있도록 보안 감사 설정 [SQL SERVER]> [등록정보]> [보안]탭> [감사수준]에서 '모두' 선택 ㆍMSSQL 2005 [MSSQL2005]> [오른쪽 마우스 클릭]> [속성]> [보안탭]> [로그인 감사] 옵션> '실패한 로그인과 성공한 로그인 모두' 선택 ㆍMSSQL 2008 / 2012 [시스템 이름]> [오른쪽 마우스 클릭]> [속성]> [보안탭]> [로그인 감사] 옵션> '실패한 로그인과 성공한 로그인 모두' 선택 |
○ Altibase
- Altibase HDB 서버 내에서 실행되고 있는 특정 구문 또는 모든 구문을 실시간으로 추적하고, 로그를 남기는 것을 감사(Audit)라고 하며, SYS 사용자만이 이 구문을 사용해서 감사 조건을 설정 가능
Step 1 | AUDIT 구문으로 감사 정책을 설정 |
Step 2 | 정책 설정 후 감사 조건 적용 ALTER SYSTEM STOP AUDIT; ALTER SYSTEM START AUDIT; ALTER SYSTEM RELOAD AUDIT; |
○ Tibero
- 감사 기능은 감사의 대상에 따라 두 종류로 구분
- >스키마 객체에 대한 감사
지정된 스키마 객체에 수행되는 모든 동작 기록 가능
- >시스템 특권에 대한 감사
지정된 스키마 특권을 사용하는 모든 동작 기록 가능
※ 감사를 설정하거나 해제하려면 다음 명령을 사용
audit(감사 설정)/noaudit(감사 해제)
- 감사 설정
Step 1 | 스키마 객체에 대한 감사 다른 사용자가 소유한 스키마의 객체 또는 디렉터리 객체를 감사하기 위해서는 AUDIT ANY 시스템 특권 부여 필요 ㆍ감사 설정 예시 AUDIT delete ON t BY SESSION WHENEVER SUCCESSFUL; (테이블에 수행되는 모든 delete 문이 성공하는 경우에만 감사 기록을 남김) |
Step 2 | 시스템 특권에 대한 감사 시스템 특권을 감사하기 위해서는 AUDIT SYSTEM 시스템 특권 부여 필요 ㆍ감사 설정 예시 AUDIT create table BY Tibero; (Tibero라는 사용자가 테이블을 생성하려고 할 때 그것이 성공하든 실패하든 관계없이 감사 기록을 남김) |
- 감사 해제
Step 1 | 스키마 객체에 대한 감사 해제 다른 사용자가 소유한 스키마의 객체 또는 디렉터리 객체의 감사를 해제하기 위해서는 AUDIT ANY 시스템 특권 부여 필요 ㆍ감사 해제 예시 NOAUDIT delete ON t BY SESSION WHENEVER SUCCESSFUL; (테이블에 수행되는 모든 delete 문에 대해 더 이상 감사 기록을 남기지 않음) |
Step 2 | 시스템 특권에 대한 감사 해제 시스템 특권의 감사를 해제하기 위해서는 AUDIT SYSTEM 시스템 특권 부여 필요 ㆍ감사 해제 예시 NOAUDIT create table BY Tibero; (Tibero라는 사용자가 테이블을 생성할 때 더 이상 감사 기록을 남기지 않음) |
- SYS 사용자 감사 설정 방법
Step 1 | $TB_SID.tip 파일을 아래 내용처럼 입력 또는 수정 ㆍSYS 사용자 감사 설정 예시 AUDIT_SYS_OPERATIONS=Y AUDIT_FILE_DEST=/home/Tibero/audit/audit_trail.log AUDIT_FILE_SIZE=10M ㆍSYS 사용자의 명령을 감사하도록 설정하면 수행한 모든 동작이 OS 파일에 기록되며 보안상의 이유로 데이터베이스에는 기록되지 않음 |
○ PostgreSQL
Step 1 | Log 감사 설정 여부 확인방법(쿼리문) postgres=# show logging_collector; logging_collector ------------------- on (1 row) |
Step 2 | postgresql.conf 파일 내 logging_collector을 on으로설정 logging_collector = on |
■ 조치 시 영향
일반적으로 무관
'취약점 진단 가이드 > DBMS 취약점 진단 가이드' 카테고리의 다른 글
D-24(하) Audit Table은 데이터베이스 관리자 계정으로만 접근하도록 설정 (0) | 2021.08.05 |
---|---|
D-23(중) 보안에 취약하지 않은 버전의 데이터베이스를 사용 (0) | 2021.08.05 |
D-21(상) 데이터베이스에 대해 최신 보안패치와 밴더 권고사항을 모두 적용 (0) | 2021.08.04 |
D-20(하) 데이터베이스의 자원 제한 기능을 TRUE로 설정 (0) | 2021.08.03 |
D-19(중) 인가되지 않은 GRANT OPTION 사용 제한 (0) | 2021.08.03 |