4.6. 보안

libreswan은 4.9로 다시 설정

libreswan 패키지가 4.9 버전으로 업그레이드되었습니다. 이전 버전의 주요 변경 사항은 다음과 같습니다.

  • addconnwhack 유틸리티에 대한 {left,right}pubkey= 옵션을 지원
  • KDF 자체 테스트
  • 호스트의 인증 키 표시(showhostkey).

    • ECDSA 공개 키 지원
    • PEM 인코딩 공개 키를 출력하는 새로운 --pem 옵션
  • 인터넷 키 교환 프로토콜 버전 2 (IKEv2):

    • 확장 가능한 인증 프로토콜 - 전송 계층 보안 (EAP-TLS) 지원
    • EAP 전용 인증 지원
  • pluto IKE 데몬:

    • maxbytesmaxpacket 카운터 지원

Bugzilla:2128669

OpenSSL이 3.0.7로 다시 시작

OpenSSL 패키지는 다양한 버그 수정 및 개선 사항이 포함된 버전 3.0.7로 변경되었습니다. 특히 기본 공급자에는 이제 RIPEMD160 해시 기능이 포함됩니다.

Bugzilla:2129063

libssh 에서 스마트 카드 지원

이제 PKI(Public-Key Cryptography Standard) #11 URI(Uniform Resource Identifier)를 통해 스마트 카드를 사용할 수 있습니다. 결과적으로 libssh SSH 라이브러리와 libssh 를 사용하는 애플리케이션에서 스마트 카드를 사용할 수 있습니다.

Bugzilla:2026449

libssh rebased to 0.10.4

시스템 간 보안 원격 액세스 및 파일 전송을 위해 SSH 프로토콜을 구현하는 libssh 라이브러리가 버전 0.10.4로 업데이트되었습니다.

새로운 기능:

  • OpenSSL 3.0 지원이 추가되었습니다.
  • 스마트 카드에 대한 지원이 추가되었습니다.
  • IdentityAgentModuliFile 두 가지 새로운 구성 옵션이 추가되었습니다.

기타 주요 변경 사항은 다음과 같습니다.

  • 1.0.1 이전 버전 OpenSSL은 더 이상 지원되지 않습니다.
  • 기본적으로 DSL(Digital Signature Algorithm) 지원은 빌드 시 비활성화되었습니다.
  • SCP API는 더 이상 사용되지 않습니다.
  • catalog keyprivatekey API는 더 이상 사용되지 않습니다.

Bugzilla:2068475

3.5로 업데이트 된 SELinux 사용자 공간 패키지

SELinux 사용자 공간 패키지 libselinux,libse manage,checkpolicy,mcstrans, policycoreutils, sepolicy 유틸리티를 포함하는 버전 3.5로 업데이트되었습니다. 주요 개선 사항 및 버그 수정 사항은 다음과 같습니다.

  • sepolicy 유틸리티:

    • man 페이지에 누락된 부울 추가
    • 여러 Python 및 GTK 업데이트
  • PCRE2 라이브러리의 힙 메모리 사용량을 줄이는 libselinux 에 해결방법이 추가되었습니다.
  • libsepol 패키지:

    • 커널 정책에 대한 type AV 규칙의 속성 거부
    • 더 이상 간단한 왕복 테스트를 허용하는 빈 클래스 정의를 작성하지 않습니다.
    • 엄격한 정책 검증
  • fixfiles 스크립트는 SIGINT 신호에 임시 바인드 마운트를 마운트 해제합니다.
  • 많은 코드 및 맞춤법 버그가 수정됨
  • 더 이상 사용되지 않는 Python 모듈 distutils 및 PIP를 사용한 설치에 대한 종속성 제거
  • semodule 옵션 --rebuild-if-modules-changed 의 이름이 --refresh로 변경됨
  • 생성된 설명을 위해 번역 업데이트 및 지원되지 않는 언어의 처리 개선
  • 많은 정적 코드 분석 버그, 퍼저 문제 및 컴파일러 경고가 수정됨

Bugzilla:2145224,Bugzilla:2145228,Bugzilla:2145229,Bugzilla:2145226,Bugzilla:2145230,Bugzilla:2145231

OpenSCAP이 1.3.7로 재기반

OpenSCAP 패키지는 업스트림 버전 1.3.7로 변경되었습니다. 이 버전은 다양한 버그 수정 및 개선 사항을 제공합니다.

  • OVAL 필터를 처리할 때 발생한 오류 수정 (RHBZ#2126882)
  • InstallPlan이 일치하지 않는 경우 OpenSCAP에서 잘못된 빈 xmlfilecontent 항목을 더 이상 내보내지 않습니다(RHBZ#2139060).
  • 사용 가능한 메모리 오류 (RHBZ#2111040)를확인하지 못했습니다.

Bugzilla:2159286

SCAP 보안 가이드 0.1.66으로 업데이트

SCAP Security Guide (SSG) 패키지는 업스트림 버전 0.1.66으로 변경되었습니다. 이 버전은 다양한 개선 사항 및 버그 수정을 제공합니다.

  • 새로운 CIS RHEL9 프로필
  • account_passwords_pam_faillock_audit 규칙 사용 중단: accounts_passwords_pam_faillock_audit

Bugzilla:2158405

유휴 세션 종료를 위한 새로운 SCAP 규칙

새로운 SCAP 규칙 logind_session_timeout 이 강화 및 높은 수준의 ANSSI-BP-028 프로파일의 scap-security-guide 패키지에 추가되었습니다. 이 규칙은 systemd 서비스 관리자의 새로운 기능을 사용하고 특정 시간 후에 유휴 사용자 세션을 종료합니다. 이 규칙은 여러 보안 정책에 필요한 강력한 유휴 세션 종료 메커니즘의 자동 구성을 제공합니다. 결과적으로 OpenSCAP은 유휴 사용자 세션 종료와 관련된 보안 요구 사항을 자동으로 확인하고 필요한 경우 문제를 해결할 수 있습니다.

Bugzilla:2122325

Rsyslog 로그 파일에 대한 SCAP -security-guide 규칙은 RainerScript 로그와 호환됩니다.

Rsyslog 로그 파일의 소유권 확인 및 수정, 그룹 소유권 및 권한에 대한 scap-security-guide 의 규칙도 이제 RainerScript 구문과 호환됩니다. 최신 시스템에서는 Rsyslog 구성 파일에서 RainerScript 구문을 이미 사용하고 있으며 해당 규칙은 이 구문을 인식하지 못했습니다. 결과적으로 scap-security-guide 규칙은 이제 사용 가능한 두 구문에서 소유권, 그룹 소유권 및 권한을 확인하고 수정할 수 있습니다.

Bugzilla:2169414

Keylime re based to 6.5.2

keylime 패키지는 업스트림 버전인 keylime-6.5.2-5.el9로 변경되었습니다. 이 버전에는 다양한 개선 사항 및 버그 수정이 포함되어 있으며 특히 다음과 같습니다.

  • 해결된 취약점 CVE-2022-3500
  • 다른 RHBZ#2138167이후 하나의 스크립트가 빠르게 실행되면 Keylime 에이전트가 더 이상 IMA 검사에 실패하지 않습니다.
  • /usr/share/keylime/create_mb_refstate 스크립트 RHBZ#2140670의 분할 오류 수정
  • require_ek_cert 옵션이 활성화되면 EK 검증 중에 Registrar가 더 이상 충돌하지 않습니다 RHBZ#2142009

Bugzilla:2150830

Clevis에서 외부 토큰 허용

Clevis 자동 암호화 툴에 도입된 새로운 -e 옵션을 사용하면 cryptsetup 중에 암호를 입력하지 않도록 외부 토큰 ID를 제공할 수 있습니다. 이 기능을 사용하면 구성 프로세스를 보다 자동화하고 편리하게 수행할 수 있으며 Clevis를 사용하는 stratis 과 같은 패키지에 특히 유용합니다.

Bugzilla:2126533

rsyslog TLS 암호화 로깅이 여러 CA 파일 지원

새로운 NetstreamDriverCaExtraFiles 지시문을 사용하면 TLS 암호화 원격 로깅을 위한 추가 CA(인증 기관) 파일 목록을 지정할 수 있습니다. 새 지시문은 ossl (OpenSSL) Rsyslog 네트워크 스트림 드라이버에서만 사용할 수 있습니다.

Bugzilla:2124849

rsyslog 권한은 제한됩니다.

이제 Rsyslog 로그 처리 시스템의 권한은 Rsyslog에 명시적으로 필요한 권한으로만 제한됩니다. 이렇게 하면 입력 리소스 오류(예: 네트워킹 플러그인)의 경우 보안 노출이 최소화됩니다. 그 결과 Rsyslog는 동일한 기능을 가지지만 불필요한 권한은 없습니다.

Bugzilla:2127404

SELinux 정책을 통해 Rsyslog는 시작 시 권한을 삭제할 수 있습니다.

Rsyslog 로그 처리 시스템의 권한이 보안 노출 최소화로 제한되기 때문에 (RH#2127404) SELinux 정책이 업데이트되어 rsyslog 서비스가 시작 시 권한을 삭제할 수 있습니다.

Bugzilla:2151841

Tang에서 systemd-sysusers사용

Tang 네트워크 존재 서버는 이제 useradd 명령을 포함하는 쉘 스크립트 대신 systemd-sysusers 서비스를 통해 시스템 사용자 및 그룹을 추가합니다. 이를 통해 시스템 사용자 목록을 쉽게 확인할 수 있으며, sysuser.d 파일을 더 높은 우선 순위로 제공하여 시스템 사용자 정의도 재정의할 수 있습니다.

Bugzilla:2095474

Opencryptoki rebased to 3.19.0

opencryptoki 패키지는 많은 개선 사항 및 버그 수정을 제공하는 3.19.0 버전으로 변경되었습니다. 특히 opencryptoki 는 다음과 같은 기능을 지원합니다.

  • IBM 특정 dilithium 키
  • 듀얼 기능 암호화 함수
  • PKCS #11 cryptographic Token Interface Base Specification v3.0에 설명된 대로 새로운 C_SessionCancel 함수를 사용하여 활성 세션 기반 작업 취소
  • CKM_IBM_ECDSA_OTHER 메커니즘을 통해 Schnorr 서명
  • CKM_IBM_B Cortex_DERIVE 메커니즘을 통한 NetworkPolicy 키 파생
  • IBM z16 시스템의 EP11 토큰

Bugzilla:2110314

이제 SELinux가 CloudEvent tcpdudftools를 제한합니다.

selinux-policy 패키지가 업데이트되면 SELinux는 다음 서비스를 제한합니다.

  • mptcpd
  • udftools

Bugzilla:1972222

fapolicyd에서 RPM 데이터베이스 필터링 제공

새 구성 파일 /etc/fapolicyd/rpm-filter.conf 를 사용하면 fapolicyd 소프트웨어 프레임워크가 trust 데이터베이스에 저장하는 RPM-database 파일 목록을 사용자 지정할 수 있습니다. 이렇게 하면 RPM으로 설치된 특정 애플리케이션을 차단하거나 기본 구성 필터로 거부된 애플리케이션을 허용할 수 있습니다.

Jira:RHEL-192

GnuTLS는 암호 해독 및 암호화 중에 패딩을 추가 및 제거할 수 있습니다.

특정 프로토콜을 구현하려면 암호 해독 및 암호화 중에 PKCS#7 패딩이 필요합니다. gnutls_cipher_encrypt3gnutls_cipher_decrypt3 블록 암호화 기능이 GnuTLS에 추가되었습니다. 결과적으로 GNUTLS_CIPHER_PADDING_PKCS7 플래그와 함께 이러한 함수를 사용하여 원래 일반 텍스트의 길이가 블록 크기 중 다수가 아닌 경우 패딩을 자동으로 추가하거나 제거할 수 있습니다.

Bugzilla:2084161

NSS는 1023비트보다 짧은 RSA 키를 더 이상 지원하지 않음

NSS(Network Security Services) 라이브러리 업데이트에서는 모든 RSA 작업의 최소 키 크기를 128비트에서 1023비트로 변경합니다. 즉 NSS가 다음 기능을 더 이상 수행하지 않습니다.

  • 1023비트보다 짧은 RSA 키를 생성합니다.
  • 1023비트보다 짧은 RSA 키를 사용하여 RSA 서명을 서명하거나 확인합니다.
  • 1023비트보다 짧은 RSA 키를 사용하여 값을 암호화하거나 해독합니다.

Bugzilla:2091905

EUS ( Extended Master Secret TLS Extension)가 FIPS 지원 시스템에서 적용됩니다.

RHSA-2023:3722 권고가 릴리스되면서 TLS 확장 마스터 시크릿 (ECDSA) 확장(RFC 7627)은 FIPS 지원 RHEL 9 시스템에서 TLS 1.2 연결에 필요합니다. 이는 FIPS-140-3 요구 사항에 따라 수행됩니다. TLS 1.3은 영향을 받지 않습니다.

ECDSA 또는 TLS 1.3을 지원하지 않는 레거시 클라이언트는 이제 RHEL 9에서 실행되는 FIPS 서버에 연결할 수 없습니다. 마찬가지로 FIPS 모드의 RHEL 9 클라이언트는 ECDSA 없이 TLS 1.2만 지원하는 서버에 연결할 수 없습니다. 실제로 이러한 클라이언트는 RHEL 6, RHEL 7 및 비 RHEL 레거시 운영 체제의 서버에 연결할 수 없습니다. 이는 OpenSSL의 기존 1.0.x 버전이 ECDSA 또는 TLS 1.3을 지원하지 않기 때문입니다.

또한 FIPS 지원 RHEL 클라이언트에서 VMWare ESX와 같은 하이퍼바이저에 연결하는 것은 이제 하이퍼바이저에서 TLS 1.2 없이 TLS 1.2를 사용하는 경우 공급자 루틴::ems not enabled 오류와 함께 실패합니다. 이 문제를 해결하려면 ECDSA 확장을 사용하여 TLS 1.3 또는 TLS 1.2를 지원하도록 하이퍼바이저를 업데이트합니다. VMWare vSphere의 경우 이는 버전 8.0 이상을 의미합니다.

자세한 내용은 Red Hat Enterprise Linux 9.2에서 적용된 TLS 확장 "확장 마스터 시크릿" 을 참조하십시오.

Bugzilla:2188046, Bugzilla:2218721