본문 바로가기

SAP BC인프라

ITGC/전산감사 유용한 명령어 간략 정리

SAP 시스템 감사 수검 시, 사용되는 유용한 명령어에 대해서 간략히 정리한다.

시스템 종류, 버전에 따라 명령어가 상이할 수 있다.

1. OS

1-1. OS 패치 이력

HP-UX :
/usr/sbin/swlist -l patch -a install_date | grep <대상 년도>

AIX :
instfix -i | grep ML

LINUX (SUSE) :
cut -d "|" -f 1-4 -s --output-delimiter " | " /var/log/zypp/history | grep -v " radd "

1-2. OS 계정 생성 리스트

  • 계정 생성일 포함
    find / -name ".profile" -exec ls -al {} \;

1-3. OS 패스워드 정책 확인

HP-UX:
cat /etc/default/security

Linux (SUSE) :
cat /etc/pam.d/common-password

1-4. OS 접근제어 설정

Linux (SUSE) :
cat /etc/hosts.allow
cat /etc/hosts.deny

2. DB

Oracle DB의 경우 출력 세팅과 같이 입력

2-1. DB 패치 이력

Oracle :

set linesize 300
col action_time format a30
col action format a20
col namespace format a10
col version format a15
col bundle_series format a10
col comments format a35

select action_time, action, namespace, version, id, bundle_series, comments 
from dba_registry_history;

HANA :
SAP HANA Studio 또는 HANA Cockpit 에서 확인 가능

2-2. DB 계정 생성 리스트

  • 계정 생성일 포함
    Oracle :
set linesize 300
select username, user_id, password, created, ACCOUNT_STATUS 
from dba_users order by created desc; 

HANA :

select * from users

2-3. DB 슈퍼 유저 확인

Oracle :

select * 
from sys.dba_role_privs 
where granted_role = 'DBA';

HANA :

select grantee, role_name 
from granted_roles 
where role_name like 'CONTENT_ADMIN%' and grantee_type = 'USER'

2-4. DB 패스워드 설정

Oracle :

select username, profile 
from dba_users;
select * 
from dba_profiles 
where resource_type='PASSWORD' order by PROFILE;
select resource_name, limit 
from dba_profiles 
where profile='<프로파일 명>';

HANA :
SAP HANA Studio 또는 HANA Cockpit 에서 확인 가능

2-5. DB Verify Function 패스워드 정책 확인 (Oracle)

cat <ORACLE_HOME>/rdbms/admin/utlpwdmg.sql

2-6. DB 전체 계정 조회

Oracle :

set lines 300
set pages 100
col USERNAME format a15
col USER_ID format 99
col PASSWORD format a12
col ACCOUNT_STATUS format a20
col EXTERNAL_NAME format a5
col DEFAULT_TABLESPACE format a12
col TEMPORARY_TABLESPACE format a10
col PROFILE format a15

SELECT * 
FROM DBA_USERS; 

2-7. DB 배치잡 조회 (Oracle)

set lines 300
set pages 100
col OWNER format a15
col JOB_NAME format a35
col JOB_CREATOR format a5
col JOB_ACTION format a55
col START_DATE format a35
col REPEAT_INTERVAL format a30
col ENABLE format a8
col STATE format a15
col LAST_START_DATE format a40

select OWNER, JOB_NAME, JOB_CREATOR, JOB_ACTION, START_DATE, REPEAT_INTERVAL, ENABLED, STATE, LAST_START_DATE 
from dba_scheduler_jobs;

2-7. DB 배치잡 등록/수정 권한 계정 조회 (Oracle)

select * 
from dba_sys_privs 
where privilege like '%JOB%' order by grantee;
select * 
from DBA_ROLE_PRIVS 
where 
GRANTED_ROLE in (select GRANTEE from dba_sys_privs where privilege like '%JOB%') and 
GRANTEE in (select USERNAME from dba_users);

2-8. DB SYSTEM 계정 커넥션 로그 (HANA) (Audit 활성화 시)

  • 연도별 조회
select * 
from AUDIT_LOG 
where TIMESTAMP like '<대상 년도>%' AND
CLIENT_IP NOT IN ('<제외 IP>')
  • 분기별 조회
select * 
from AUDIT_LOG 
where (TIMESTAMP like '<대상 년도>_<대상 월>%' OR TIMESTAMP like '<대상 년도>_<대상 월>%' OR TIMESTAMP like '<대상 년도>_<대상 월>%') AND 
CLIENT_IP NOT IN ('<제외 IP>'') ORDER BY TIMESTAMP
  • 접속 IP 유니크값 조회(분기)
select DISTINCT CLIENT_IP 
from AUDIT_LOG 
where (TIMESTAMP like '<대상 년도>_<대상 월>%' OR TIMESTAMP like '<대상 년도>_<대상 월>%' OR TIMESTAMP like '<대상 년도>_<대상 월>%')

3. SAP

3-1. SAP 파라미터-패스워드 정책 확인

프로그램 : RSPARAM

  • 파라미터 필터링
    login/failed_user_auto_unlock
    login/fails_to_user_lock
    login/min_password_diff
    login/min_password_digits
    login/min_password_letters
    login/min_password_lng
    login/min_password_lowercase
    login/min_password_specials
    login/password_expiration_time
    login/password_history_size
    rdisp/gui_auto_logout
    login/no_automatic_user_sapstar

3-2. SAP 파라미터 변경 이력 조회

Tcode : TU02

3-3. SAP Standard User 체크

프로그램 : RSUSR003