Debian Stretch에 최신 Intel 마이크로코드를 설치할 수 없습니다.

Debian Stretch에 최신 Intel 마이크로코드를 설치할 수 없습니다.

나는 Debian Stretch를 실행하는 컴퓨터에서 Spectre 변종 2를 패치하려고 합니다. intel-microcode패키지를 설치했습니다strech-backports

https://packages.debian.org/stretch-backports/intel-microcode

여기에는 Intel의 2018-03-12 마이크로코드 업데이트가 포함됩니다. 재부팅 후 나는 실행 sudo dmesg | grep 'microcode'하고

[    1.180101] microcode: sig=0x30678, pf=0x8, revision=0x831
[    1.180418] microcode: Microcode Update Driver: v2.01 
<[email protected]>, Peter Oruba

내가 아는 한 이것은 내 프로세서의 최신 버전이 아닙니다. 내 프로세서는 Bay Trail 시리즈의 일부인 Intel Celeron N2840입니다. ~에 따르면

https://newsroom.intel.com/wp-content/uploads/sites/11/2018/03/microcode-update-guidance.pdf

모든 Bay Trails는 마이크로코드 업데이트를 받아야 하지만 어떤 개정판도 내 것과 동일하지 않습니다. 또한 spectre-meltdown-checker.sh스크립트는 다음과 같이 말합니다.

CVE-2017-5715 [branch target injection] aka 'Spectre Variant 2'
* Mitigated according to the /sys interface:  YES  (Mitigation: Full 
generic retpoline - vulnerable module loaded)
* Mitigation 1
  * Kernel is compiled with IBRS support:  NO 
    * IBRS enabled and active:  UNKNOWN 
  * Kernel is compiled with IBPB support:  YES 
    * IBPB enabled and active:  NO 
* Mitigation 2
  * Kernel has branch predictor hardening (arm):  NO 
  * Kernel compiled with retpoline option:  YES 
    * Kernel compiled with a retpoline-aware compiler:  YES  (kernel 
reports full retpoline compilation)
> STATUS:  VULNERABLE  (IBRS+IBPB or retpoline+IBPB is needed to mitigate 
the vulnerability)

마이크로코드 업데이트가 올바르게 설치되고 사용되는지 어떻게 확인합니까?

몇 시간 후에 수정하세요.

저는 Intel Core i5-5200U 프로세서(Broadwell)를 탑재한 컴퓨터와 Debian Stretch에서 위에서 설명한 프로세스를 수행했습니다. 해당 컴퓨터에서 스크립트는 "취약하지 않음"이라고 말하고 Spectre v2를 완화하는 마이크로코드가 있습니다. dmesg | grep 'microcode'또한 위에 링크된 Intel 문서에 언급된 개정판이 있음을 나타냅니다.

또한 이전 Intel Core 2 Duo Penryn 프로세서가 장착된 컴퓨터에서 이 절차를 수행했습니다. Intel은 Spectre v2를 완화하기 위한 마이크로코드를 제공하지 않습니다. 이것은 이 컴퓨터의 스크립트 결과입니다.

CVE-2017-5715 [branch target injection] aka 'Spectre Variant 2'
* Mitigated according to the /sys interface:  YES  (Mitigation: Full generic retpoline)
* Mitigation 1
  * Kernel is compiled with IBRS support:  NO 
    * IBRS enabled and active:  UNKNOWN 
  * Kernel is compiled with IBPB support:  YES 
    * IBPB enabled and active:  NO 
* Mitigation 2
  * Kernel has branch predictor hardening (arm):  NO 
  * Kernel compiled with retpoline option:  YES 
    * Kernel compiled with a retpoline-aware compiler:  YES  (kernel reports full retpoline compilation)
> STATUS:  NOT VULNERABLE  (Full retpoline is mitigating the vulnerability)
IBPB is considered as a good addition to retpoline for Variant 2 mitigation, but your CPU microcode doesn't support it

나는 이것을 Spectre v2(커널 전용 공격, 맞죠?)를 완화하는 렙톨라인으로 해석하지만 IBPB는 마이크로코드 업데이트를 수행하는 것이 좋습니다.

내 첫 번째 컴퓨터(Intel Celeron N2840 프로세서가 탑재된 컴퓨터)에는적어도내 마지막 컴퓨터와 동일한 렙톨라인 완화인가요? 그렇지 않습니까?반품중간 컴퓨터로서 마이크로코드 완화가 있습니까?

답변1

Skylake 및 최신 프로세서의 경우 리트폴린은 Spectre V2를 완전히 완화하는 데 충분하지 않습니다. Bay Trail이 데스크톱 프로세서 세대와 어떻게 비교되는지는 모르겠지만 Skylake와 유사한 예측 논리를 사용할 수 있습니다.

또한 마이크로코드 가이드 PDF에는 Celeron Nxxxx 시리즈용 마이크로코드가 "생산 중"이라고 명시되어 있지만 Linux 마이크로코드 파일의 최신 릴리스에는 포함되지 않은 것으로 보입니다. 어떤 사람들은 이것에 대해 매우 냉담합니다. https://communities.intel.com/thread/124308

관련 정보