9.2. 보안
OpenSC가 CardOS V5.3 카드 개체를 올바르게 감지하지 못할 수 있습니다.
OpenSC 툴킷은 일부 CardOS V5.3 카드에 사용된 다른 PKCS #15 파일 오프셋에서 캐시를 올바르게 읽지 않습니다. 그 결과 OpenSC에서 카드 오브젝트를 나열하지 못하고 다른 애플리케이션에서 사용하지 못할 수 있습니다.
이 문제를 해결하려면 /etc/opensc.conf
파일에서 use_file_caching = false
옵션을 설정하여 파일 캐싱을 끕니다.
sshd -T
는 Ciphers, MACs 및 KeX 알고리즘에 대한 부정확한 정보를 제공합니다.
sshd -T
명령의 출력에는 시스템 전체 암호화 정책 구성 또는 /etc/sysconfig/sshd
의 환경 파일에서 제공될 수 있고 sshd
명령에 인수로 적용되는 기타 옵션이 포함되어 있지 않습니다. 이는 업스트림 OpenSSH 프로젝트에서 RHEL 8에서 Red-Hat-provided 암호화 기본값을 지원하는 Include 지시문을 지원하지 않기 때문에 발생합니다. 암호화 정책은 EnvironmentFile
을 사용하여 서비스를 시작하는 동안
단위의 sshd 실행 파일에 명령줄 인수로 적용됩니다. 이 문제를 해결하려면 환경 파일과 함께 sshd
.servicesource
명령을 사용하고 sshd -T $CRYPTO_POLICY
와 같이 crypto 정책을 sshd
명령에 인수로 전달합니다. 자세한 내용은 Ciphers, MACs 또는 KeX 알고리즘은 sshd -T
와 현재 암호화 정책 수준에서 제공하는 것과 다릅니다. 결과적으로 sshd -T
의 출력은 현재 구성된 암호화 정책과 일치합니다.
Bugzilla:2044354[1]
설치 중에 시스템을 강화할 때 RHV 하이퍼바이저가 제대로 작동하지 않을 수 있습니다.
RHV-H(Red Hat Virtualization Hypervisor)를 설치하고 Red Hat Enterprise Linux 8 STIG 프로필을 적용할 때 OSCAP Anaconda 애드온은 시스템을 RVH-H 대신 RHEL로 강화하고 RHV-H의 필수 패키지를 제거할 수 있습니다. 결과적으로 RHV 하이퍼바이저가 작동하지 않을 수 있습니다. 이 문제를 해결하려면 프로필 강화를 적용하지 않고 RHV-H 시스템을 설치하고 설치가 완료된 후 OpenSCAP을 사용하여 프로필을 적용합니다. 결과적으로 RHV 하이퍼바이저가 올바르게 작동합니다.
CVE OVAL 피드는 이제 압축 형식으로만 제공되며 데이터 스트림은 SCAP 1.3 표준에 포함되어 있지 않습니다.
Red Hat은 bzip2 압축 형식으로 CVE OVAL 피드를 제공하며 XML 파일 형식으로 더 이상 사용할 수 없습니다. SCAP(Security Content Automation Protocol) 1.3 사양에서 압축 콘텐츠를 참조하는 것이 표준화되지 않기 때문에 타사 SCAP 스캐너에 피드를 사용하는 검사 규칙에 문제가 있을 수 있습니다.
특정 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
따라서 현재 구성은 올바르게 작동하는 문자열로 제한되어야 합니다.
CIS 서버 프로파일에는 GUI
및 Workstation
설치가 있는 서버를 사용할 수 없습니다.
CIS 서버 수준 1 및 수준 2 보안 프로필은 GUI 및
서버와 호환되지 않습니다. 결과적으로 Workstation
소프트웨어 선택과 함께GUI 소프트웨어 선택 및 CIS 서버 프로필이 포함된
RHEL 8을 설치할 수 없습니다. CIS 서버 수준 1 또는 수준 2 프로필을 사용하여 설치를 시도했으며 이러한 소프트웨어 선택 중 하나를 선택하면 오류 메시지가 생성됩니다.
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.
CIS 벤치마크에 따라 서버
를 서버로 조정해야 하는 경우 CIS Workstation
Level 1 또는 Level 2 프로필을 대신 사용하십시오.
Kickstart 설치 중에 서비스 관련 규칙 수정에 실패할 수 있습니다.
Kickstart 설치 중에 OpenSCAP 유틸리티에서 서비스 활성화
또는 비활성화
상태 수정이 필요하지 않은 것으로 잘못 표시되는 경우가 있습니다. 그 결과 OpenSCAP에서 설치된 시스템의 서비스를 비준수 상태로 설정할 수 있습니다. 이 문제를 해결하려면 Kickstart 설치 후 시스템을 스캔하고 수정할 수 있습니다. 이렇게 하면 서비스 관련 문제가 해결됩니다.
Kickstart는 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과의 호환성을 유지하기 위해 필요합니다.
Bugzilla:1665082[1]
libvirt
overrides xccdf_org.ssgproject.content_rule_sysctl_net_ipv4_conf_all_forwarding
libvirt
가상화 프레임워크는 경로
또는 nat
의 전달 모드가 있는 가상 네트워크가 시작될 때마다 IPv4 전달을 활성화합니다. 이렇게 하면 xccdf_org.ssgproject.content_rule_sysctl_net_ipv4_conf_all_forwarding
규칙에 의해 구성이 재정의되고 후속 규정 준수 검사에서는 이 규칙을 평가할 때 실패
결과를 보고합니다.
이러한 시나리오 중 하나를 적용하여 문제를 해결합니다.
-
시나리오에 필요하지 않은 경우
libvirt
패키지를 설치 제거합니다. -
libvirt
에서 생성한 가상 네트워크의 전달 모드를 변경합니다. -
프로필을 조정하여
xccdf_org.ssgproject.content_rule_sysctl_net_ipv4_conf_all_forwarding
규칙을 제거합니다.
fapolicyd
유틸리티에서 변경된 파일을 잘못 실행할 수 있습니다.
올바르게 파일의 IMA 해시는 파일을 변경한 후 업데이트해야 하며 fapolicyd
는 변경된 파일의 실행을 방지해야 합니다. 그러나 이는 IMA 정책 설정의 차이점과 evctml
유틸리티의 파일 해시로 인해 발생하지 않습니다. 결과적으로 IMA 해시는 변경된 파일의 확장된 속성에서 업데이트되지 않습니다. 결과적으로 fapolicyd
에서 변경된 파일을 잘못 실행할 수 있습니다.
Jira:RHEL-520[1]
semanage fcontext
명령은 로컬 수정 순서를 변경합니다.
semanage fcontext -l -C
명령은 file_contexts.local
파일에 저장된 로컬 파일 컨텍스트 수정 사항을 나열합니다. restorecon
유틸리티는 file_contexts.local
의 항목을 가장 최근 항목에서 가장 오래된 항목으로 처리합니다. 그러나 semanage fcontext -l -C
는 항목을 다른 순서로 나열합니다. 처리 순서와 목록 순서가 일치하지 않으면 SELinux 규칙을 관리할 때 문제가 발생할 수 있습니다.
Jira:RHEL-24461[1]
FIPS 모드의 OpenSSL은 특정 D-H 매개변수만 허용
FIPS 모드에서 OpenSSL을 사용하는 TLS 클라이언트는 잘못된 dh 값
오류를 반환하고 수동으로 생성된 매개변수를 사용하는 서버에 대한 TLS 연결을 취소합니다. 이는 OpenSSL이 FIPS 140-2를 준수하도록 구성된 경우 NIST SP 800-56A rev3 부록 D(그룹 14, 15, 16, 17 및 18)를 준수하는 Diffie-Hellman 매개변수에서만 RFC 3526 및 RFC 7919)에 정의되어 있기 때문입니다. 또한 OpenSSL을 사용하는 서버는 다른 모든 매개변수를 무시하고 대신 유사한 크기의 알려진 매개 변수를 선택합니다. 이 문제를 해결하려면 규정 준수 그룹만 사용하십시오.
Bugzilla:1810911[1]
암호화 정책에서
Camellia 암호를 잘못 허용
RHEL 8 시스템 전체 암호화 정책은 제품 문서에 명시된 대로 모든 정책 수준에서 Camellia 암호를 비활성화해야 합니다. 그러나 Kerberos 프로토콜은 기본적으로 암호를 활성화합니다.
이 문제를 해결하려면 NO-CAMELLIA
하위 정책을 적용합니다.
# update-crypto-policies --set DEFAULT:NO-CAMELLIA
이전 명령에서 이전에 DEFAULT
에서 전환한 경우 DEFAULT
를 암호화 수준 이름으로 바꿉니다.
결과적으로 해결 방법을 통해 비활성화한 경우에만 시스템 전체 암호화 정책을 사용하는 모든 애플리케이션에서 Camellia 암호가 올바르게 허용되지 않습니다.
OpenSC pkcs15-init
를 통한 스마트 카드 프로비저닝 프로세스가 제대로 작동하지 않음
file_caching
옵션은 기본 OpenSC 구성에서 활성화되며 파일 캐싱 기능은 pkcs15-init
도구의 일부 명령을 올바르게 처리하지 않습니다. 결과적으로 OpenSC를 통한 스마트 카드 프로비저닝 프로세스가 실패합니다.
이 문제를 해결하려면 /etc/opensc.conf
파일에 다음 스니펫을 추가합니다.
app pkcs15-init { framework pkcs15 { use_file_caching = false; } }
이전에 설명한 해결 방법을 적용한 경우에만 pkcs15-init
를 통한 스마트 카드 프로비저닝이 작동합니다.
SHA-1 서명을 사용하는 서버에 대한 연결이 GnuTLS에서 작동하지 않음
인증서의 SHA-1 서명은 비보안 GnuTLS 보안 통신 라이브러리에서 거부됩니다. 결과적으로 GnuTLS를 TLS 백엔드로 사용하는 애플리케이션은 이러한 인증서를 제공하는 피어에 대한 TLS 연결을 설정할 수 없습니다. 이 동작은 다른 시스템 암호화 라이브러리와 일치하지 않습니다.
이 문제를 해결하려면 SHA-256 또는 더 강력한 해시로 서명된 인증서를 사용하도록 서버를 업그레이드하거나 LEGACY 정책으로 전환합니다.
Bugzilla:1628553[1]
libselinux-python
은 모듈을 통해서만 사용할 수 있습니다.
libselinux-python
패키지에는 SELinux 애플리케이션 개발을 위한 Python 2 바인딩만 포함되어 있으며 이전 버전과의 호환성을 위해 사용됩니다. 이러한 이유로 yum install
명령을 통해 기본 RHEL 8 리포지토리에서 libselinux-python을 더 이상 사용할 수 없습니다.
libselinux-python
이 문제를 해결하려면 libselinux-python
및 python27
모듈을 모두 활성화하고 다음 명령을 사용하여 libselinux-python
패키지 및 해당 종속 항목을 설치합니다.
# yum module enable libselinux-python # yum install libselinux-python
또는 단일 명령으로 설치 프로필을 사용하여 libselinux-python
을 설치합니다.
# yum module install libselinux-python:2.8/common
결과적으로 지정된 모듈을 사용하여 libselinux-python
을 설치할 수 있습니다.
Bugzilla:1666328[1]
Udica
는 --env container=podman
로 시작하는 경우에만 UBI 8 컨테이너를 처리합니다.
Red Hat UBI 8(Universal Base Image 8) 컨테이너는
환경 변수를 podman
값이 아닌 컨테이너oci
값으로 설정합니다. 이렇게 하면 udica
툴이 컨테이너 JSON(JavaScript Object Notation) 파일을 분석하지 않습니다.
이 문제를 해결하려면 --env container=podman
매개변수와 함께 podman
명령을 사용하여 UBI 8 컨테이너를 시작합니다. 결과적으로 udica
는 설명된 해결 방법을 사용하는 경우에만 UBI 8 컨테이너에 대한 SELinux 정책을 생성할 수 있습니다.
성능에 대한 기본 로깅 설정의 부정적인 영향
기본 로깅 환경 설정은 4GB의 메모리를 사용하거나 더 많은 메모리를 사용할 수 있으며, systemd-journald
가 rsyslog
를 사용하여 실행되는 경우 rate-limit 값 조정이 복잡할 수 있습니다.
자세한 내용은 RHEL 기본 로깅 설정의 성능 및 완화 지식베이스 문서를 참조하십시오.
Jira:RHELPLAN-10431[1]
/etc/selinux/config
에서 SELINUX=disabled
가 제대로 작동하지 않음
/etc/selinux/config
에서 SELINUX=disabled
옵션을 사용하여 SELinux를 비활성화하면 커널이 SELinux가 활성화된 상태로 부팅되고 부팅 프로세스의 나중에 비활성화 모드로 전환됩니다. 이로 인해 메모리 누수가 발생할 수 있습니다.
이 문제를 해결하려면 실제로 SELinux를 완전히 비활성화해야 하는 경우 부팅 시 SELinux 모드 변경 섹션에 설명된 대로 selinux=0
매개 변수 를 커널 명령줄에 추가하여 SELinux를 비활성화합니다.
Jira:RHELPLAN-34199[1]
TCP 연결을 통한 IKE는 사용자 지정 TCP 포트에서 작동하지 않음
tcp-remoteport
Libreswan 구성 옵션이 제대로 작동하지 않습니다. 따라서 시나리오가 기본이 아닌 TCP 포트를 지정해야 하는 경우에는 TCP 연결을 통해 IKE를 설정할 수 없습니다.
scap-security-guide
는 유휴 세션의 종료를 구성할 수 없습니다.
sshd_set_idle_timeout
규칙은 데이터 스트림에 계속 존재하지만 sshd
구성의 유휴 세션 시간 초과 방법은 더 이상 사용할 수 없습니다. 따라서 규칙은 적용되지 않으며
어떤 것도 강화할 수 없습니다. systemd
(Logind)와 같은 유휴 세션 종료를 구성하는 다른 방법도 사용할 수 없습니다. 결과적으로 scap-security-guide
는 일정 시간 후에 유휴 세션의 연결을 안정적으로 연결하도록 시스템을 구성할 수 없습니다.
보안 요구 사항을 충족할 수 있는 다음 방법 중 하나로 이 문제를 해결할 수 있습니다.
-
accounts_tmout
규칙 구성. 그러나 이 변수는exec
명령을 사용하여 재정의할 수 있습니다. -
configure_tmux_lock_after_time
및configure_bashrc_exec_tmux
규칙을 구성합니다. 이를 위해서는tmux
패키지를 설치해야 합니다. -
RHEL 8.7 이상으로 업그레이드하면
systemd
기능이 적절한 SCAP 규칙과 함께 이미 구현되어 있습니다.
OSCAP Anaconda 애드온은 그래픽 설치에서 맞춤형 프로필을 가져오지 않습니다.
OSCAP Anaconda 애드온은 RHEL 그래픽 설치에서 보안 프로필의 맞춤을 선택하거나 선택 해제할 수 있는 옵션을 제공하지 않습니다. RHEL 8.8부터는 아카이브 또는 RPM 패키지에서 설치할 때 애드온은 기본적으로 고려되지 않습니다. 결과적으로 설치 시 OSCAP 맞춤형 프로필을 가져오는 대신 다음 오류 메시지가 표시됩니다.
There was an unexpected problem with the supplied content.
이 문제를 해결하려면 Kickstart 파일의 %addon org_fedora_oscap
섹션에 경로를 지정해야 합니다. 예를 들면 다음과 같습니다.
xccdf-path = /usr/share/xml/scap/sc_tailoring/ds-combined.xml tailoring-path = /usr/share/xml/scap/sc_tailoring/tailoring-xccdf.xml
결과적으로 해당 Kickstart 사양에서만 OSCAP 맞춤형 프로필에 대해 그래픽 설치를 사용할 수 있습니다.
OpenSCAP 메모리 사용량 문제
메모리가 제한된 시스템에서 OpenSCAP 스캐너가 미리 중지되거나 결과 파일을 생성하지 못할 수 있습니다. 이 문제를 해결하려면 전체 /
파일 시스템에 대한 재귀와 관련된 규칙을 선택 해제하도록 스캔 프로필을 사용자 지정할 수 있습니다.
-
rpm_verify_hashes
-
rpm_verify_permissions
-
rpm_verify_ownership
-
file_permissions_unauthorized_world_writable
-
no_files_unowned_by_user
-
dir_perms_world_writable_system_owned
-
file_permissions_unauthorized_suid
-
file_permissions_unauthorized_sgid
-
file_permissions_ungroupowned
-
dir_perms_world_writable_sticky_bits
자세한 내용 및 해결 방법은 관련 지식 베이스 문서를 참조하십시오.
rpm
데이터베이스 다시 빌드에서 잘못된 SELinux 레이블 지정
명령을 사용하여 rpm 데이터베이스를 다시 빌드하면 rpm
db --rebuilddbrpm
데이터베이스 파일에 잘못된 SELinux 레이블을 할당합니다. 결과적으로 rpm
데이터베이스를 사용하는 일부 서비스가 제대로 작동하지 않을 수 있습니다. 데이터베이스를 다시 빌드한 후 이 문제를 해결하려면 restorecon -Rv /var/lib/rpm
명령을 사용하여 데이터베이스 레이블을 다시 지정합니다.
감사에 대한 ANSSI BP28 HP SCAP 규칙이 64비트 ARM 아키텍처에서 잘못 사용됩니다.
SCAP Security Guide(SSG)의 ANSSI BP28 High 프로필에는 Linux 감사 하위 시스템을 구성하지만 64비트 ARM 아키텍처에서 유효하지 않은 다음의 SCAP(Security Content Automation Protocol) 규칙이 포함되어 있습니다.
-
audit_rules_unsuccessful_file_modification_creat
-
audit_rules_unsuccessful_file_modification_open
-
audit_rules_file_deletion_events_rename
-
audit_rules_file_deletion_events_rmdir
-
audit_rules_file_deletion_events_unlink
-
audit_rules_dac_modification_chmod
-
audit_rules_dac_modification_chown
-
audit_rules_dac_modification_lchown
이 프로필을 사용하여 64비트 ARM 머신에서 실행되는 RHEL 시스템을 구성하는 경우 잘못된 시스템 호출을 사용하므로 감사 데몬이 시작되지 않습니다.
이 문제를 해결하려면 프로필 맞춤을 사용하여 데이터 스트림에서 이전에 언급된 규칙을 제거하거나 /etc/audit/rules.d
디렉터리의 파일을 편집하여 -S <syscall
> 스니펫을 제거합니다. 파일에는 다음 시스템 호출을 포함하지 않아야 합니다.
- creat
- open
- 이름 변경
- rmdir
- unlink
- chmod
- chown
- lchown
두 가지 해결 방법 중 하나로 인해 64비트 ARM 시스템에서 ANSSI BP28 High 프로필을 사용한 후에도 감사 데몬이 시작될 수 있습니다.