[RISOLTO] Intel Spectre v2 broken microcode detected

Firewall, Server, Monitoring e tutto quello che riguarda la sicurezza della nostra Linux Box

[RISOLTO] Intel Spectre v2 broken microcode detected

Messaggioda Lioce » 24/03/2018, 0:26

Un saluto a tutti.

Stretch 9.4 con kernel:

Codice: Seleziona tutto
4.9.0-6-amd64 #1 SMP Debian 4.9.82-1+deb9u3 (2018-03-02) x86_64 GNU/Linux


Il laptop è un Asus con cpu:

Codice: Seleziona tutto
$ cat /proc/cpuinfo | grep 'model name' | uniq
model name      : Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz
 


Ho aggiornato dai backports intel-microcode

Codice: Seleziona tutto
dpkg -l intel-microcode
ii  intel-microcode      3.20180312.1~bpo9 amd64      Processor microcode firmware for Intel CPUs


in dmesg trovo:

Codice: Seleziona tutto
# dmesg | grep -i microcode
[    0.000000] microcode: microcode updated early to revision 0x84, date = 2018-01-21
[    0.000000] Intel Spectre v2 broken microcode detected; disabling Speculation Control
[    0.642462] microcode: sig=0x806e9, pf=0x80, revision=0x84
[    0.642504] microcode: Microcode Update Driver: v2.01 <tigran@aivazian.fsnet.co.uk>, Peter Oruba


Cosa significa questo "broken microcode detected"?

Ho aggiornato, sempre dai backports, anche iucode-tool, ma l'avviso rimane.

Non c'era, invece con la versione intel- microcode 3.20170707.1~deb9u1

Codice: Seleziona tutto
 kernel: microcode: microcode updated early to revision 0x62, date = 2017-04-27
 kernel: microcode: sig=0x806e9, pf=0x80, revision=0x62
 kernel: microcode: Microcode Update Driver: v2.01 <tigran@aivazian.fsnet.co.uk>, Peter Oruba


In /sys/devices/system/cpu/vulnerabilities trovo:

Codice: Seleziona tutto
$ cat /sys/devices/system/cpu/vulnerabilities/*
Mitigation: PTI
Mitigation: __user pointer sanitization
Mitigation: Full generic retpolined


Grazie.
Ultima modifica di Lioce il 27/03/2018, 22:39, modificato 1 volta in totale.
Lioce
Full Member
Full Member
 
Messaggi: 137
Iscritto il: 30/03/2014, 21:17

Re: Intel Spectre v2 broken microcode detected

Messaggioda Aki » 24/03/2018, 9:45

All’avvio del kernel, lo stesso segnala, prima che sia caricato il microcodice della CPU dal file del firmware, che la CPU è affetta da vulnerabilità spectre V2 e che, preventivamente, disabilita la funzionalità indicata.

Il codice sorgente del kernel, alla versione da te utilizzato, è qui: https://sources.debian.org/src/linux/4.9.82-1+deb9u3/arch/x86/kernel/cpu/intel.c/?hl=148#L148:
Codice: Seleziona tutto
static void early_init_intel(struct cpuinfo_x86 *c)
{
   u64 misc_enable;

   /* Unmask CPUID levels if masked: */
   if (c->x86 > 6 || (c->x86 == 6 && c->x86_model >= 0xd)) {
      if (msr_clear_bit(MSR_IA32_MISC_ENABLE,
              MSR_IA32_MISC_ENABLE_LIMIT_CPUID_BIT) > 0) {
         c->cpuid_level = cpuid_eax(0);
         get_cpu_cap(c);
      }
   }

   if ((c->x86 == 0xf && c->x86_model >= 0x03) ||
      (c->x86 == 0x6 && c->x86_model >= 0x0e))
      set_cpu_cap(c, X86_FEATURE_CONSTANT_TSC);

   if (c->x86 >= 6 && !cpu_has(c, X86_FEATURE_IA64)) {
      unsigned lower_word;

      wrmsr(MSR_IA32_UCODE_REV, 0, 0);
      /* Required by the SDM */
      sync_core();
      rdmsr(MSR_IA32_UCODE_REV, lower_word, c->microcode);
   }

   /* Now if any of them are set, check the blacklist and clear the lot */
   if ((cpu_has(c, X86_FEATURE_SPEC_CTRL) ||
        cpu_has(c, X86_FEATURE_INTEL_STIBP) ||
        cpu_has(c, X86_FEATURE_IBRS) || cpu_has(c, X86_FEATURE_IBPB) ||
        cpu_has(c, X86_FEATURE_STIBP)) && bad_spectre_microcode(c)) {
      pr_warn("Intel Spectre v2 broken microcode detected; disabling Speculation Control\n");
      setup_clear_cpu_cap(X86_FEATURE_IBRS);
      setup_clear_cpu_cap(X86_FEATURE_IBPB);
      setup_clear_cpu_cap(X86_FEATURE_STIBP);
      setup_clear_cpu_cap(X86_FEATURE_SPEC_CTRL);
      setup_clear_cpu_cap(X86_FEATURE_INTEL_STIBP);
[...omissis...]
}

Di seguito i codici delle CPU interessate e della funzione di controllo, sempre dallo stesso codice sorgente della stessa versione del kernel:
Codice: Seleziona tutto
[...omissis...]
static const struct sku_microcode spectre_bad_microcodes[] = {
   { INTEL_FAM6_KABYLAKE_DESKTOP,   0x0B,   0x84 },
   { INTEL_FAM6_KABYLAKE_DESKTOP,   0x0A,   0x84 },
   { INTEL_FAM6_KABYLAKE_DESKTOP,   0x09,   0x84 },
   { INTEL_FAM6_KABYLAKE_MOBILE,   0x0A,   0x84 },
   { INTEL_FAM6_KABYLAKE_MOBILE,   0x09,   0x84 },
   { INTEL_FAM6_SKYLAKE_X,      0x03,   0x0100013e },
   { INTEL_FAM6_SKYLAKE_X,      0x04,   0x0200003c },
   { INTEL_FAM6_SKYLAKE_MOBILE,   0x03,   0xc2 },
   { INTEL_FAM6_SKYLAKE_DESKTOP,   0x03,   0xc2 },
   { INTEL_FAM6_BROADWELL_CORE,   0x04,   0x28 },
   { INTEL_FAM6_BROADWELL_GT3E,   0x01,   0x1b },
   { INTEL_FAM6_BROADWELL_XEON_D,   0x02,   0x14 },
   { INTEL_FAM6_BROADWELL_XEON_D,   0x03,   0x07000011 },
   { INTEL_FAM6_BROADWELL_X,   0x01,   0x0b000025 },
   { INTEL_FAM6_HASWELL_ULT,   0x01,   0x21 },
   { INTEL_FAM6_HASWELL_GT3E,   0x01,   0x18 },
   { INTEL_FAM6_HASWELL_CORE,   0x03,   0x23 },
   { INTEL_FAM6_HASWELL_X,      0x02,   0x3b },
   { INTEL_FAM6_HASWELL_X,      0x04,   0x10 },
   { INTEL_FAM6_IVYBRIDGE_X,   0x04,   0x42a },
   /* Updated in the 20180108 release; blacklist until we know otherwise */
   { INTEL_FAM6_ATOM_GEMINI_LAKE,   0x01,   0x22 },
   /* Observed in the wild */
   { INTEL_FAM6_SANDYBRIDGE_X,   0x06,   0x61b },
   { INTEL_FAM6_SANDYBRIDGE_X,   0x07,   0x712 },
};

static bool bad_spectre_microcode(struct cpuinfo_x86 *c)
{
   int i;

   for (i = 0; i < ARRAY_SIZE(spectre_bad_microcodes); i++) {
      if (c->x86_model == spectre_bad_microcodes[i].model &&
          c->x86_mask == spectre_bad_microcodes[i].stepping)
         return (c->microcode <= spectre_bad_microcodes[i].microcode);
   }
   return false;
}
[...omissis...]

Non c'era, invece con la versione intel- microcode 3.20170707.1~deb9u1

Non dipende dal file del microcodice, ma dalla versione del kernel, perché è il kernel che genera il messaggio "Intel Spectre v2 broken microcode detected; disabling Speculation Control" prima che sia caricato il file del microcodice e, quindi, quando la CPU usa il microcodice con cui è stata venduta dal produttore al fornitore del computer e non ancora quello che, successivamente, le farai caricare con il file del microcodice.
Aki
Global Moderator
Global Moderator
 
Messaggi: 7728
Iscritto il: 27/12/2007, 16:59

Re: Intel Spectre v2 broken microcode detected

Messaggioda Lioce » 25/03/2018, 10:09

@Aki, grazie della spiegazione.

È il kernel che genera il messaggio, d'accordo; ma quello che ancora non capisco è:
perché *lo stesso kernel* ora fa apparire l'avviso "Intel Spectre v2 broken microcode detected; disabling Speculation Control", mentre prima, con il precedente microcodice, non lo faceva?

Per esempio, nel penultimo syslog presente in /var/log trovo (per brevità riporto l'output di un solo boot):

Codice: Seleziona tutto
# zcat /var/log/syslog.6.gz | grep 'Linux version'
Mar 18 19:52:59 <nomehost> kernel: [    0.000000] Linux version 4.9.0-6-amd64 (debian-kernel@lists.debian.org) (gcc version 6.3.0 20170516 (Debian 6.3.0-18+deb9u1) ) #1 SMP Debian 4.9.82-1+deb9u3 (2018-03-02)

# zcat /var/log/syslog.6.gz | grep -i microcode
Mar 18 19:52:59 <nomehost> kernel: [    0.000000] microcode: microcode updated early to revision 0x62, date = 2017-04-27
Mar 18 19:52:59 <nomehost> kernel: [    0.642478] microcode: sig=0x806e9, pf=0x80, revision=0x62
Mar 18 19:52:59 <nomehost> kernel: [    0.642516] microcode: Microcode Update Driver: v2.01 <tigran@aivazian.fsnet.co.uk>, Peter Oruba

# zcat /var/log/syslog.6.gz | grep -i Spectre
Mar 18 19:52:59 <nomehost> kernel: [    0.040294] Spectre V2 : Mitigation: Full generic retpoline
Mar 18 19:52:59 <nomehost> kernel: [    0.040295] Spectre V2 : Filling RSB on context switch

Nessun output per:
# zcat /var/log/syslog.6.gz | grep 'Speculation Control'

# zcat /var/log/syslog.6.gz | grep -i broken


Mentre oggi ho:

Codice: Seleziona tutto
# journalctl -b -0 --no-pager | grep -i 'Linux version'
mar 25 08:05:26 <nomehost> kernel: Linux version 4.9.0-6-amd64 (debian-kernel@lists.debian.org) (gcc version 6.3.0 20170516 (Debian 6.3.0-18+deb9u1) ) #1 SMP Debian 4.9.82-1+deb9u3 (2018-03-02)

#  journalctl -b -0 --no-pager | grep -i microcode
mar 25 08:05:26 <nomehost> kernel: microcode: microcode updated early to revision 0x84, date = 2018-01-21
mar 25 08:05:26 <nomehost> kernel: Intel Spectre v2 broken microcode detected; disabling Speculation Control
mar 25 08:05:26 <nomehost> kernel: microcode: sig=0x806e9, pf=0x80, revision=0x84
mar 25 08:05:26 <nomehost> kernel: microcode: Microcode Update Driver: v2.01 <tigran@aivazian.fsnet.co.uk>, Peter Oruba

#  journalctl -b -0 --no-pager | grep -i Spectre
mar 25 08:05:26 <nomehost> kernel: Intel Spectre v2 broken microcode detected; disabling Speculation Control
mar 25 08:05:26 <nomehost> kernel: Spectre V2 : Mitigation: Full generic retpoline
mar 25 08:05:26 <nomehost> kernel: Spectre V2 : Filling RSB on context switch
Lioce
Full Member
Full Member
 
Messaggi: 137
Iscritto il: 30/03/2014, 21:17

Re: Intel Spectre v2 broken microcode detected

Messaggioda Aki » 25/03/2018, 12:28

Ciao,

credo che stia sfuggendo qualcosa: potresti per cortesia, inviare l'output completo (lo trovi in log.txt) di questo comando (impartito come utente root):
Codice: Seleziona tutto
script log.txt
zgrep -i 'Spectr\|microcode\|Linux version\|DMI\|BOOT_IMAGE' /var/log/syslog*
exit

Inoltre, potrebbe essere utile che indicassi se hai modificato la configurazione del boot loader (grub) per anticipare il caricamento del microcodice e se hai recentemente effettuato aggiornamenti del firmware/BIOS del computer.
Aki
Global Moderator
Global Moderator
 
Messaggi: 7728
Iscritto il: 27/12/2007, 16:59

Re: Intel Spectre v2 broken microcode detected

Messaggioda Lioce » 25/03/2018, 20:56

Allego il log.txt da te richiesto. Nel secondo file trovi l'output di "cat /boot/grub/grub.cfg" e altre informazioni (forse utili).

Ho installato il kernel in uso attualmente il 3 marzo, il microcodice dai backports il 22 marzo:

Codice: Seleziona tutto
$ cat /var/log/apt/history.log

Start-Date: 2018-03-03  12:24:07
Commandline: apt-get upgrade
Upgrade: linux-libc-dev:amd64 (4.9.82-1+deb9u2, 4.9.82-1+deb9u3), linux-image-4.9.0-6-amd64:amd64 (4.9.82-1+deb9u2, 4.9.82-1+deb9u3)
End-Date: 2018-03-03  12:24:18

[....]

Start-Date: 2018-03-22  23:37:53
Commandline: apt-get install -t stretch-backports intel-microcode
Upgrade: intel-microcode:amd64 (3.20170707.1~deb9u1, 3.20180312.1~bpo9+1)
End-Date: 2018-03-22  23:37:59

Start-Date: 2018-03-23  07:47:36
Commandline: apt-get install -t stretch-backports iucode-tool
Upgrade: iucode-tool:amd64 (2.1.1-1, 2.3.1-1~bpo9+1)
End-Date: 2018-03-23  07:47:37


Aki ha scritto:Inoltre, potrebbe essere utile che indicassi se hai modificato la configurazione del boot loader (grub) per anticipare il caricamento del microcodice e se hai recentemente effettuato aggiornamenti del firmware/BIOS del computer.


Non ho modificato la configurazione di grub per anticipare il caricamento del microcodice.
Non effettuato aggiornamenti del firmware/BIOS del laptop, su cui è presente solo Debian (e non mi sembra che Asus ne abbia rilasciati).
L'unica modifica che ho fatto a livello harware è stata la sostituzione del HDD con un SSD, ma poi ho reinstallato ex novo il sistema.
Allegati
log.txt.xz
(2.03 KiB) Scaricato 22 volte
grub-cfg-altro.txt.xz
(3.21 KiB) Scaricato 24 volte
Lioce
Full Member
Full Member
 
Messaggi: 137
Iscritto il: 30/03/2014, 21:17

Re: Intel Spectre v2 broken microcode detected

Messaggioda Aki » 25/03/2018, 21:29

Puoi fornire l'output del file /proc/cpuinfo ?
Aki
Global Moderator
Global Moderator
 
Messaggi: 7728
Iscritto il: 27/12/2007, 16:59

Re: Intel Spectre v2 broken microcode detected

Messaggioda Lioce » 25/03/2018, 23:02

L'output di /proc/cpuinfo è nell'allegato.
Allegati
proc-cpuinfo.txt.xz
(936 Bytes) Scaricato 22 volte
Lioce
Full Member
Full Member
 
Messaggi: 137
Iscritto il: 30/03/2014, 21:17

Re: Intel Spectre v2 broken microcode detected

Messaggioda Aki » 25/03/2018, 23:39

Dai dati che hai inviato, proverei a verificare se hai nell'initramfs un microcodice obsoleto; a tal fine, puoi impartire i seguenti comandi:
Codice: Seleziona tutto
script initramfs.log
lsinitramfs /boot/initrd.img-$(uname -r)
cat /boot/initrd.img-$(uname -r) | cpio -idmv "*Genuine*"
/usr/sbin/iucode-tool -l kernel/x86/microcode/GenuineIntel.bin
exit

Il file initramfs.log conterrà l'elenco dei file dell'initramfs e le ulteriori informazioni.
Aki
Global Moderator
Global Moderator
 
Messaggi: 7728
Iscritto il: 27/12/2007, 16:59

Re: Intel Spectre v2 broken microcode detected

Messaggioda Lioce » 26/03/2018, 13:29

Allego il file initramfs.log.

Attualmente ho questi due kernel installati:

Codice: Seleziona tutto
$ COLUMNS=132 dpkg -l linux-image* | grep ^ii
ii  linux-image-4.9.0-5-amd64   4.9.65-3+deb9u2    amd64              Linux 4.9 for 64-bit PCs
ii  linux-image-4.9.0-6-amd64   4.9.82-1+deb9u3    amd64              Linux 4.9 for 64-bit PCs
ii  linux-image-amd64           4.9+80+deb9u4      amd64              Linux for 64-bit PCs (meta-package)


Potrebbe essere questo il problema?

Codice: Seleziona tutto
$ cat /boot/initrd.img-$(uname -r) | cpio -idmv "*Genuine*"
cpio: kernel/x86/microcode/GenuineIntel.bin not created: newer or same age version exists
kernel/x86/microcode/GenuineIntel.bin
384 blocks
Allegati
initramfs.log.xz
(6.45 KiB) Scaricato 22 volte
Lioce
Full Member
Full Member
 
Messaggi: 137
Iscritto il: 30/03/2014, 21:17

Re: Intel Spectre v2 broken microcode detected

Messaggioda Aki » 26/03/2018, 20:27

Grazie per aver fornito ulteriori dettagli.

Dai log che hai inviato nel corso della discussione, risulterebbe che, antecedentemente al 22 marzo 2018, era installata sul tuo computer la versione del microcodice intel-microcode:amd64 3.20170707.1~deb9u1 Prelevando il microcodice di questa versione ed analizzandola, risulta:
Codice: Seleziona tutto
$ wget http://snapshot.debian.org/archive/debian/20180201T100533Z/pool/non-free/i/intel-microcode/intel-microcode_3.20170707.1%7Edeb9u1.tar.xz
$ tar xf intel-microcode_3.20170707.1~deb9u1.tar.xz
$ cd intel-microcode-3.20170707.1~deb9u1/
$ /usr/sbin/iucode-tool -l *.dat | grep 806e9
  006/157: sig 0x000806e9, pf_mask 0xc0, 2017-04-27, rev 0x0062, size 97280

Dal codice sorgente della versione del kernel "Linux version 4.9.0-6-amd64 (debian-kernel@lists.debian.org) (gcc version 6.3.0 20170516 (Debian 6.3.0-18+deb9u1) ) #1 SMP Debian 4.9.82-1+deb9u3 (2018-03-02)" risulta che il codice che descrive (in termini di costanti) la tua CPU è:
Codice: Seleziona tutto
[..]
struct sku_microcode {
   u8 model;
   u8 stepping;
   u32 microcode;
};
static const struct sku_microcode spectre_bad_microcodes[] = {
[..]
   { INTEL_FAM6_KABYLAKE_MOBILE,   0x09,   0x84 },
[..]
};

Il codice sorgente che effettua il controllo del "bad microcode" è il seguente, usando tre parametri relativi alla CPU (model, stepping e versione di microcodice):
Codice: Seleziona tutto
static bool bad_spectre_microcode(struct cpuinfo_x86 *c)
{
   int i;

   for (i = 0; i < ARRAY_SIZE(spectre_bad_microcodes); i++) {
      if (c->x86_model == spectre_bad_microcodes[i].model &&
          c->x86_mask == spectre_bad_microcodes[i].stepping)
         return (c->microcode <= spectre_bad_microcodes[i].microcode);
   }
   return false;
}

Con il nuovo microcodice intel-microcode 3.20180312.1~bpo9+1, (che hai installato a partire dal 23 marzo, se non erro), risulta:
Codice: Seleziona tutto
/usr/sbin/iucode-tool -l kernel/x86/microcode/GenuineIntel.bin
microcode bundle 1: kernel/x86/microcode/GenuineIntel.bin
selected microcodes:
  001/001: sig 0x000806e9, pf_mask 0xc0, 2018-01-21, rev 0x0084, size 98304
  001/002: sig 0x000806ea, pf_mask 0xc0, 2018-01-21, rev 0x0084, size 97280

Dal log che hai inviato, con il microcodice più recente, la CPU si identifica come:
Codice: Seleziona tutto
$ cat /proc/cpuinfo
model           : 142
stepping       : 9
microcode    : 0x84   

Stante quanto sopra indicato, se prima del 22 marzo il precedente microcodice non faceva scattare il messaggio di avviso (a parità di controllo su modello del processore, stepping e test su versione di microcodice <= 0x84 in entrambe le versioni del microcodice), devo supporre che la precedente versione del microcodice non impostava nessuno dei seguenti flag della CPU (X86_FEATURE_SPEC_CTRL, X86_FEATURE_INTEL_STIBP, X86_FEATURE_IBRS e X86_FEATURE_IBPB):
Codice: Seleziona tutto
/* Now if any of them are set, check the blacklist and clear the lot */
   if ((cpu_has(c, X86_FEATURE_SPEC_CTRL) ||
        cpu_has(c, X86_FEATURE_INTEL_STIBP) ||
        cpu_has(c, X86_FEATURE_IBRS) || cpu_has(c, X86_FEATURE_IBPB) ||
        cpu_has(c, X86_FEATURE_STIBP)) && bad_spectre_microcode(c)) {
      pr_warn("Intel Spectre v2 broken microcode detected; disabling Speculation Control\n");
[..]

In effetti, questi flag della CPU (X86_FEATURE_SPEC_CTRL, X86_FEATURE_INTEL_STIBP, X86_FEATURE_IBRS e X86_FEATURE_IBPB) dovrebbero essere implementati dal nuovo microcodice nella CPU, come espressione della mitigazione della vulnerabilità meltdown/spectre, e per questo motivo - devo presumere - non comparivano con la precedente versione del microcodice (che non prevedeva correzioni per le vulnerabilità meltdown/spectre,in quanto antecedente allo loro scoperta).

A questo punto, immagino, ti starai chiedendo perché il messaggio "Intel Spectre v2 broken microcode detected; disabling Speculation Control" continua a comparire con la nuova (3.20180312.1~bpo9+1) versione del microcodice. La risposta è che, la versione 0x84 del microcodice per la cpu intel non era ancora considerata sicura ed era/è, pertanto, inserita nella "blacklist" nel codice del kernel (Linux version 4.9.0-6-amd64 Debian 4.9.82-1+deb9u3) al momento del rilascio (2018-03-02).
Aki
Global Moderator
Global Moderator
 
Messaggi: 7728
Iscritto il: 27/12/2007, 16:59

Re: Intel Spectre v2 broken microcode detected

Messaggioda Lioce » 27/03/2018, 8:50

@Aki, grazie per la tua disponibilità.

Insomma, da quanto ho capito, non ci sono *errori* nel kernel e non devo intraprendere nessuna azione di modifica (magari aspettare solo il prossimo aggiornamento).
Giusto?

**
Da questa pagina si può scaricare un PDF con una tabella degli aggiornamenti del microcodice (Microcode update guidance) che risale al 6 marzo 2018:

https://newsroom.intel.com/news/latest-intel-security-news-updated-firmware-available/

February 20, 2018
Latest Intel Security News: Updated Firmware Available for 6th, 7th and 8th Generation Intel Core Processors, Intel Xeon Scalable Processors and More

There is also a comprehensive schedule and current status for planned microcode updates available online.
Lioce
Full Member
Full Member
 
Messaggi: 137
Iscritto il: 30/03/2014, 21:17

Re: Intel Spectre v2 broken microcode detected

Messaggioda Aki » 27/03/2018, 20:10

Lioce ha scritto:da quanto ho capito, non ci sono *errori* nel kernel e non devo intraprendere nessuna azione di modifica (magari aspettare solo il prossimo aggiornamento). Giusto?

Sì, nel senso che il kernel è stato istruito a riconoscere come non affidabile ("broken") il microcodice che nell'ultimo update di Intel è indicato come "Productions status: Production" per "Kaby Lake U/Y, U23e". Se confermata la bontà di questo aggiornamento del microcodice, un successivo aggiornamento del kernel risolverà questa situazione. Se vuoi risolverla da te, puoi rimpilare il kernel modificando da:
Codice: Seleziona tutto
   { INTEL_FAM6_KABYLAKE_MOBILE,   0x09,   0x84 },

a:
Codice: Seleziona tutto
   { INTEL_FAM6_KABYLAKE_MOBILE,   0x09,   0x83 },
Aki
Global Moderator
Global Moderator
 
Messaggi: 7728
Iscritto il: 27/12/2007, 16:59

Re: [RISOLTO] Intel Spectre v2 broken microcode detected

Messaggioda Lioce » 03/05/2018, 22:15

Riprendo questa discussione per comunicarvi che l'aggiornamento del kernel alla versione 4.9.88-1 fa scomparire l'avviso:
«Intel Spectre v2 broken microcode detected; disabling Speculation Control»

Codice: Seleziona tutto
$ uname -ar
Linux nomehost 4.9.0-6-amd64 #1 SMP Debian 4.9.88-1 (2018-04-29) x86_64 GNU/Linux


Ora in dmesg trovo:

Codice: Seleziona tutto
# dmesg | grep -i microcode
[    0.000000] microcode: microcode updated early to revision 0x84, date = 2018-01-21
[    0.644961] microcode: sig=0x806e9, pf=0x80, revision=0x84
[    0.644999] microcode: Microcode Update Driver: v2.01 <tigran@aivazian.fsnet.co.uk>, Peter Oruba


la ricerca di "Spectre" mi dà:

Codice: Seleziona tutto
# journalctl -b -0 --no-pager | grep -i Spectre
mag 03 11:31:54 nomehost kernel: Spectre V2 : Mitigation: Full generic retpoline
mag 03 11:31:54 nomehost kernel: Spectre V2 : Spectre v2 mitigation: Filling RSB on context switch
mag 03 11:31:54 nomehost kernel: Spectre V2 : Spectre v2 mitigation: Enabling Indirect Branch Prediction Barrier
mag 03 11:31:54 nomehost kernel: Spectre V2 : Enabling Restricted Speculation for firmware calls


Mentre la ricerca di "broken microcode" e "Speculation Control" è senza output.

In /sys/devices/system/cpu/vulnerabilities adesso trovo:

Codice: Seleziona tutto
$ cat /sys/devices/system/cpu/vulnerabilities/*
Mitigation: PTI
Mitigation: __user pointer sanitization
Mitigation: Full generic retpoline, IBPB, IBRS_FW

era:

$ cat /sys/devices/system/cpu/vulnerabilities/*
Mitigation: PTI
Mitigation: __user pointer sanitization
Mitigation: Full generic retpolined


Grazie ancora ad Aki e un saluto a tutti.
Lioce
Full Member
Full Member
 
Messaggi: 137
Iscritto il: 30/03/2014, 21:17

Re: [RISOLTO] Intel Spectre v2 broken microcode detected

Messaggioda Aki » 04/05/2018, 6:56

Grazie a te per l’aggiornamento.
Aki
Global Moderator
Global Moderator
 
Messaggi: 7728
Iscritto il: 27/12/2007, 16:59


Torna a Sicurezza

Chi c’è in linea

Visitano il forum: Nessuno e 3 ospiti