U-22 crond 파일 소유자 및 권한 설정
항목중요도 : 상
1. 취약점 개요
▶ 점검내용 : Cron 관련 파일의 권한 적절성 점검
▶ 점검목적 : 관리자외 cron 서비스를 사용할 수 없도록 설정하고 있는지 점검하는 것을 목적으로 함
▶ 보안위협
· root 외 일반사용자에게도 crontab 명령어를 사용할 수 있도록 할 경우, 고의 또는 실수로 불법적인 예약 파일 실행으로 시스템 피해를 일으킬 수 있음
▶ 참고
※ Cron 시스템: 특정 작업을 정해진 시간에 주기적이고 반복적으로 실행하기 위한 데몬 및 설정
※ cron.allow: 사용자 ID를 등록하면 등록된 사용자는 crontab 명령어 사용이 가능함
※ cron.deny: 사용자 ID를 등록하면 등록된 사용자는 crontab 명령어 사용이 불가능함
<<at 명령어와 차이점>>
at 명령어는 한 번만 실행되는 작업을 예약하는 데 사용
cron 명령어는 정기적으로 반복되는 작업을 예약하는 데 사용. 정해진 시간, 날짜, 요일 등 반복적 실행에 좋음
2. 점검대상 및 판단 기준
▶ 대상 : SOLARIS, Linux, AIX, HP-UX 등
▶ 판단기준
· 양호 : crontab 명령어 일반사용자 금지 및 cron 관련 파일 640 이하인 경우
· 취약 : crontab 명령어 일반사용자 사용가능하거나, cron 관련 파일 640 이상인 경우
▶ 조치방법 : crontab 명령어 750 이하, cron 관련 파일 소유자 및 권한 변경(소유자 root, 권한 640 이하)
3. LINUX 초기 설정값
※ 테스트한 LINUX의 버전은 VMWare에 구성한 Ubuntu 24.04.1 LTS 버전 입니다.
확인방법
1) Cron 관련 파일 권한 확인합니다.
$ ls -al /usr/bin/crontab
현재 설정은 SUID 설정이 되어있고, 755로 되어있는 것을 확인 할 수 있습니다.
일반사용자 사용가능, 640 이상으로 설정 되어 있으므로 취약입니다.
그 외에도 cron으로 시작하는 파일이 있는지 확인 후 권한이 640 이상으로 설정되어있는지 확인합니다.
crontab <- 예약작업을 등록하는 파일
cron.hourly <- 시간단위 실행 스크립트 등록
cron.daily <- 일단위 실행 스크립트 등록
cron.weekly <- 주단위 실행 스크립트 등록
cron.monthly <- 월 단위 실행 스크립트 등록
cron.allow <- crontab 명령어 허용 사용자
cron.deny <- crontab 명령어 차단 사용자
crontab -> 750 이하 설정
그외 cron 관련 파일은 640 이하 설정
4. 조치
조치를 해보겠습니다.
1) 755 -> 750 변경 (crontab은 750 이하, 그외 cron 파일은 640 이하)
2) SUID 설정 제거
ubuntu@ubuntu:~$ sudo chmod 750 /usr/bin/crontab
ubuntu@ubuntu:~$ ls -al /usr/bin/crontab
-rwxr-x--- 1 root crontab 39664 Mar 31 2024 /usr/bin/crontab
750으로 권한을 변경했습니다.
5. 결과
변경하셨다면 양호입니다!
Linux를 마스터하는 그날까지
화이팅!
'취약점 진단 > UNIX 취약점 진단' 카테고리의 다른 글
[UNIX] U-24 NFS 서비스 비활성화 (0) | 2025.01.10 |
---|---|
[UNIX] U-23 DoS 공격에 취약한 서비스 비활성화 (0) | 2025.01.10 |
[UNIX] U-21 r 계열 서비스 비활성화 (0) | 2024.12.23 |
[UNIX] U-20 Anonymous FTP 비활성화 (0) | 2024.12.23 |
[UNIX] CentOS9을 공부를 하던 중 문제가 생겼습니다... (0) | 2024.11.21 |