[DBMS/계정관리] 기본계정의 패스워드, 정책 등을 변경하여 사용 (D-01)

취약점 개요

■ 위험도
     - 상

■ 점검 목적
    - DBMS 기본 계정의 디폴트 패스워드 및 권한 정책 변경 사용 유무를 점검하여

      비인가자의 디폴트 패스워드 대입 공격을 차단하고 있는지 확인하기 위함


■ 보안 위협

     - Oracle : 데이터베이스의 기본 계정(system, scott 등)의 패스워드 또는, 접근제어
       정책을 변경하지 않고 사용할 경우 공격자는 알려진 정보를 이용하여
       데이터베이스에 쉽게 접근할 수 있는 취약점이 존재함.
     - MSSQL : sa 계정 null 암호 취약점은 비인가자에 의해 sa 계정으로
데이터베이스에 침입하여 정보 삭제, 변경 등의 행위를 할 수 있는 위험이 있음.
     - MySQL : root 계정의 패스워드가 디폴트 설정 값인 null을 사용할 경우,
       시스템에 접근한 임의의 모든 사용자가 root 권한으로 접속하여 mysql의 모든
       작업을 할 수 있어 mysql DB에 저장된 모든 정보가 유출되는 등의 침해사고를
       일으킬 위험이 있음. 기본 계정을 변경하지 않고 사용하는 경우 공격자에게
       정보가 노출될 가능성이 있으므로 변경하여야 함.

 

점검 및 조치 방법

■ 판단 기준
    - 양호: 기본 계정의 패스워드를 변경하여 사용하는 경우
    - 취약: 기본 계정의 디폴트 설정을 변경하지 않고 사용하는 경우
    
■ 조치 방법 

기본(관리자) 계정의 패스워드 및 정책 변경
    - Oracle 1.사용자 계정과 상태를 점검함 

 SQL> SELECT username, account_status FROM dba_users; 
    2.특정 사용자 계정의 잠금과 기간 만료 설정 
    SQL> ALTER USER ACCOUNT LOCK PASSWORD expire; 
    3. 불필요한 계정인 경우 계정 삭제 
    SQL> DROP USER username; 
    4. 사용되는 계정인 경우 계정의 기본 패스워드 변경 후 사용 
    SQL> alter user username identified by new_passwd; 
※ 그 이외에 객체 권한 부여 및 기본 role 확인 및 변경 수행 
※ DBSNMP 파일의 접근권한 설정이 필요함 

chmod 700 snmp_rw.ora (결과값 –rwx------snmp_rw.ora)
    -  MS SQL sa 계정 패스워드 변경 
    Alter login sa with password=’new password’ 
    -  MySQL root 계정 패스워드 변경 
    mysql> use mysql 
    mysql> update user set password=password(‘new password’) where user=’root’; mysql> flush privileges; 
    mysql> set password for root=password(‘new password’)
※ 패스워드가 취약하게 설정된 경우 패스워드를 아래 기준을 준수하여 변경함

 

용어 설명 / 팁

< 패스워드 관리 방법 > 
1. 영문, 숫자, 특수문자를 조합하여 계정명과 상이한 8자 이상의 패스워드 설정 
※ 다음 각 목의 문자 종류 중 2종류 이상을 조합하여 최소 10자리 이상 또는, 3종류 이상을 조합하여 최소 8자리 이상의 길이로 구성 가. 영문 대문자(26개) 나. 영문 소문자(26개) 다. 숫자(10개) 라. 특수문자(32개) 
2. 시스템마다 상이한 패스워드 사용 
3. 패스워드를 기록해 놓을 경우 변형하여 기록 
4. 가급적 자주 패스워드를 변경할 것

댓글

Designed by JB FACTORY