10.6. 보안

/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- 의 파일 권한이 벤치마크와 정렬되지 않습니다.

(BZ#1858866)

libselinux-python 은 모듈을 통해서만 사용할 수 있습니다

libselinux-python 패키지에는 SELinux 애플리케이션 개발을 위한 Python 2 바인딩만 포함되어 있으며 이전 버전과의 호환성에 사용됩니다. 이러한 이유로 libselinux-pythondnf install libselinux-python 명령을 통해 기본 RHEL 8 리포지토리에서 더 이상 사용할 수 없습니다.

이 문제를 해결하려면 libselinux-pythonpython27 모듈을 둘 다 활성화하고 다음 명령을 사용하여 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 정책을 생성할 수 있습니다.

(BZ#1763210)

성능에 대한 기본 로깅 설정의 부정적인 영향

기본 로깅 환경 설정은 rsyslog 를 사용하여 systemd-journald를 실행할 때 4GB 메모리를 사용하거나 rate- limit 값을 조정하는 작업이 복잡할 수 있습니다.

자세한 내용은 성능 및 완화 기술 자료에 대한 RHEL 기본 로깅 설정의 부정적인 영향을 참조하십시오.

(JIRA:RHELPLAN-10431)

/etc/selinux/config 에서 SELINUX=disabled 가 제대로 작동하지 않음

/etc/selinux/config 에서 SELINUX=disabled 옵션을 사용하여 SELinux를 비활성화하면 커널이 SELinux가 활성화된 상태로 부팅되고 부팅 프로세스 후반부에서 비활성화 모드로 전환됩니다. 이로 인해 메모리 누수가 발생할 수 있습니다.

이 문제를 해결하려면 시나리오가 실제로 SELinux 제목을 완전히 비활성화해야 하는 경우 SELinux 제목 사용의 부팅 시 SELinux 모드 변경 섹션에 설명된 대로 커널 명령줄에 selinux=0 매개 변수를 추가하여 SELinux를 비활성화합니다.

(JIRA:RHELPLAN-34199)

암호화 정책이 Camellia 암호를 잘못 허용

RHEL 8 시스템 전체 암호화 정책은 제품 문서에 명시된 대로 모든 정책 수준에서 Camellia 암호를 비활성화해야 합니다. 그러나 Kerberos 프로토콜에서는 기본적으로 암호를 활성화합니다.

이 문제를 해결하려면 NO-CAMELLIA 하위 정책을 적용합니다.

# update-crypto-policies --set DEFAULT:NO-CAMELLIA

이전 명령에서 DEFAULT 에서 이전에 전환한 경우 DEFAULT 를 암호화 수준 이름으로 바꿉니다.

결과적으로 Camellia 암호는 해결 방법을 통해 비활성화하는 경우에만 시스템 전체 암호화 정책을 사용하는 모든 애플리케이션에서 올바르게 허용하지 않습니다.

(BZ#1919155)

IKEv2 와 함께 라벨이 지정된 여러 IPsec 연결을 사용할 수 없습니다.

Libreswan에서 IKEv2 프로토콜을 사용하는 경우 둘 이상의 연결에 대해 IPsec의 보안 레이블이 올바르게 작동하지 않습니다. 그 결과, 레이블이 지정된 IPsec을 사용하여 Libreswan은 첫 번째 연결만 설정할 수 있지만 후속 연결을 올바르게 설정할 수는 없습니다. 둘 이상의 연결을 사용하려면 IKEv1 프로토콜을 사용합니다.

(BZ#1934859)

OpenSC pkcs15-init 를 통한 스마트 카드 프로비저닝 프로세스가 제대로 작동하지 않음

file_caching 옵션은 기본 OpenSC 구성에서 활성화되며 파일 캐싱 기능이 pkcs15-init 도구의 일부 명령을 올바르게 처리하지 않습니다. 결과적으로 OpenSC를 통한 스마트 카드 프로비저닝 프로세스가 실패합니다.

이 문제를 해결하려면 /etc/opensc.conf 파일에 다음 코드 조각을 추가합니다.

app pkcs15-init {
        framework pkcs15 {
                use_file_caching = false;
        }
}

pkcs15-init 를 통한 스마트 카드 프로비저닝은 이전에 설명한 해결 방법을 적용한 경우에만 작동합니다.

(BZ#1947025)

SHA-1 서명이 있는 서버에 대한 연결이 GnuTLS에서 작동하지 않음

인증서의 SHA-1 서명은 GnuTLS 보안 통신 라이브러리에서 안전하지 않은 것으로 거부됩니다. 결과적으로 GnuTLS를 TLS 백엔드로 사용하는 애플리케이션은 이러한 인증서를 제공하는 피어에 TLS 연결을 설정할 수 없습니다. 이 동작은 다른 시스템 암호화 라이브러리와 일치하지 않습니다.

이 문제를 해결하려면 SHA-256 또는 더 강력한 해시로 서명된 인증서를 사용하거나 LEGACY 정책으로 전환하도록 서버를 업그레이드합니다.

(BZ#1628553)

FIPS 모드에서 OpenSSL은 특정 D-H 매개변수만 허용

FIPS 모드에서 OpenSSL을 사용하는 TLS 클라이언트는 잘못된 dh 값 오류를 반환하고 수동으로 생성된 매개 변수를 사용하는 서버에 대한 TLS 연결을 중단합니다. 이는 FIPS 140-2를 준수하도록 구성된 경우 OpenSSL이 NIST SP 800-56A rev3 부록 D (그룹 14, 15, 16, 17, 18 및 18 및 RFC 7919)에 정의된 그룹을 준수하는 Diffie-Hellman 매개변수에서만 작동하기 때문입니다. 또한 OpenSSL을 사용하는 서버는 다른 모든 매개 변수를 무시하고 대신 유사한 크기의 알려진 매개 변수를 선택합니다. 이 문제를 해결하려면 규정 준수 그룹만 사용하십시오.

(BZ#1810911)

사용자 지정 TCP 포트에서는 TCP 연결을 통한 연결이 작동하지 않습니다

tcp-remoteport Libreswan 구성 옵션이 제대로 작동하지 않습니다. 따라서 시나리오에서 기본이 아닌 TCP 포트를 지정해야 하는 경우 TCP 연결에 대한 IKE를 설정할 수 없습니다.

(BZ#1989050)

SELinux 감사 규칙 및 SELinux 부울 구성에서 충돌

감사 규칙 목록에 subj_* 또는 obj_* 필드가 포함된 감사 규칙과 SELinux 부울 구성이 변경되면 SELinux 부울 설정으로 인해 교착 상태가 발생합니다. 그 결과 시스템이 응답을 중지하고 복구를 위해 재부팅이 필요합니다. 이 문제를 해결하려면 subj_* 또는 obj_* 필드를 포함하는 모든 감사 규칙을 비활성화하거나 SELinux 부울을 변경하기 전에 이러한 규칙을 일시적으로 비활성화합니다.

RHSA-2021:2168 권고가 릴리스되면서 커널은 이 상황을 올바르게 처리하고 더 이상 교착 상태가 아닙니다.

(BZ#1924230)

systemd 는 임의의 경로에서 명령을 실행할 수 없습니다.

systemd 서비스는 SELinux 정책 패키지에 이러한 규칙을 포함하지 않기 때문에 /home/user/bin 임의 경로에서 명령을 실행할 수 없습니다. 결과적으로 비 시스템 경로에서 실행되는 사용자 지정 서비스가 실패하고 SELinux가 액세스를 거부하면 AVC(액세스 벡터 캐시) 거부 감사 메시지를 기록합니다. 이 문제를 해결하려면 다음 중 하나를 수행하십시오.

  • 스크립트를 -c 옵션과 함께 사용하여 명령을 실행합니다. 예를 들면 다음과 같습니다.

    bash -c command
  • /bin, /sbin, / usr/sbin, / usr/local/bin 및 / usr/local/ sbin 공통 디렉토리를 사용하여 공통 경로에서 명령을 실행합니다.

(BZ#1860443)

SSG의 특정 상호 의존 규칙 세트는 실패할 수 있습니다.

규칙 및 해당 종속 항목의 정의되지 않은 순서로 인해 벤치마크의 SCAP 보안 가이드 (SSG) 규칙 수정이 실패할 수 있습니다. 예를 들어, 한 규칙이 구성 요소를 설치하고 다른 규칙이 동일한 구성 요소를 구성하는 경우와 같이 두 개 이상의 규칙을 특정 순서로 실행해야 하는 경우 해당 규칙을 잘못된 순서로 실행하고 수정을 통해 오류를 보고할 수 있습니다. 이 문제를 해결하려면 수정을 두 번 실행하고 두 번째는 종속 규칙을 수정합니다.

(BZ#1750755)

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 보안 프로필을 사용하지 마십시오.

(BZ#1843932)

킥스타트에서는 RHEL 8에서 com _redhat_oscap 대신 org_fedora _oscap 을 사용합니다.

Kickstart는 OSCAP(Open Security Content Automation Protocol) Anaconda 애드온을 com_redhat _oscap 대신 org_fedora _oscap 으로 참조하여 혼동을 일으킬 수 있습니다. 이는 Red Hat Enterprise Linux 7과 이전 버전과의 호환성을 유지하기 위해 수행됩니다.

(BZ#1665082)

usbguard-notifier 가 저널에 너무 많은 오류 메시지를 기록합니다.

usbguard-notifier 서비스에는 usbguard-daemon IPC 인터페이스에 연결할 수 있는 프로세스 간 통신(IPC) 권한이 없습니다. 결과적으로 usbguard-notifier 가 인터페이스에 연결되지 않으며 해당 오류 메시지를 저널에 씁니다. usbguard-notifier--wait 옵션으로 시작되기 때문에 usbguard-notifier 가 연결 실패 후 1초마다 IPC 인터페이스에 연결을 시도합니다. 기본적으로 로그에는 이러한 메시지의 과도한 양이 곧 포함되어 있습니다.

이 문제를 해결하려면 usbguard-notifier 가 실행 중인 사용자 또는 그룹이 IPC 인터페이스에 연결하도록 허용합니다. 예를 들어 다음 오류 메시지에는 GDM(GNOME Display Manager)의 UID 및 GID 값이 포함되어 있습니다.

IPC connection denied: uid=42 gid=42 pid=8382, where uid and gid 42 = gdm

gdm 사용자에게 누락된 권한을 부여하려면 usbguard 명령을 사용하고 usbguard 데몬을 다시 시작합니다.

# usbguard add-user gdm --group --devices listen
# systemctl restart usbguard

누락된 권한을 부여하면 오류 메시지가 더 이상 로그에 표시되지 않습니다.

(BZ#2000000)

특정 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

따라서 현재 구성을 올바르게 작동하는 문자열로 제한해야 합니다.

(BZ#1679512)