[DBMS/데이터베이스/dbms] 인가되지 않은 GRANT OPTION 사용 제한

 

 

D-21 인가되지 않은 GRANT OPTION 사용 제한

 

■ 점검영역 : 옵션관리

 

■ 항목 중요도 :

 

■ 점검내용

 

일반사용자에게 Grant Option이 Role 에 의해 부여되어 있는지 점검

 

■ 점검목적

 

일반사용자에게 Grant Option이 Role에 의한 부여가 아닐 경우 권한을 취소함

 

■ 보안위협

 

일반 사용자에게 GRANT OPTION이 설정되어있는 경우, 일반 사용자가 객체 소유자인 것과 같이 다른 일반 사용자에게 권한을 부여할 수 있어 WITH_GRANT_OPTION은 role에 의하여 설정되어야 함

 

■ 참고

 

-

 

 

점검대상 및 판단기준(데이터베이스/dbms 취약점 진단)

 

■ 대상 : Oracle, MSSQL, MySQL, ALTIBASE, TIBERO, PostgreSQL 등

 

양호

WITH_GRANT_OPTION이 ROLE에 의하여 설정되어 있는 경우

 

취약

WITH_GRANT_OPTION이 ROLE에 의하여 설정되어있지 않은 경우

 

■ 조치방법

 

WITH_GRANT_OPTION이 ROLE에 의하여 설정되도록 변경

 

 

점검 및 조치 방법(oracle, mssql, mysql 등)

 

■ Oracle, Tibero


Step 1) 설정 확인(SQL*Plus)
SQL> Select grantee||':'||owner||'.'||table_name from dba_tab_privs where grantable='YES' and owner not in ('SYS','MDSYS','ORDPLUGINS','ORDSYS','SYSTEM', 'WMSYS','SDB', 'LBACSYS') and grantee not in (select grantee from dba_role_privs where granted_role= 'DBA') order by grantee; (계정이 나오는 경우 취약)


Step 2) 권한 취소, 재부여(SQL*Plus)
SQL> REVOKE Role FROM User;


■ MSSQL

 

Step 1) 설정 확인
select object_name(id)as objectname, user_name(uid)as userid,
case action
when 193 then 'SELECT'
when 195 then 'INSERT'
when 196 then 'DELETE'
when 197 then 'UPDATE'
when 198 then 'CREATE TABLE'
when 203 then 'CREATE DATABASE'

when 207 then 'CREATE VIEW'
when 222 then 'CREATE PROCEDURE'
when 224 then 'EXECUTE'
when 228 then 'BACKUP DATABASE'
when 233 then 'CREATE DEFAULT'
when 235 then 'BACKUP RULE'
when 236 then 'CREATE LOG'
when 26 then 'REFERENCES'
when 178 then 'CREATE FUNCTION'
end as Permmision from sysprotects where protecttype = 204
(계정이 나오는 경우 취약)


Step 2) 권한 회수
revoke 권한 on 객체 from 유저


■ MySQL


Step 1) 설정 확인
SELECT user,grant_priv FROM mysql.user;
(계정이 나오는 경우 취약)


Step 2) 권한 회수
REVOKE 권한종류 ON 대상 FROM 계정;


■ Altibase

 

Step 1) 사용자 계정을 조회하여 일반사용자에게 with grant option 이 부여되어 있을 경우 취약 (with grant option 1 일 경우)
select * from system_.sys_users_;
select * from system_.sys_grant_object_;
select * from system_.sys_privileges_;

 

Step 2) 권한 회수
revoke 권한 on 객체 from 유저

 

조치 시 영향 : 일반적인 경우 영향 없음

 

댓글

Designed by JB FACTORY