5.7.4. 보안
사용자는 잠긴 사용자로 sudo 명령을 실행할 수 있습니다.
sudoers 권한이 ALL 키워드로 정의된 시스템에서 권한이 있는 sudo 사용자는 계정이 잠겨 있는 사용자로 sudo 명령을 실행할 수 있습니다. 따라서 잠김 및 만료된 계정은 명령을 실행하는 데 계속 사용할 수 있습니다.
이 문제를 해결하려면 /etc/shells 에서 유효한 쉘의 적절한 설정과 함께 새로 구현된 runas_check_shell 옵션을 활성화하십시오. 이렇게 하면 공격자가 시스템 계정(예: bin )에서 명령을 실행하지 못합니다.
(BZ#1786990)
Gnutls가 NSS 서버로 현재 세션을 다시 시작하지 못했습니다
TLS(Transport Layer Security) 1.3 세션을 다시 시작할 때 GnuTLS 클라이언트는 60밀리초 동안 서버에 세션 재개 데이터를 보낼 때까지 예상 왕복 시간을 기다립니다. 서버가 이 시간 내에 재사용 데이터를 전송하지 않으면 클라이언트는 현재 세션을 다시 시작하지 않고 새 세션을 만듭니다. 이로 인해 정기적인 세션 협상에 약간의 성능에 영향을 미치는 것을 제외하고는 심각한 부정적인 영향이 발생하지 않습니다.
libselinux-python 은 모듈을 통해서만 사용할 수 있습니다
libselinux-python 패키지에는 SELinux 애플리케이션 개발을 위한 Python 2 바인딩만 포함되어 있으며 이전 버전과의 호환성에 사용됩니다. 이러한 이유로 libselinux-python 은 dnf install libselinux-python 명령을 통해 기본 RHEL 8 리포지토리에서 더 이상 사용할 수 없습니다.
이 문제를 해결하려면 libselinux-python 및 python27 모듈을 둘 다 활성화하고 다음 명령을 사용하여 libselinux-python 패키지와 해당 종속성을 설치합니다.
# dnf module enable libselinux-python
# dnf install libselinux-python
또는 단일 명령으로 설치 프로파일을 사용하여 libselinux-python 을 설치합니다.
# dnf module install libselinux-python:2.8/common
결과적으로 해당 모듈을 사용하여 libselinux-python 을 설치할 수 있습니다.
(BZ#1666328)
udica 는 --env container=podman으로 시작되는 경우에만 UBI 8 컨테이너를처리합니다.
Red Hat Universal Base Image 8(UBI 8) 컨테이너는 컨테이너 환경 변수를 podman 값이 아닌 oci 값으로 설정합니다. 이렇게 하면 udica 툴에서 컨테이너 JSON(JavaScript Object Notation) 파일을 분석하지 못합니다.
이 문제를 해결하려면 --env container=podman 매개변수와 함께 시작합니다. 결과적으로 podman 명령을 사용하여 UBI 8 컨테이너를udica 는 설명된 해결 방법을 사용하는 경우에만 UBI 8 컨테이너에 대한 SELinux 정책을 생성할 수 있습니다.
성능에 대한 기본 로깅 설정의 부정적인 영향
기본 로깅 환경 설정은 rsyslog 를 사용하여 systemd-journald를 실행할 때 4GB 메모리를 사용하거나 rate- limit 값을 조정하는 작업이 복잡할 수 있습니다.
자세한 내용은 성능 및 완화 기술 자료에 대한 RHEL 기본 로깅 설정의 부정적인 영향을 참조하십시오.
(JIRA:RHELPLAN-10431)
/etc/passwd- 의 파일 권한은 CIS RHEL 8 벤치마크 1.0.0과 일치하지 않습니다.
CIS 벤치마크의 문제로 인해 /etc/passwd- 백업 파일에 대한 권한을 보장하는 SCAP 규칙의 수정으로 인해 권한을 0644 로 구성합니다. 그러나 CIS Red Hat Enterprise Linux 8 벤치마크 1.0.0 에는 해당 파일에 대한 파일 권한 0600 이 필요합니다. 결과적으로 수정 후 /etc/passwd- 의 파일 권한이 벤치마크와 정렬되지 않습니다.
/etc/selinux/config 에서 SELINUX=disabled 가 제대로 작동하지 않음
/etc/selinux/config 에서 SELINUX=disabled 옵션을 사용하여 SELinux를 비활성화하면 커널이 SELinux가 활성화된 상태로 부팅되고 부팅 프로세스 후반부에서 비활성화 모드로 전환됩니다. 이로 인해 메모리 누수가 발생할 수 있습니다.
이 문제를 해결하려면 시나리오가 실제로 SELinux 제목을 완전히 비활성화해야 하는 경우 SELinux 제목 사용의 부팅 시 SELinux 모드 변경 섹션에 설명된 대로 커널 명령줄에 selinux=0 매개 변수를 추가하여 SELinux를 비활성화합니다.
(JIRA:RHELPLAN-34199)
ssh-keyscan 은 FIPS 모드에서 RSA 키를 검색할 수 없습니다
FIPS 모드에서 RSA 서명에 대해 SHA-1 알고리즘이 비활성화되어 ssh-keyscan 유틸리티가 해당 모드에서 작동하는 서버의 RSA 키를 검색하지 못하게 합니다.
이 문제를 해결하려면 대신 ECDSA 키를 사용하거나 서버의 /etc/ssh/ssh_host_rsa_key.pub 파일에서 키를 로컬로 검색합니다.
OpenSSL 에서 원시 RSA 또는 RSA-PSS 서명을 지원하지 않는 PKCS #11 토큰을 잘못 처리합니다.
OpenSSL 라이브러리는 PKCS #11 토큰의 키 관련 기능을 탐지하지 않습니다. 결과적으로 원시 RSA 또는 RSA-PSS 서명을 지원하지 않는 토큰으로 서명이 생성되면 TLS 연결 설정에 실패합니다.
이 문제를 해결하려면 /etc/pki/tls/openssl
.cnf 파일의 행 뒤에 다음 행을 추가하십시오.crypto_policy 섹션 끝에.include
SignatureAlgorithms = RSA+SHA256:RSA+SHA512:RSA+SHA384:ECDSA+SHA256:ECDSA+SHA512:ECDSA+SHA384
MaxProtocol = TLSv1.2
따라서 설명된 시나리오에서 TLS 연결을 설정할 수 있습니다.
(BZ#1685470)
FIPS 모드에서 OpenSSL은 특정 D-H 매개변수만 허용
FIPS 모드에서 OpenSSL을 사용하는 TLS(Transport Security Layer) 클라이언트는 잘못된 dh 값 오류를 반환하고 수동으로 생성된 매개 변수를 사용하는 서버에 대한 TLS 연결을 중단합니다. 이는 FIPS 140-2를 준수하도록 구성된 경우 OpenSSL이 NIST SP 800-56A rev3 부록 D(RFC 3526 및 RFC 7919)에 정의된 그룹과 RFC 7919)을 준수하는 D-H 매개변수에서만 작동하기 때문입니다. 또한 OpenSSL을 사용하는 서버는 다른 모든 매개 변수를 무시하고 대신 유사한 크기의 알려진 매개 변수를 선택합니다. 이 문제를 해결하려면 규정 준수 그룹만 사용하십시오.
(BZ#1810911)
rpm-plugin-selinux 패키지를 제거하면 시스템에서 모든 selinux-policy 패키지가 제거됩니다.
rpm-plugin-selinux 패키지를 제거하면 시스템에서 SELinux가 비활성화됩니다. 또한 시스템에서 모든 selinux-policy 패키지를 제거합니다. 그런 다음 rpm-plugin-selinux 패키지를 반복적으로 설치한 후 selinux-policy- SELinux 정책을 설치합니다. 그러나 반복적으로 설치하면 정책 변경 사항을 고려하여 SELinux 구성 파일이 업데이트되지 않습니다. 결과적으로 targeted 정책이 시스템에 있는 경우에도 selinux-policy- minimumrpm-plugin-selinux 패키지를 다시 설치해도 SELinux가 비활성화됩니다.
이 문제를 해결하려면 다음을 수행합니다.
-
umount /sys/fs/selinux/명령을 입력합니다. -
누락된
selinux-policy-targeted패키지를 수동으로 설치합니다. -
정책이
SELINUX=enforcing과 같도록/etc/selinux/config파일을 편집합니다. -
load_policy -i명령을 입력합니다.
결과적으로 SELinux가 활성화되어 이전과 동일한 정책을 실행합니다.
(BZ#1641631)
systemd 서비스는 임의의 경로에서 명령을 실행할 수 없습니다.
systemd 서비스는 SELinux 정책 패키지에 이러한 규칙을 포함하지 않기 때문에 /home/user/bin 임의 경로에서 명령을 실행할 수 없습니다. 결과적으로 비 시스템 경로에서 실행되는 사용자 지정 서비스가 실패하고 SELinux가 액세스를 거부하면 AVC(액세스 벡터 캐시) 거부 감사 메시지를 기록합니다. 이 문제를 해결하려면 다음 중 하나를 수행하십시오.
쉘 스크립트를
-c옵션과 함께 사용하여 명령을 실행합니다. 예를 들면 다음과 같습니다.bash -c command-
/bin, /sbin, /usr/sbin, /usr/local/공통 디렉토리를 사용하여 공통 경로에서 명령을 실행합니다.bin 및 /usr/local/sbin
CIS 프로파일에서 rpm_verify_permissions 실패
rpm_verify_permissions 규칙은 파일 권한을 패키지 기본 권한과 비교합니다. 그러나 scap-security-guide 패키지에서 제공하는 CIS(Center for Internet Security) 프로필은 일부 파일 권한을 기본값보다 더 엄격하게 변경합니다. 그 결과 rpm_verify_permissions 를 사용한 특정 파일 확인에 실패했습니다.
이 문제를 해결하려면 이러한 파일에 다음 권한이 있는지 수동으로 확인합니다.
-
/etc/cron.d(0700) -
/etc/cron.hourly(0700) -
/etc/cron.monthly(0700) -
/etc/crontab(0600) -
/etc/cron.weekly(0700) -
/etc/cron.daily(0700)
킥스타트에서는 RHEL 8에서 com 을 사용합니다._redhat_oscap 대신 org_fedora _oscap
Kickstart는 OSCAP(Open Security Content Automation Protocol) Anaconda 애드온을 com_redhat 으로 참조하여 혼동을 일으킬 수 있습니다. 이는 Red Hat Enterprise Linux 7과 이전 버전과의 호환성을 유지하기 위해 수행됩니다.
_oscap 대신 org_fedora _oscap
(BZ#1665082)
SSG의 특정 상호 의존 규칙 세트는 실패할 수 있습니다.
규칙 및 해당 종속 항목의 정의되지 않은 순서로 인해 벤치마크의 SCAP 보안 가이드 (SSG) 규칙 수정이 실패할 수 있습니다. 예를 들어, 한 규칙이 구성 요소를 설치하고 다른 규칙이 동일한 구성 요소를 구성하는 경우와 같이 두 개 이상의 규칙을 특정 순서로 실행해야 하는 경우 해당 규칙을 잘못된 순서로 실행하고 수정을 통해 오류를 보고할 수 있습니다. 이 문제를 해결하려면 수정을 두 번 실행하고 두 번째는 종속 규칙을 수정합니다.
OSCAP Anaconda 애드온은 모든 패키지를 텍스트 모드에 설치하지 않음
OSCAP Anaconda Addon 플러그인은 설치가 텍스트 모드에서 실행 중인 경우 시스템 설치 프로그램에서 설치에 대해 선택한 패키지 목록을 수정할 수 없습니다. 결과적으로 Kickstart를 사용하여 보안 정책 프로필을 지정하고 설치가 텍스트 모드로 실행되는 경우 보안 정책에 필요한 추가 패키지는 설치 중에 설치되지 않습니다.
이 문제를 해결하려면 그래픽 모드에서 설치를 실행하거나 Kickstart 파일의 %packages 섹션에 있는 보안 정책의 보안 정책에서 필요한 모든 패키지를 지정합니다.
결과적으로 보안 정책 프로필에 필요한 패키지는 설명된 해결 방법 중 하나가 없으면 RHEL 설치 중에 설치되지 않으며 설치된 시스템은 지정된 보안 정책 프로필을 준수하지 않습니다.
OSCAP Anaconda 애드온 이 사용자 지정 프로파일을 올바르게 처리하지 않음
OSCAP Anaconda 애드온 플러그인은 별도의 파일의 사용자 지정으로 보안 프로필을 올바르게 처리하지 않습니다. 따라서 해당 Kickstart 섹션에서 적절하게 지정하는 경우에도 RHEL 그래픽 설치에서 사용자 지정된 프로필을 사용할 수 없습니다.
이 문제를 해결하려면 원래 DS에서 단일 SCAP 데이터 스트림 생성 및 맞춤형 파일 지식 베이스 문서의 지침을 따르십시오. 이 해결방법은 RHEL 그래픽 설치에서 사용자 지정 SCAP 프로필을 사용할 수 있습니다.
(BZ#1691305)
OSPP 기반 프로필은 GUI 패키지 그룹과 호환되지 않습니다.
GUI 패키지 그룹과 함께 서버에서 설치한 GNOME 패키지에는 OSPP(Operating System Protection Profile)와 호환되지 않는 nfs-utils 패키지가 필요합니다. 결과적으로 OSPP 또는 OSPP 기반 프로필(예: STIG(Security Technical Implementation Guide))을 사용하여 시스템을 설치하는 동안 GUI 패키지 그룹이 포함된 서버를 선택하면 OpenSCAP에 선택한 패키지 그룹이 보안 정책과 호환되지 않는다는 경고가 표시됩니다. OSPP 기반 프로필이 설치 후 적용되는 경우 시스템을 부팅할 수 없습니다. 이 문제를 해결하려면 GUI 패키지 그룹이나 OSPP 프로파일과 OSPP 기반 프로필을 사용할 때 GUI를 설치하는 다른 그룹을 사용하여 서버를 설치하지 마십시오. 대신 Server 또는 Minimal Install 패키지 그룹을 사용하는 경우 시스템이 문제 없이 설치되고 올바르게 작동합니다.
GUI 또는 서버를 설치할 수 없습니다.워크스테이션 소프트웨어 선택 및 CIS 보안 프로파일을 사용하여
CIS 보안 프로필은 GUI 및 워크스테이션 소프트웨어 선택과 호환되지 않습니다. 결과적으로 GUI 소프트웨어 선택 및 CIS 프로파일을 사용하여 서버를 사용하여 RHEL 8을 설치할 수 없습니다. CIS 프로필을 사용하여 시도한 설치와 이러한 소프트웨어 선택 중 하나가 오류 메시지를 생성합니다.
package xorg-x11-server-common has been added to the list of excluded packages, but it can't be removed from the current software selection without breaking the installation.
이 문제를 해결하려면 GUI 또는 CIS 보안 프로필을 사용하지 마십시오.
워크스테이션 소프트웨어 선택이 포함된 서버와 함께
킥스타트 설치 중에 서비스 관련 규칙을 수정하는 데 실패할 수 있습니다.
Kickstart를 설치하는 동안 OpenSCAP 유틸리티에서 서비스가 상태 수정을 활성화하거나 비활성화할 필요가 없음을 잘못 표시한 경우가 있습니다. 결과적으로 OpenSCAP은 설치된 시스템의 서비스를 준수하지 않는 상태로 설정할 수 있습니다. 이 문제를 해결하려면 kickstart 설치 후 시스템을 스캔하고 교정할 수 있습니다. 그러면 서비스 관련 문제가 해결됩니다.
특정 rsyslog 우선 순위 문자열이 올바르게 작동하지 않음
암호화를 세밀하게 제어할 수 있는 imtcp 에 대한 GnuTLS 우선순위 문자열 지원은 완료되지 않습니다. 결과적으로, rsyslog 에서 다음 우선 순위 문자열이 제대로 작동하지 않습니다 :
NONE:+VERS-ALL:-VERS-TLS1.3:+MAC-ALL:+DHE-RSA:+AES-256-GCM:+SIGN-RSA-SHA384:+COMP-ALL:+GROUP-ALL
이 문제를 해결하려면 우선 순위 문자열이 올바르게 작동하는 경우에만 사용하십시오.
NONE:+VERS-ALL:-VERS-TLS1.3:+MAC-ALL:+ECDHE-RSA:+AES-128-CBC:+SIGN-RSA-SHA1:+COMP-ALL:+GROUP-ALL
따라서 현재 구성을 올바르게 작동하는 문자열로 제한해야 합니다.
암호화 정책이 Camellia 암호를 잘못 허용
RHEL 8 시스템 전체 암호화 정책은 제품 문서에 명시된 대로 모든 정책 수준에서 Camellia 암호를 비활성화해야 합니다. 그러나 Kerberos 프로토콜에서는 기본적으로 암호를 활성화합니다.
이 문제를 해결하려면 NO-CAMELLIA 하위 정책을 적용합니다.
# update-crypto-policies --set DEFAULT:NO-CAMELLIA
이전 명령에서 DEFAULT 에서 이전에 전환한 경우 DEFAULT 를 암호화 수준 이름으로 바꿉니다.
결과적으로 Camellia 암호는 해결 방법을 통해 비활성화하는 경우에만 시스템 전체 암호화 정책을 사용하는 모든 애플리케이션에서 올바르게 허용하지 않습니다. (BZ#1919155)