문서유형ㅣ기술 정보
분야ㅣ보안
적용제품버전ㅣTibero6, Tibero7
문서번호ㅣTSETI012
개요
| 분류 | 점검 항목 | 중요도 | 코드 |
|---|---|---|---|
| 계정 관리 | 기본 계정의 패스워드, 권한 등을 변경하여 사용 | 상 | D-01 |
| 데이터베이스의 불필요 계정을 제거하거나, 잠금설정 후 사용 | 상 | D-02 | |
| 패스워드의 사용기간 및 복잡도를 기관 정책에 맞도록 설정 | 상 | D-03 | |
| 데이터베이스 관리자 권한을 꼭 필요한 계정 및 그룹에 허용 | 상 | D-12 | |
| 패스워드 재사용에 대한 제약 설정 | 중 | D-13 | |
| DB 사용자 계정을 개별적으로 부여하여 사용 | 중 | D-05 |
본 문서에서는 "계정관리-데이터베이스의 불필요 계정을 제거하거나, 잠금설정 후 사용(D-02)" 항목에 대한 보안취약점 조치 방안에 대해 기술하였습니다.
점검 내용 및 목적
- DBMS에 존재하는 계정 중 DB 관리나 운용에 사용하지 않는 불필요한 계정이 존재하는 점검합니다.
- 불필요한 계정 존재 유무를 점검하여 불필요한 계정 정보(패스워드)의 유출 시 발생할 수 있는 비인가자의 DB 접근에 대비되어 있는지 확인하기 위함입니다.
점검 판단 기준
| 기준 | 내용 |
|---|---|
| 양호 | 계정 정보를 확인하여 불필요한 계정이 없는 경우 |
| 취약 | 인가되지 않은 계정, 퇴직자 계정, 테스트 계정 등 불필요한 계정이 존재하는 경우 |
조치 전 주의사항
기본 계정 리스트 확인
Tibero 설치 시 생성되는 기본 계정은 다음과 같습니다. DB 버전에 따라 추가/삭제된 계정이 존재합니다. 추가로, 계정 삭제/계정 잠금하면 안되는 계정이 존재하니 아래 내용 확인 후 조치가 필요합니다.
| 계정명 | 비밀번호 | 비고 |
| SYS | tibero | 계정 삭제 불가능 계정 잠금 불가능 |
| SYSCAT | syscat | 계정 삭제 불가능 계정 잠금 가능 |
| SYSGIS | sysgis | 계정 삭제 불가능 계정 잠금 가능 |
| OUTLN | outln | 계정 삭제 불가능 계정 잠금 가능 |
| TIBERO | tmax | 계정 삭제 가능 계정 잠금 가능 |
| TIBERO1 | tmax | 계정 삭제 가능 계정 잠금 가능 T7 버전 이상부터 존재하지 않음 |
| SYSBACKUP | tibero | 계정 삭제 불가능 계정 잠금 가능 T6FS07 일부 버전(301647 패치 존재) 및 T7 버전 이상부터 존재 |
| LBACSYS | lbacsys | 계정 삭제 불가능 계정 잠금 가능 T7 버전 이상부터 존재 |
연계 시스템 확인
사전에 연계 시스템에서 사용 중인 DB 계정에 대한 확인이 필요합니다. 연계 시스템에서 사용 중인 계정의 경우 해당 조치 대상에서 제외해야 합니다.
계정 삭제 후 원복 불가
계정 삭제 시, 관련된 오브젝트(TABLE, VIEW, PROCEDURE 등..)가 모두 삭제됩니다. 그리고, 삭제된 계정에 대해선 원복할 방안은 존재하지 않습니다.
방법
설정
- 계정 리스트 확인
set lines 400 col username for a30 col account_status for a30 SELECT USERNAME,ACCOUNT_STATUS FROM DBA_USERS; -- T6 FS07(301647 패치 X) 조회 결과값 USERNAME ACCOUNT_STATUS ------------------------------ ------------------------------ SYS OPEN SYSCAT OPEN SYSGIS OPEN OUTLN OPEN TIBERO OPEN TIBERO1 OPEN -- T7 조회 결과값 USERNAME ACCOUNT_STATUS ------------------------------ ------------------------------ SYS OPEN SYSCAT OPEN SYSGIS OPEN OUTLN OPEN SYSBACKUP OPEN TIBERO OPEN LBACSYS OPEN
- 계정 삭제
DROP USER [USERNAME] CASCADE; ex) TIBERO 계정 삭제 DROP USER tibero CASCADE;
- 계정 잠금
ALTER USER [USERNAME] ACCOUNT LOCK; ex) SYSCAT 계정 삭제 ALTER USER syscat ACCOUNT LOCK;
원복
- 계정 리스트 확인
set lines 400 col username for a30 col account_status for a30 SELECT USERNAME,ACCOUNT_STATUS FROM DBA_USERS; -- T6 FS07(301647 패치 X) 조회 결과값 USERNAME ACCOUNT_STATUS ------------------------------ ------------------------------ SYS OPEN SYSCAT LOCKED SYSGIS OPEN OUTLN OPEN TIBERO1 OPEN -- T7 조회 결과값 USERNAME ACCOUNT_STATUS ------------------------------ ------------------------------ SYS OPEN SYSCAT LOCKED SYSGIS OPEN OUTLN OPEN SYSBACKUP OPEN LBACSYS OPEN
- 계정 삭제 원복
삭제된 계정에 대한 원복 방안은 따로 존재하지 않고 새로 생성해야 합니다.
CREATE USER [USERNAME] IDENTIFIED BY '[PASSWORD]'; GRANT CONNECT,RESOURCE TO [USERNAME]; ex) TIBERO 유저 생성 CREATE USER tibero IDENTIFIED BY 'tmax'; GRANT CONNECT,RESOURCE TO tibero;
- 계정 잠금 원복
ALTER USER [USERNAME] ACCOUNT UNLOCK; ex) SYSCAT 계정 잠금 해제 ALTER USER syscat ACCOUNT UNLOCK;