3장. 외부 커널 매개변수의 중요한 변경 사항
이 장에서는 시스템 관리자에게 Red Hat Enterprise Linux 7.6에 제공된 커널의 중요한 변경 사항에 대한 요약을 제공합니다. 이러한 변경 사항에는 추가 또는 업데이트된
proc
항목, sysctl
및 sysfs
기본값, 부팅 매개 변수, 커널 구성 옵션 또는 눈에 띄는 동작 변경 사항이 포함됩니다.
커널 매개변수
- hardened_usercopy = [KNL]
- 이 매개변수는 강화가 활성화(기본값)인지 부팅에 대해 활성화되어 있지 않은지를 지정합니다.강화된 사용자 복사 검사는 커널의
copy_to_user()
/copy_from_user()
인터페이스의 경계 검사 결함에 대한 사전 보호로 알려진 메모리 할당 경계 이외의 커널 읽기 또는 쓰기에서 커널을 보호하는 데 사용됩니다.유효한 설정은on
,off
입니다.on
- 강화된 사용자 복사 검사(기본값)를 수행합니다.Off
- 강화된 사용자 복사 검사를 비활성화합니다. - no-vmw-sched-clock [X86,PV_OPS]
- 반가상화 VMware 스케줄러 시계를 비활성화하고 기본 목록을 사용합니다.
- rdt = [HW,X86,RDT]
- 개별 RDT 기능을 켜거나 끕니다.사용 가능한 기능은
cmt
,mbmtotal
,mbmlocal
,l3cat
,l3cdp
,l2cat
,l2cdp
,mba
.예를 들어cmt
를 켜고mba
를 끄려면 다음을 사용합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow rdt=cmt,!mba
rdt=cmt,!mba
- nospec_store_bypass_disable [HW]
- Speculative Store Bypass 취약점에 대한 모든 완화 조치를 비활성화합니다.SSB(Speculative Store Bypass) 취약점에 대한 자세한 내용은 Speculative Store Bypass - CVE-2018-3639를 사용한 Kernel Side-Channel Attack 을 참조하십시오.
- spec_store_bypass_disable = [HW]
- 특정 CPU는 Speculative Store Bypass로 알려진 공통 업계의 광범위한 성능 최적화에 대한 악용에 취약합니다.이러한 경우 동일한 메모리 위치에 대한 최근 저장소는 추측 실행 중에 이후 로드에서 항상 관찰할 수 없습니다. 그러나 이러한 저장소는 가능성이 없으므로 특정 추측 실행 창이 끝날 때 명령 종료 전에 감지될 수 있습니다.취약한 프로세서에서는 스펙티브 전달 저장소가 캐시 사이드 채널 공격에 사용될 수 있습니다. 이러한 예로 공격자가 직접 액세스할 수 없는 메모리(예: 샌드박스 코드)를 읽는 것입니다.이 매개변수는 SSB 취약점을 줄이기 위해 Speculative Store Bypass(SSB) 최적화를 제어합니다.가능한 값은 다음과 같습니다.
on
- 무조건 SSB를 비활성화합니다.off
- 무조건 SSB를 활성화합니다.Auto
- Kernel은 CPU 모델에 SSB 구현을 포함하는지 여부를 감지하고 가장 적절한 완화 조치를 선택합니다.prctl
- prctl을 사용하여 스레드의 SSB를 제어합니다. SSB는 기본적으로 프로세스에 대해 활성화됩니다. 컨트롤 상태는 포크에서 상속됩니다.이 옵션을 지정하지 않는 것은spec_store_bypass_disable=auto
와 동일합니다.SSB(Speculative Store Bypass) 취약점에 대한 자세한 내용은 Speculative Store Bypass - CVE-2018-3639를 사용한 Kernel Side-Channel Attack 을 참조하십시오. - nmi_watchdog = [KNL,BUGS=X86]
- 이제
nmi_watchdog
및hardlockup_panic
sysctl을 사용하여 런타임 시 이러한 설정에 액세스할 수 있습니다.
신규 및 업데이트된 /proc/sys/kernel/ 항목
- hardlockup_panic
- 이 매개변수는 하드 잠금이 감지되면 커널 패닉 여부를 제어합니다.가능한 값은 다음과 같습니다.
0
- 하드 잠금 시 패닉하지 마십시오.1
- 하드 잠금에 패닉 상태가 발생합니다.이는nmi_watchdog
커널 매개변수를 사용하여 설정할 수도 있습니다. - perf_event_mlock_kb
- mlock 제한에 대해 계산되지 않은 CPU당 링 버퍼의 크기를 제어합니다.기본값은
512 + 1
페이지입니다. - perf_event_paranoid
- 권한이 없는 사용자가 성능 이벤트 시스템의 사용을 제어합니다(
CAP_SYS_ADMIN
제외).기본값은2
입니다.가능한 값은 다음과 같습니다.-1
- 모든 사용자가 대부분의 이벤트를 사용할 수 있습니다.>=0
-CAP_SYS_ADMIN
이 없는 사용자에 의한 ftrace 함수 추적 지점 및 원시 추적 지점 액세스를 허용하지 않습니다.>=1
-CAP_SYS_ADMIN
이 없는 사용자에 의한 CPU 이벤트 액세스를 허용하지 않습니다.>=2
-CAP_SYS_ADMIN
이 없는 사용자의 커널 프로파일링을 허용하지 않습니다.
새로운 /proc/sys/net/core 항목
- bpf_jit_harden
- Berkeley Packet Filter (BPF) just in Time (JIT) 컴파일러를 활성화합니다.eBPF(Extended Berkeley Packet Filter)가 지원됩니다. 강화를 활성화하여 성능이 저하되지만 CloudEvent 스레이닝을 줄일 수 있습니다.가능한 값은 다음과 같습니다.
0
- ScanSetting 강화(기본값)를 비활성화합니다.1
- 권한이 없는 사용자만 ScanSetting 강화를 활성화합니다.2
- 모든 사용자에 대해 ScanSetting 강화를 활성화합니다.