본문 바로가기
Hacking/infra 진단

[Linux] U-10 (상) /etc/(x)inetd.conf 파일 소유자 및 권한 설정

by 알거음슴 2021. 8. 23.
취약점 개요
점검 내용 /etc/(x)inetd.conf 파일 권한 적절성 점검
점검 목적 /etc/(x)inetd.conf 파일을 관리자만 제어할 수 있게 하여 비인가자들의 임의적인 파일 변조를 방지하기 위함
보안 위협 (x)inetd.conf 파일에 소유자외 쓰기 권한이 부여된 경우, 일반사용자 권한으로 (x)inetd.conf 파일에 등록된 서비스를 변조하거나 악의적인 프로그램(서비스)를 등록할 수 있음
참고 (x)inetd (슈퍼데몬) : 자주 사용하지 않는 서비스가 상시 실행되어 메모리를 점유하는 것을 방지하기 위해 (x)inetd(슈퍼대몬)에 자주 사용하지 않는 서비스를 등록하여 요청이 있을시에만 해당 서비스를 실행하고 요청이 끝나면 서비스를 종료하는 역할 수행
점검대상 및 판단 기준
대상 LINUX
판단기준 양호 : /etc/inetd.conf 파일의 소유자가 root이고, 권한이 600인 경우
취약 : /etc/inetd.conf 파일의 소유자가 root가 아니거나, 권한이 600이 아닌 경우
조치 방법 /etc/(x)inetd.conf” 파일의 소유자 및 권한 변경 (소유자 root, 권한 600)

 

점검 및 조치
점검 /etc/xinetd.conf” 파일 및 “/etc/xinetd.d/” 하위 모든 파일의 소유자 및 권한 확인
#ls –l /etc/xinetd.conf
#ls –al /etc/xinetd.d/*
rw------- root <xinetd.conf 파일>
rw------- root <xinetd 디렉터리 내 모든 파일>
 
조치 인터넷 슈퍼데몬 서비스 설정파일의 소유자가 root가 아니거나 파일의 권한이 600이 아닌 경우 아래의 보안설정방법에 따라 설정을 변경함
Linux 운영체제는 버전에 따라 inetd 또는 xinetd을 사용하고 있으므로 사용하고 있는 데몬 확인 필요

 

점검 스크립트

#!/bin/bash

. function.sh

BAR
CODE '[U-10] : /etc/inetd.conf 파일의 소유자가 root가 아니거나, 권한이 600이 아닌 경우'
cat << EOF >> $RESULT
[양호]: /etc/inetd.conf 파일의 소유자가 root이고, 권한이 600인 경우
[취약]: /etc/inetd.conf 파일의 소유자가 root이고, 권한이 600인 아닌 경우
EOF
BAR

FILENAME=/etc/xinetd.d

if [ -f $FINENAME ] ; then
	INFO "/etc/xinetd.conf 파일이 존재합니다."
	find $FILENAME -perm 600 >/dev/null 2>&1
	if [ $? = 0 ] ; then
		OK "/etc/inetd.conf 파일의 소유자가 root이고, 권한이 600인 경우"
	else
		VUNL "/etc/inetd.conf 파일의 소유자가 root이고, 권한이 600인 아닌 경우"
	fi
else
	VUNL "/etc/xinetd.conf 파일이 없습니다. 확인하세요"
fi

cat $RESULT