콘텐츠로 이동

D-01: 기본 계정의 비밀번호, 정책 등을 변경하여 사용

분류: DBMS

중요도: 상


개요

점검 내용

DBMS 기본 계정의 초기 비밀번호 및 권한 정책을 변경하여 사용하는지 점검

점검 목적

DBMS 기본 계정의 초기 비밀번호 및 권한 정책 변경 사용 유무를 점검하여 비인가자의 초기 비밀번호 대입 공격을 차단하고 있는지 확인하기 위함

보안 위협

DBMS 기본 계정 초기 비밀번호 및 권한 정책을 변경하지 않을 경우 비인가자가 인터넷 통해 DBMS 기본 계정의 초기 비밀번호를 획득하여 초기 비밀번호를 그대로 사용하고 있는 DB에 접근하여 기본 계정에 부여된 권한의 취약점을 이용하여 DB 정보를 유출할 수 있는 위험이 존재함

참고

기본 계정

DB 설치 후 초기에 기본으로 생성되어있는 DBMS 관리용 계정(예 : sa)

점검 대상 및 판단 기준

대상

Oracle DB, MSSQL, MySQL, Altibase, Tibero, PostgreSQL, Cubrid 등

판단 기준

✅ 양호: 기본 계정의 초기 비밀번호를 변경하거나 잠금설정한 경우

❌ 취약: 기본 계정의 초기 비밀번호 를 변경하지 않거나 잠금설정을 하지 않은 경우

조치 방법

기본(관리자) 계정의 초기 비밀번호 및 권한 정책 변경

조치 시 영향

불필요한 기본 계정의 사용 제한

점검 및 조치 사례

Oracle DB

기본 계정 비밀번호 변경

  1. 기본 계정 사용 여부 및 정책 확인

    SQL> SELECT USERNAME, ACCOUNT_STATUS, PROFILE FROM DBA_USERS;
    
  2. 사용되는 계정의 경우 비밀번호 변경 후 사용

    SQL> ALTER USER <기본 계정명> IDENTIFIED BY <신규 비밀번호>;
    

기본 계정 잠금 설정

  1. 활성화 되어 있는 기본 계정 확인

    SQL> SELECT USERNAME, ACCOUNT_STATUS, PROFILE FROM DBA_USERS;
    
  2. 활성화 되어 있는 기본 계정 잠금 설정

    SQL> SELECT username, account_status, lock_date, expiry_date, profile FROM dba_users WHERE account_status ='OPEN';
    ALTER USER <기본 계정명> ACCLUNT LOCK;
    

Oracle DB 기본 계정 정보

User Password
scott tiger or tigger
system manager
dbsnmp dbsnmp
sys changeon_install
tracesvr trace
outln outln
ordplugins ordplugins
ordsys ordsys
ctxsys ctxsys
mdsys mdsys
adams wood
blake papr
clark clth
jones steel

MSSQL

  1. sa 계정 비밀번호 변경

    ALTER LOGIN sa WITH PASSWORD = '신규 비밀번호';
    
  2. 비밀번호 정책 강제 사용 적용

MySQL

  1. root 계정 비밀번호 변경

    [mysql 5.7]

    mysql> UPDATE user SET authentication_string = PASSWORD('신규 비밀번호') WHERE User = 'root';
    mysql> flush privileges;
    

    [mysql 8.0]

    mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '신규 비밀번호';
    mysql> flush privileges;
    

Altibase

  1. 비밀번호 정책 설정 여부 확인

    SELECT * FROM system_.sys_users_;
    
  2. ALTER USER 명령어로 비밀번호 변경, Altibase 서버에 sys 유저로 접속 후 ALTER USER 명령어로 비밀번호를 변경

    ALTER USER sys IDENTIFIED BY [신규 비밀번호];
    

    또는 altipasswd 명령어로 비밀번호 변경(Altibase 서버 온라인 상태에서 수행)

    $ altipasswd
    Previous Password : old_password
    New Password : new_password
    Retype New Password : new_password
    

Tibero

  1. sys 계정 비밀번호 변경

    ALTER USER sys IDENTIFIED BY [신규 비밀번호];
    

PostgreSQL

  1. postgres 계정으로 접속 계정 변경 및 접속

    $ sudo –u postgres psql
    # ALTER USER postgres WITH PASSWORD '신규 비밀번호';
    # \q
    

Cubrid

  1. 사용자 계정 비밀번호 사용 여부 확인

    csql> SELECT name, password FROM db_user;
    csql> SELECT * FROM db_password;
    
  2. 사용자 계정 비밀번호 변경

    csql> ALTER USER "사용자 계정명" PASSWORD '신규 비밀번호';
    

비밀번호 관리 방법

비밀번호가 취약하게 설정된 경우 비밀번호를 다음 기준을 준수하여 변경함

  1. 영문, 숫자, 특수문자를 조합하여 계정명과 상이한 8자 이상의 비밀번호 설정
    • 다음의 문자 종류 중 2가지 종류 이상을 조합하여 최소 10자리 이상 또는, 3가지 종류 이상을 조합하여 최소 8자리 이상의 길이로 구성
      1. 영문 대문자(26개)
      2. 영문 소문자(26개)
      3. 숫자(10개)
      4. 특수문자(32개)
  2. 시스템마다 상이한 비밀번호 사용
  3. 비밀번호를 기록해 놓을 경우 변형하여 기록
  4. 가급적 자주 비밀번호를 변경