[DBMS/계정관리] DB 사용자 계정의 개별적 부여 및 사용 (D-13)

취약점 개요

■ 위험도
- 중

■ 점검 목적
- 사용자별 별도 DBMS 계정을 사용하여 DB에 접근하는지 점검하여 DB 계정 공유 사용으로 발생할 수 있는 로그 감사 추적 문제를 대비하고자 함

■ 보안 위협
- DB 계정을 공유하여 사용할 경우 비인가자의 DB 접근 발생 시 계정 공유 사용으로 인해 로그 감사 추적의 어려움이 발생할 위험이 존재함

점검 및 조치 방법


■ 판단 기준
- 양호: 사용자별 계정을 사용하고 있는 경우
- 취약: 공용 계정을 사용하고 있는 경우

■ 조치 방법
사용자별 계정 생성 및 권한 부여


■ Oracle
1. 계정 확인(SQL*Plus)
SQL> select username from dba_users order by username;(사용하지 않거나 모르는 계정 확인)

2. 공통으로 사용하는 계정 삭제
SQL> DROP USER ‘삭제할 계정‘

3. 사용자별, 응용프로그램별 계정 생성
SQL> Create user username identified by passwd

4. 권한 부여
SQL> grant connect, resource to username


■ MSSQL
1. 불필요한 계정 삭제
Exec sp_droplogin ‘삭제할 계정'

2. 사용자별, 응용프로그램별 계정 생성
CREATE login '생성 계정' WITH password = '패스워드’
CREATE user '생성 계정' FOR login '생성 계정' WITH default_schema ='생성 계정' ; ALTER USER '생성 계정' WITH DEFAULT_SCHEMA = '생성 계정'
EXEC sp_adduser '생성 계정', '생성 계정', 'db_owner’
EXEC sp_adduser '생성 계정', '생성 계정', '생성 계정'
EXEC sp_grantdbaccess '생성 계정','생성 계정’


■ MySQL
1. 불필요한 계정 삭제
mysql> Delete from user where user=’삭제할 계정’

2. 사용자별, 응용프로그램별 계정 생성, 권한 설정
mysql> insert into user('localhost','user', 'password') values('localhost', '생성 계정', 'password('패스워드 '));
mysql> insert into mysql.db values(‘%’,’DB name’, ’username’, ’Y’, ’Y’, ’Y’, ’Y’, ’Y’, ’Y’, ’Y’, ’Y’, ’Y’, ’Y’, ’ Y’, ’Y’, ’Y’, ’Y’, ’Y’, ’Y’, ’Y’)
mysql> flush privileges

댓글

Designed by JB FACTORY