※ 해당 가이드는 2021년 기준입니다.
주요정보통신기반시설 관리기관은 -정보통신기반 보호법- 제9조에 따라, 주요정보통신기반시설로 신규 지정된 후 6개월이내, 그리고 매년 취약점 분석/평가를 실시하여야 한다. 취약점 분석/평가는 453개의 관리적/물리적/기술적 점검항목에 대한 주요정보통신기반시설의 취약여부를 점검하여, 악성코드 유포, 해킹 등 사이버 위협 대응을 위한 종합적 개선과정이다.
주요정보통신기반시설 취약점 네트워크 장비 점검 항목
■ 취약점 개요
○ 점검개요 : 데이터베이스의 주요 파일들에 대해 관리자를 제외한 일반 사용자의 파일 수정 권한을 제거하였는지 점검
○ 점검목적 : 데이터베이스의 주요 파일에 관리자를 제외한 일반 사용자의 파일 수정 권한을 제거함으로써 비인가자에 의한 DBMS 주요 파일 변경이나 삭제를 방지하고 주요 정보 유출을 방지
○ 보안위협 : 데이터베이스 주요파일에 비인가자가 접근하여 수정 및 삭제를 하면 데이터베이스 운영에 장애가 발생할 수 있으며 계정 패스워드 정보 등의 중요한 정보가 유출
○ 점검대상 : Unix OS, Windows OS
○ 판단기준
- 양호 : 주요 설정 파일 및 디렉터리의 퍼미션 설정 시 일반 사용자의 수정 권한을 제거한 경우
- 취약 : 주요 설정 파일 및 디렉터리의 퍼미션 설정 시 일반 사용자의 수정 권한을 제거하지 않은 경우
■ 점검방법 및 조치방안
○ Oracle
- Unix OS
Step 1 | 디렉터리 또는 파일의 퍼미션 점검 $ORACLE_HOME/bin/oracle(퍼미션 755) $ORACLE_HOME/bin/ 아래(퍼미션 755) .sqlplus,sqlldr,sqlload,proc,oraenv,oerr,exp,imp,tkprof,tnsping,wrap $ORACLE_HOME/bin 아래(퍼미션 750) .svrmgrl, lsnrctl, dbsnmp $ORACLE_HOME/network(퍼미션 755) $ ORACLE HOME/network/admin(퍼미션 755) .listener.ora, sqlnet.ora 등 $ORACLE_HOME/ lib(퍼미션 755) $ORACLE_HOME/network/admin 아래 환경파일(퍼미션 644) .tnsnames.ora, protocol.ora, sqlpnet.ora $ORACLE_HOME/dbs/init.ora(퍼미션 640) $ORACLE_HOME/dbs/init<SID>.ora(퍼미션 640) - Find $ORACLE_HOME —name init*.ora —print ㆍ파일 및 디렉터리의 퍼미션 설정 변경 # chmod <적용 퍼미션> <file_name> |
Step 2 | redo 파일, 데이터베이스 설정 파일, 데이터 파일 위치 확인(SQL*Plus) SQL> Select value from v$parameter where name=’spfile; SQL> Select 'Control Files: ’||value from v$parameter where name='control_files'; SQL> select 'Control Files: ’||value from v$parameter where name=‘spfile'; SQL> select 'Logfile: '||member from v$logfile; SQL> select 'Datafile: ‘||name from v$datafile; ㆍ파일 및 디렉터리의 퍼미션 설정 변경 # chmod <적용 퍼미션> <file_name> |
- Windows OS
Step 1 | 패스워드 파일(orapw<SID>) 접근 권한은 administrators, system group, owner group, oracle service account, DBA에게 모든 권한 또는, 그 이하로 설정하고 다른 그룹은 제거 |
○ MySQL
- Unix OS
Step 1 | 초기화 파일(my.cnf, my.ini)의 접근 권한을 초기화 파일에 대한 보호를 위하여 600 또는, 640으로 설정 ㆍmy.cnf 파일 디폴트 위치: /etc/my.cnf, <각 홈디렉터리>/my.cnf chmod 600 . /my.cnf |
- Windows OS
Step 1 | 초기화 파일의 접근 권한은 Adminisrators, SYSTEM, Owner에게 모든 권한 또는, 그 이하로 설정하고 다른 그룹은 제거 |
○ PostgreSQL
- Unix OS
Step 1 | 주요 설정 파일 위치 확인 ㆍpostgresql.conf 파일 디폴트 위치: [$datadir] ㆍDB 접속 통제 설정파일 위치: /postgres/data/pg_hba.conf /postgres/data/pg_ident.conf ㆍlog_directory : /log_directory/pg_log |
Step 2 | 주요 설정 파일의 권한 설정 ㆍ환경설정 파일 (postgresql.conf)의 권한을 640 이하로 설정 # chmod 640 [$datadir]/postgresql.conf ㆍDB접속 통제 설정 파일 (pg_hba.conf, pg_ident.conf)의 권한을 640 이하로 설정 # chmod 640 ./pg_hba.conf # chmod 640 ./pg_ident.conf ㆍ히스토리 파일 (.psql_history)의 권한을 600 이하로 설정 $chmod 600 .psql_history ㆍLog 파일(pg_log)의 권한을 640 이하로 설정 #chmod 640 [log file] |
- Windows OS
Step 1 | 주요 환경설정 파일의 접근 권한은 Administrators, SYSTEM, Owner에게 모든 권한 또는 필요 권한만 부여하여 설정하고 기타 다른 그룹은 권한 제거 |
■ 조치 시 영향
일반적으로 무관
■ 데이터베이스의 주요 파일
○ orapw.ora, listener.ora,init<SID>.ora, redo 파일, 데이터베이스 설정 파일, 네트워크 설정 파일 등
'취약점 진단 가이드 > DBMS 취약점 진단 가이드' 카테고리의 다른 글
D-15(상) 응용프로그램 또는 DBA 계정의 Role이 Public으로 설정되지 않도록 설정 (0) | 2021.07.26 |
---|---|
D-14(하) 관리자 이외의 사용자가 오라클 리스너의 접속을 통해 리스너 로그 및 trace 파일에 대한 변경 제한 (0) | 2021.07.26 |
D-12(하) DB의 주요 파일 보호 등을 위해 DB계정의 umask를 022 이상으로 설정하여 사용 (0) | 2021.07.24 |
D-11(중) 일정 횟수의 로그인 실패 시 이에 대한 잠금정책 적용 (0) | 2021.07.23 |
D-10(중) 불필요한 ODBC/OLE-DB 데이터 소스와 드라이브 제거 후 사용 (0) | 2021.07.22 |