데이터베이스 권한 관리

DB 권한 관리에 대한 위험 분석, 위험 영향, 해결 방안을 설명합니다.

개발 및 운영 시스템 분리 사용

위험 분석

개발 시스템과 운영 시스템을 하드웨어적으로 분리하여 Link가 설정되지 않아야 하며, 운영 시스템의 데이터를 개발 시스템으로 이전할 때 중요 데이터의 삭제 같은 통제와 검증 절차를 거쳐야 합니다.

위험 영향

운영 시스템의 중요 데이터가 개발 시스템으로 누출될 가능성이 있습니다.

해결 방안

개발 시스템과 운영 시스템의 분리를 회사의 정책으로 정의하고 개발자와 운영자를 원칙적으로 분리합니다. 만약 분리할 수 없다면 개발자가 운영 시스템에 접근할 경우 통제 절차를 거치도록 해야 합니다.

SYSDBA 권한 제한

위험 분석

DBA가 SYS 패스워드를 입력하지 않고 접근하면 그룹을 가진 멤버들이 SYS 권한으로 로그인이 가능하므로 SYS 암호를 반드시 입력해야 합니다.

위험 영향

인증 없이 SYS 권한 획득이 가능합니다.

해결 방안

Tibero에는 Oracle의 sqlplus /as sysdba와 같은 접속 방법이 없으므로 해당사항이 없다.

Listener 패스워드 설정 점검

위험 분석

Listener를 구동 또는 중지하는 작업은 DBA와 같은 특권자에게만 부여하며 Listener에 대한 접근 통제를 위해Listener 접근 패스워드를 설정해야 합니다.

위험 영향

비인가자의 Listener 접근이 가능합니다.

해결 방안

Tibero는 Listener와 서버 프로세스가 동시에 기동되기 때문에 해당사항이 없습니다.

환경설정 파일 보호 점검

위험 분석

운영에 중요한 환경 파일을 아무나 접근해서 수정할 경우 침입자가 환경 파일을 열어 설정값을 변경함으로써DB 운영에 영향을 줄 수 있습니다.

위험 영향

악의적인 목적으로 파일을 변조할 수 있습니다.

해결 방안

  • $TB_HOME/config/$TB_SID.tip 파일의 퍼미션값을 변경합니다. (권장값 : 600 또는 640)

  • OS 계정에 의해 수정 및 관리되도록 하고 일반 계정의 접근을 금지합니다.

중요 파일 소유자 또는 그룹 설정 점검

위험 분석

중요 파일에 불필요한 소유권 또는 그룹 권한이 주어질 경우 해당 파일로 인해 인증되지 않은 사용자가 정보를 획득할 수 있습니다.

위험 영향

시스템 또는 네트워크 환경설정 파일의 권한이 취약하게 설정되어 있거나 Tibero 사용자가 소유권을 가져야 하는 파일을 권한없는 사용자가 소유한다면비인가자가 시스템 권한을 획득하거나 중요 데이터를 파괴할 수 있습니다.

해결 방안

$TB_HOME/client/config/tbdsn.tbr 파일의 퍼미션값을 변경합니다. (권장값 : 600 또는 640)

Public에 대한 권한 제한

위험 분석

Object의 사용 권한을 Public에 부여하면 Object 사용 권한이 없는 모든 계정이 해당 Object에 접근 가능하고Object의 정보를 획득할 수 있습니다.

위험 영향

새로 생성된 계정의 Object 사용 권한이 Public에 불필요하게 부여된 경우 권한 남용의 위험이 있습니다.

솔루션을 설치할 때 디폴트로 Object 사용 권한이 Public에 부여되거나 소유자가 시스템 계정인 경우에는 양호합니다.

해결 방안

Object의 사용 권한이 불필요하게 Public에 부여된 경우 권한을 제한합니다.

다음은Public으로부터 권한을 제거하는 방법입니다.

SQL> REVOKE <권한> ON <object> FROM PUBLIC

GRANT 옵션 사용 제한

위험 분석

GRANT 옵션과 함께 권한을 받은 사용자는 해당 권한을 다른 사용자에게 부여할 수 있습니다.

위험 영향

불필요하게 GRANT 옵션이 부여된 계정이 있는 경우 권한 남용의 위험이 있습니다. (단, 담당자가 확인하여 권한이 필요하다고 인정하는 경우는 제외합니다.)

해결 방안

GRANT 옵션 권한 부여는 DBA만 할 수 있도록 제한합니다. 불필요하게 GRANT 옵션이 부여된 계정은 권한을 제 거하고 GRANT 옵션 없이 권한을 다시 부여합니다.

권한 Revoke

SQL> REVOKE <권한> ON <object명> FROM <user_name>;

권한 Grant

SQL> GRANT <권한> ON <object명> TO <user_name>;

ADMIN 옵션 사용 제한

위험 분석

ADMIN 옵션과 함께 시스템 권한을 받은 사용자는 해당 권한을 다른 사용자에게 부여할 수 있습니다.

위험 영향

불필요하게 ADMIN 옵션이 부여된 계정이 있는 경우 권한 남용의 위험이 있습니다. (단, 담당자가 확인하여 권한이 필요하다고 인정하는 경우는 제외합니다.)

해결 방안

ADMIN 옵션 권한 부여는 DBA만 할 수 있도록 제한합니다. 불필요하게 ADMIN 옵션이 부여된 계정은 권한을 제 거하고 ADMIN 옵션 없이 권한을 다시 부여합니다.

권한 Revoke

SQL> REVOKE <권한> ON <object명> FROM <user_name>;

권한 Grant

SQL> GRANT <권한> ON <object명> TO <user_name>;

Last updated