내가 사용하는 것은spectre-meltdown-checker
, 버전 0.42, 옵션 없음모두 녹색결과. 그러나 도움말 페이지에서 이 --paranoid
스위치를 발견했는데, 이로 인해 이후 CVE의 약 절반이 빨간색으로 변했습니다. 나는 완전한 안도감을 얻으려면 다음과 같은 조치를 취해야 한다는 내용을 읽었습니다.하이퍼스레딩 비활성화, 조금 무섭기 때문에 이렇게 하는 것이 좋습니다. 결과는 다음과 같습니다.단 하나나머지 위험 신호는 CVE-2018-3646입니다. =이 취약점을 완전히 완화하려면 L1D 무조건 새로 고침을 활성화해야 합니다..
노트북: 최신 BIOS(1.8.0,상세정보 링크).
프로세서: Intel© Core™ i7-7700HQ(링크:인텔 아크).
Linux 커널: 4.15.0-65-일반 uname -a
:
Linux dell-7577 4.15.0-65-generic #74-Ubuntu SMP Tue Sep 17 17:06:04 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
완전성을 위해 스위치 도움말의 정보를 추가했습니다 --paranoid
.
--paranoid require IBPB to deem Variant 2 as mitigated
also require SMT disabled + unconditional L1D flush to deem Foreshadow-NG VMM as mitigated
also require SMT disabled to deem MDS vulnerabilities mitigated
CVE-2018-3646 aka 'Foreshadow-NG (VMM), L1 terminal fault'
* Information from the /sys interface: Mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable
* This system is a host running a hypervisor: YES (paranoid mode)
* Mitigation 1 (KVM)
* EPT is disabled: NO
* Mitigation 2
* L1D flush is supported by kernel: YES (found flush_l1d in /proc/cpuinfo)
* L1D flush enabled: YES (conditional flushes)
* Hardware-backed L1D flush supported: YES (performance impact of the mitigation will be greatly reduced)
* Hyper-Threading (SMT) is enabled: YES
> STATUS: VULNERABLE (enable L1D unconditional flushing and disable Hyper-Threading to fully mitigate the vulnerability)
실제적인 문제
하이퍼스레딩을 비활성화하는 것 외에도 활성화하는 방법무조건 L1D 플러시?
답변1
좀 더 자세히 조사해 본 결과 문서에 있는 이 취약점의 이름은 다음과 같습니다.
L1TF = L1 단자 오류
사실 내가 찾았어직접 커널 문서, 인용하다:
l1tf= [X86] Control mitigation of the L1TF vulnerability on
affected CPUs
The kernel PTE inversion protection is unconditionally
enabled and cannot be disabled.
full
Provides all available mitigations for the
L1TF vulnerability. Disables SMT and
enables all mitigations in the
hypervisors, i.e. unconditional L1D flush.
SMT control and L1D flush control via the
sysfs interface is still possible after
boot. Hypervisors will issue a warning
when the first VM is started in a
potentially insecure configuration,
i.e. SMT enabled or L1D flush disabled.
full,force
Same as 'full', but disables SMT and L1D
flush runtime control. Implies the
'nosmt=force' command line option.
(i.e. sysfs control of SMT is disabled.)
flush
Leaves SMT enabled and enables the default
hypervisor mitigation, i.e. conditional
L1D flush.
SMT control and L1D flush control via the
sysfs interface is still possible after
boot. Hypervisors will issue a warning
when the first VM is started in a
potentially insecure configuration,
i.e. SMT enabled or L1D flush disabled.
flush,nosmt
Disables SMT and enables the default
hypervisor mitigation.
SMT control and L1D flush control via the
sysfs interface is still possible after
boot. Hypervisors will issue a warning
when the first VM is started in a
potentially insecure configuration,
i.e. SMT enabled or L1D flush disabled.
flush,nowarn
Same as 'flush', but hypervisors will not
warn when a VM is started in a potentially
insecure configuration.
off
Disables hypervisor mitigations and doesn't
emit any warnings.
It also drops the swap size and available
RAM limit restriction on both hypervisor and
bare metal.
Default is 'flush'.
For details see: Documentation/admin-guide/hw-vuln/l1tf.rst
나는 이러한 옵션 중 일부를 시도하고 마침내 얻었습니다 full,force
. 그러나 그것은 단지 내 개인적인 선택입니다.
사용하는 방법
이제 사용 방법(무엇을 편집해야 하는지)을 묻는다면 대답은 다음과 같습니다.
즐겨 사용하는 텍스트 편집기를 사용하여 다음 파일을 편집하세요.
/etc/default/grub
옵션 중 하나(예: let me use )를
l1tf=full,force
다음 줄에 추가합니다.GRUB_CMDLINE_LINUX_DEFAULT="... l1tf=full,force"
다음 명령어를 사용하여 부트로더 구성을 업데이트합니다.
sudo update-grub
재부팅 후 변경 사항이 적용됩니다.
reboot --reboot
결과
이 솔루션을 계속 테스트하기로 결정했다면 다음과 같은 결과가 나올 것입니다.
CVE-2018-3646 aka 'Foreshadow-NG (VMM), L1 terminal fault'
* Information from the /sys interface: Mitigation: PTE Inversion; VMX: cache flushes, SMT disabled
* This system is a host running a hypervisor: YES (paranoid mode)
* Mitigation 1 (KVM)
* EPT is disabled: NO
* Mitigation 2
* L1D flush is supported by kernel: YES (found flush_l1d in /proc/cpuinfo)
* L1D flush enabled: YES (unconditional flushes)
* Hardware-backed L1D flush supported: YES (performance impact of the mitigation will be greatly reduced)
* Hyper-Threading (SMT) is enabled: NO
> STATUS: NOT VULNERABLE (L1D unconditional flushing and Hyper-Threading disabled are mitigating the vulnerability)
Ultra HD 이미지를 확대할 수 있습니다:
스티븐 지터노트
L1TF 특정 콘텐츠도 읽을 가치가 있습니다커널 문서- 취약점과 완화 방법을 자세히 설명하고 완화 기능을 활성화 및 비활성화하는 방법(SMT 비활성화 포함)을 설명합니다.런타임 시, 재부팅하거나 시스템 구성을 변경할 필요가 없습니다.