U-37: crontab 설정파일 권한 설정 미흡
분류: 01_unix
중요도: 상
개요
점검 내용
crontab 및 at 서비스 관련 파일의 권한 적절성 여부 점검
점검 목적
관리자 외에는 서비스를 사용할 수 없도록 설정하고 있는지 점검하기 위함
보안 위협
일반 사용자가 crontab 및 at 서비스를 사용할 수 있을 경우, 고의 또는 실수로 불법적인 예약 파일 실행으로 시스템 피해를 일으킬 수 있는 위험이 존재함
참고
cron 시스템
특정 작업을 정해진 시간에 주기적이고 반복적으로 실행하기 위한 데몬 및 설정
cron.allow
사용자 ID를 등록하면 등록된 사용자는 crontab 명령어 사용이 가능함
cron.deny
사용자 ID를 등록하면 등록된 사용자는 crontab 명령어 사용이 불가능함
at 서비스(일회성 작업 예약)
지정한 시간에 어떠한 작업이 실행될 수 있도록 작업 스케줄을 예약 처리해 주는 기능을 제공함. /etc/at.allow 파일에 등록된 사용자만이 at 명령을 사용할 수 있음
참고
기반시설 시스템에서 at 서비스의 이용은 원칙적으로 금지하나, 불가피하게 사용 시 소유자 및 권한 설정 등의 보안 조치를 반드시 적용해야 함
점검 대상 및 판단 기준
대상
SOLARIS, LINUX, AIX, HP-UX 등
판단 기준
✅ 양호: crontab 및 at 명령어에 일반 사용자 실행 권한이 제거되어 있으며, cron 및 at 관련 파일 권한이 640 이하인 경우
❌ 취약: crontab 및 at 명령어에 일반 사용자 실행 권한이 부여되어 있으며, cron 및 at 관련 파일 권한이 640 이상인 경우
조치 방법
crontab 및 at 명령어 파일 권한 750 이하, cron 및 at 관련 파일 소유자 및 파일 권한 640 이하 설정
조치 시 영향
일반적인 경우 영향 없음
점검 및 조치 사례
SOLARIS
-
crontab, cron 작업 목록 파일, cron 관련 파일 소유자 및 권한 확인
-
at, at 작업 목록 파일 소유자 및 권한 확인
-
crontab 파일 및 at 파일 소유자를 root로, 파일 권한을 750으로 변경
-
cron 작업 목록 파일, cron 관련 파일 및 at 작업 목록 파일 소유자를 root로, 파일 권한을 640으로 변경
참고
crontab 및 at 명령어는 SUID가 설정되어 있으므로 SUID 설정 제거 필요
LINUX
-
crontab, cron 작업 목록 파일, cron 관련 파일 소유자 및 권한 확인
-
at, at 작업 목록 파일 소유자 및 권한 확인
-
crontab 파일 및 at 파일 소유자를 root로, 파일 권한을 750으로 변경
-
cron 작업 목록 파일, cron 관련 파일 및 at 작업 목록 파일 소유자를 root로, 파일 권한을 640으로 변경
참고
crontab 및 at 명령어는 SUID가 설정되어 있으므로 SUID 설정 제거 필요
AIX, HP-UX
-
crontab, cron 작업 목록 파일, cron 관련 파일 소유자 및 권한 확인
-
at, at 작업 목록 파일 소유자 및 권한 확인
-
crontab 파일 및 at 파일 소유자를 root로, 파일 권한을 750으로 변경
-
cron 작업 목록 파일, cron 관련 파일 및 at 작업 목록 파일 소유자를 root로, 파일 권한을 640으로 변경
참고
crontab 및 at 명령어는 SUID가 설정되어 있으므로 SUID 설정 제거 필요
cron 관련 설정 파일 설명
| 파일명 | 설명 |
|---|---|
crontab |
예약 작업을 등록하는 파일 |
cron.hourly |
시간 단위 예약 실행 스크립트 등록 파일 |
cron.daily |
일 단위 예약 실행 스크립트 등록 파일 |
cron.weekly |
주 단위 예약 실행 스크립트 등록 파일 |
cron.monthly |
월 단위 예약 실행 스크립트 등록 파일 |
cron.allow |
crontab 명령어 허용 사용자 등록 파일 |
cron.deny |
crontab 명령어 차단 사용자 등록 파일 |
/var/spool/cron 또는 /var/spool/cron/crontab |
사용자별 설정된 cron 작업 목록 |
참고
cron.allow, cron.deny 두 파일 모두 존재하지 않을 시, root 계정만 cron 등록 가능
at 관련 설정 파일 설명
| 파일명 | 설명 |
|---|---|
at |
예약 작업을 등록하는 파일 |
at.allow |
at 명령어 허용 사용자 등록 파일 |
at.deny |
at 명령어 차단 사용자 등록 파일 |
/var/spool/at 또는 /var/spool/cron/atjobs |
사용자별 설정된 at 작업 목록 |
참고
at.allow, at.deny 두 파일 모두 존재하지 않을 시, root 계정만 at 등록 가능