Pagina 11 di 13

Re: Brutte notizie un po' per tutti i possessori di cpu moderne

Inviato: gio lug 12, 2018 15:02
da rik70
rik70 ha scritto:Ok, allora c'è qualcosa che non torna nel test.

O forse no: https://access.redhat.com/security/vulnerabilities/ssbd

Mi sembra di capire che le patch del kernel ci sono ma manca il microcode, come avevamo detto qualche post addietro.

Re: Brutte notizie un po' per tutti i possessori di cpu moderne

Inviato: mer ago 08, 2018 9:33
da rik70
Mi sa che ci siamo:
Linux* Processor Microcode Data File
Version: 20180807 (Latest) Date: 8/7/2018


Codice: Seleziona tutto

CVE-2018-3640 [rogue system register read] aka 'Variant 3a'
* CPU microcode mitigates the vulnerability:  YES
> STATUS:  NOT VULNERABLE  (your CPU microcode mitigates the vulnerability)

CVE-2018-3639 [speculative store bypass] aka 'Variant 4'
* Mitigated according to the /sys interface:  YES  (Mitigation: Speculative Store Bypass disabled via prctl and seccomp)
* Kernel supports speculation store bypass:  YES  (found in /proc/self/status)
> STATUS:  NOT VULNERABLE  (Mitigation: Speculative Store Bypass disabled via prctl and seccomp)

Re: Brutte notizie un po' per tutti i possessori di cpu moderne

Inviato: mer ago 08, 2018 13:36
da conraid
Purtroppo per il mio vetusto core2 duo non c'è alcun upgrade e risulto ancora vulnerabile. Sticazzi eh :)

Re: Brutte notizie un po' per tutti i possessori di cpu moderne

Inviato: mer ago 08, 2018 20:16
da Meskalamdug
rik70 ha scritto:Mi sa che ci siamo:
Linux* Processor Microcode Data File
Version: 20180807 (Latest) Date: 8/7/2018


Codice: Seleziona tutto

CVE-2018-3640 [rogue system register read] aka 'Variant 3a'
* CPU microcode mitigates the vulnerability:  YES
> STATUS:  NOT VULNERABLE  (your CPU microcode mitigates the vulnerability)

CVE-2018-3639 [speculative store bypass] aka 'Variant 4'
* Mitigated according to the /sys interface:  YES  (Mitigation: Speculative Store Bypass disabled via prctl and seccomp)
* Kernel supports speculation store bypass:  YES  (found in /proc/self/status)
> STATUS:  NOT VULNERABLE  (Mitigation: Speculative Store Bypass disabled via prctl and seccomp)

Confermo con kernel 4.17.0 e nuovo microcode

Re: Brutte notizie un po' per tutti i possessori di cpu moderne

Inviato: mer ago 08, 2018 20:45
da Meskalamdug
A chi servisse,una guida al volo per caricare il microcode all'avvio,ovviamente nessuna responsabilità
in caso di eventuali danni.
È necessaria una minima esperienza di recupero del sistema in quanto(a me è successo) il sistema
potrebbe non avviarsi correttamente(dovete sapere come recuperare con livecd o cd slackware da
una chroot)
Per evitare rogne consiglio di fare una immagine di backup del initrd senza microcode
e eventualmente far partire linux con quella immagine.
È necessaria l'applicazione iucode_tool(si trova su sbopkg),con cpio non sono riuscito a generare
l'archivio corretto.

a)Scaricate il microcode e mettete le directory intel-ucode* in una dir a scelta
io l'ho messa in /lib/firmware,l'aspetto sarà simile a questo

Codice: Seleziona tutto

/lib/firmware/intel-ucode/
/lib/firmware/intel-ucode/06-0e-08
/lib/firmware/intel-ucode/06-0d-06
/lib/firmware/intel-ucode/06-0b-01
/lib/firmware/intel-ucode/06-56-05
/lib/firmware/intel-ucode/0f-03-03
/lib/firmware/intel-ucode/06-09-05
/lib/firmware/intel-ucode/06-3a-09
/lib/firmware/intel-ucode/0f-00-0a
/lib/firmware/intel-ucode/06-2d-07
/lib/firmware/intel-ucode/06-8e-09
/lib/firmware/intel-ucode/0f-04-08
/lib/firmware/intel-ucode/06-5f-01
/lib/firmware/intel-ucode/06-2c-02
/lib/firmware/intel-ucode/0f-04-01
/lib/firmware/intel-ucode/06-0b-04
/lib/firmware/intel-ucode/0f-04-0a
/lib/firmware/intel-ucode/06-1e-05
/lib/firmware/intel-ucode/0f-03-02
/lib/firmware/intel-ucode/06-3e-07
.....
/lib/firmware/intel-ucode-with-caveats/
/lib/firmware/intel-ucode-with-caveats/06-4f-01


b)Generiamo l'archivio

Codice: Seleziona tutto

sudo iucode_tool -v --write-earlyfw=/boot/intel-ucode.cpio /lib/firmware/intel-ucode{,-with-caveats}


c)Editiamo (se lo usate) /etc/mkinitrd.conf,

Codice: Seleziona tutto

MICROCODE_ARCH="/boot/intel-ucode.cpio"


altrimenti dovrete passare a mano l'opzione con

Codice: Seleziona tutto

       mkinitrd --altrevostreopzioni   -P /boot/intel-ucode.cpio


d)Generiamo initrd e aggiorniamo grub
io uso questo script,se non usate mkinitrd.conf
regolatevi di conseguenza.

Codice: Seleziona tutto

#!/bin/sh

# Do mkinitrd
mkinitrd -F


# If ok grub
if [ "$?" == "0" ]
then
grub-mkconfig -o /boot/grub/grub.cfg
else
echo "error!"
exit 1
fi


e)Riavviate,se tutto e andato bene parte il sistema e appaiono queste linee nel log dmesg

Codice: Seleziona tutto

[mer ago  8 20:36:45 2018] microcode: microcode updated early to revision 0x24, date = 2018-04-02
[mer ago  8 20:36:48 2018] microcode: sig=0x40651, pf=0x40, revision=0x24
[mer ago  8 20:36:48 2018] microcode: Microcode Update Driver: v2.2.


Se tutto è andato male,non parte il sistema(dovete usare un kernel di backup,o il cd di recupero ovvero il cd di slackware o un livecd)
è sufficiente levare le linee del microcode e rigenerare in una chroot l'immagine initrd e rifare la procedura grub.
Se invece il sistema parte,ma mancano le linee di microcode aggiornato qualcosa non va con l'immagine cpio.

Re: Brutte notizie un po' per tutti i possessori di cpu moderne

Inviato: gio ago 09, 2018 11:26
da rik70
Meskalamdug ha scritto:GRUB_EARLY_INITRD_LINUX_CUSTOM="intel-ucode.cpio"
Una curiosità: sei sicuro che quell'opzione venga presa durante la generazione del config di grub?

Sulla slack 14.2 ad esempio no.

Se invece da te la prende, nel grub.cfg generato dovresti vedere 2 initrd - quello relativo kernel e quello del microcode intel(inserito per primo).

Mi pare di capire poi che tu usi un'opzione di mkinitrd che include il microcode all'interno dell'initramfs. Se è così, allora non dovresti aver bisogno della parte relativa al config di grub.

Infine:
hai provato a generare l'archivio del microcode in questo modo:

Codice: Seleziona tutto

iucode_tool -v --write-earlyfw=/boot/intel-ucode.cpio /lib/firmware/intel-ucode{,-with-caveats}
?
Credo sia necessario per andare a pescare anche nella directory 'intel-ucode-with-caveats'
-- intel-ucode-with-caveats/ --
This directory holds microcode that might need special handling.
BDX-ML microcode is provided in directory, because it need special commits in
the Linux kernel, otherwise, updating it might result in unexpected system
behavior.
OS vendors must ensure that the late loader patches (provided in
linux-kernel-patches\) are included in the distribution before packaging the
BDX-ML microcode for late-loading.
ma forse non è indispensabile.

Re: Brutte notizie un po' per tutti i possessori di cpu moderne

Inviato: gio ago 09, 2018 12:18
da conraid
Io continuo a non capire perché usare questa procedura invece del semplice echo come consiglia Intel stessa.
Pericolo del bug tra l'init e rc.local?

Re: Brutte notizie un po' per tutti i possessori di cpu moderne

Inviato: gio ago 09, 2018 12:50
da rik70
conraid ha scritto:Io continuo a non capire perché usare questa procedura invece del semplice echo come consiglia Intel stessa.
Pericolo del bug tra l'init e rc.local?


Forse perché è meglio che venga caricato il prima possibile?
Cito dal file 'releasenote':
In situations when the BIOS update isn't available, early loading
is the next best alternative to updating processor microcode. Microcode states
are reset on a power reset, hence its required to be updated everytime during
boot process.

Loading microcode using the initrd method is recommended so that the microcode
is loaded at the earliest time for best coverage. Systems that cannot tolerate
downtime may use the late reload method to update a running system without a
reboot.


Che per i server sia meglio l'altro metodo?

Re: Brutte notizie un po' per tutti i possessori di cpu moderne

Inviato: gio ago 09, 2018 13:14
da conraid
Logico che ci può essere anche software di sistema problematico, compreso il kernel, però la vedo come pignoleria. Sì, forse meglio initrd in modo da caricarlo subito e poi echo se non vuoi fare reboot.

Re: Brutte notizie un po' per tutti i possessori di cpu moderne

Inviato: gio ago 09, 2018 13:35
da Meskalamdug
rik70 ha scritto:
Meskalamdug ha scritto:GRUB_EARLY_INITRD_LINUX_CUSTOM="intel-ucode.cpio"
Una curiosità: sei sicuro che quell'opzione venga presa durante la generazione del config di grub?

Sulla slack 14.2 ad esempio no.

Se invece da te la prende, nel grub.cfg generato dovresti vedere 2 initrd - quello relativo kernel e quello del microcode intel(inserito per primo).

Mi pare di capire poi che tu usi un'opzione di mkinitrd che include il microcode all'interno dell'initramfs. Se è così, allora non dovresti aver bisogno della parte relativa al config di grub.

Infine:
hai provato a generare l'archivio del microcode in questo modo:

Codice: Seleziona tutto

iucode_tool -v --write-earlyfw=/boot/intel-ucode.cpio /lib/firmware/intel-ucode{,-with-caveats}
?
Credo sia necessario per andare a pescare anche nella directory 'intel-ucode-with-caveats'
-- intel-ucode-with-caveats/ --
This directory holds microcode that might need special handling.
BDX-ML microcode is provided in directory, because it need special commits in
the Linux kernel, otherwise, updating it might result in unexpected system
behavior.
OS vendors must ensure that the late loader patches (provided in
linux-kernel-patches\) are included in the distribution before packaging the
BDX-ML microcode for late-loading.
ma forse non è indispensabile.

L'opzione di grub potrebbe essere superflua,qui comunque funziona e parte tutto,appena posso la levo,faccio un test e vi faccio sapere.

Re: Brutte notizie un po' per tutti i possessori di cpu moderne

Inviato: gio ago 09, 2018 14:01
da Meskalamdug
Testato ora senza la stringa grub,potete levarla funziona tutto

Re: Brutte notizie un po' per tutti i possessori di cpu moderne

Inviato: gio ago 09, 2018 14:02
da conraid
Da una breve ricerca sembra che quella sia un'opzione introdotta da gentoo tramite patch, e altre distribuzioni hanno applicato. Debian e RedHat no mi par di capire. Slackware no.
Non ho capito però se la patch sia per "immagini multiple" o proprio per la voce del config in sé.

Re: Brutte notizie un po' per tutti i possessori di cpu moderne

Inviato: gio ago 09, 2018 14:05
da Meskalamdug
Ora sto provando con questa linea
iucode_tool -v --write-earlyfw=/boot/intel-ucode.cpio /lib/firmware/intel-ucode{,-with-caveats}
Riavvio...

Re: Brutte notizie un po' per tutti i possessori di cpu moderne

Inviato: gio ago 09, 2018 14:08
da Meskalamdug
Funziona tutto,aggiorno la guida e grazie per i suggerimenti

Re: Brutte notizie un po' per tutti i possessori di cpu moderne

Inviato: gio ago 09, 2018 15:38
da conraid
Avevo scritto una procedura specifica per ogni kernel, ma poi ho notato che mkinitrd.conf è tutto commentato, quindi con quell'unica voce non c'è da fare altro. Pardon