La Fibre

Datacenter et équipements réseaux => Équipements réseaux => Serveurs NAS, serveurs et micro-serveurs => Discussion démarrée par: tivoli le 03 janvier 2018 à 09:47:34

Titre: Spectre et Meltdown: Grave problème de design des CPU Intel depuis 10ans
Posté par: tivoli le 03 janvier 2018 à 09:47:34
Kernel memory leaking' Intel processor design flaw forces Linux, Windows redesign

A fundamental design flaw in Intel's processor chips has forced a significant redesign of the Linux and Windows kernels to defang the chip-level security bug.

Programmers are scrambling to overhaul the open-source Linux kernel's virtual memory system. Meanwhile, Microsoft is expected to publicly introduce the necessary changes to its Windows operating system in an upcoming Patch Tuesday: these changes were seeded to beta testers running fast-ring Windows Insider builds in November and December.

Crucially, these updates to both Linux and Windows will incur a performance hit on Intel products. The effects are still being benchmarked, however we're looking at a ballpark figure of five to 30 per cent slow down, depending on the task and the processor model. More recent Intel chips have features – such as PCID – to reduce the performance hit. Your mileage may vary.

Similar operating systems, such as Apple's 64-bit macOS, will also need to be updated – the flaw is in the Intel x86-64 hardware, and it appears a microcode update can't address it. It has to be fixed in software at the OS level, or go buy a new processor without the design blunder.

Details of the vulnerability within Intel's silicon are under wraps: an embargo on the specifics is due to lift early this month, perhaps in time for Microsoft's Patch Tuesday next week. Indeed, patches for the Linux kernel are available for all to see but comments in the source code have been redacted to obfuscate the issue.

However, some details of the flaw have surfaced, and so this is what we know.


Impact

It is understood the bug is present in modern Intel processors produced in the past decade. It allows normal user programs – from database applications to JavaScript in web browsers – to discern to some extent the layout or contents of protected kernel memory areas.

The fix is to separate the kernel's memory completely from user processes using what's called Kernel Page Table Isolation, or KPTI. At one point, Forcefully Unmap Complete Kernel With Interrupt Trampolines, aka FUCKWIT, was mulled by the Linux kernel team, giving you an idea of how annoying this has been for the developers.

Whenever a running program needs to do anything useful – such as write to a file or open a network connection – it has to temporarily hand control of the processor to the kernel to carry out the job. To make the transition from user mode to kernel mode and back to user mode as fast and efficient as possible, the kernel is present in all processes' virtual memory address spaces, although it is invisible to these programs. When the kernel is needed, the program makes a system call, the processor switches to kernel mode and enters the kernel. When it is done, the CPU is told to switch back to user mode, and reenter the process. While in user mode, the kernel's code and data remains out of sight but present in the process's page tables.

Think of the kernel as God sitting on a cloud, looking down on Earth. It's there, and no normal being can see it, yet they can pray to it.

These KPTI patches move the kernel into a completely separate address space, so it's not just invisible to a running process, it's not even there at all. Really, this shouldn't be needed, but clearly there is a flaw in Intel's silicon that allows kernel access protections to be bypassed in some way.

The downside to this separation is that it is relatively expensive, time wise, to keep switching between two separate address spaces for every system call and for every interrupt from the hardware. These context switches do not happen instantly, and they force the processor to dump cached data and reload information from memory. This increases the kernel's overhead, and slows down the computer.

Your Intel-powered machine will run slower as a result.


How can this security hole be abused?

At best, the vulnerability could be leveraged by malware and hackers to more easily exploit other security bugs.

At worst, the hole could be abused by programs and logged-in users to read the contents of the kernel's memory. Suffice to say, this is not great. The kernel's memory space is hidden from user processes and programs because it may contain all sorts of secrets, such as passwords, login keys, files cached from disk, and so on. Imagine a piece of JavaScript running in a browser, or malicious software running on a shared public cloud server, able to sniff sensitive kernel-protected data.

Specifically, in terms of the best-case scenario, it is possible the bug could be abused to defeat KASLR: kernel address space layout randomization. This is a defense mechanism used by various operating systems to place components of the kernel in randomized locations in virtual memory. This mechanism can thwart attempts to abuse other bugs within the kernel: typically, exploit code – particularly return-oriented programming exploits – relies on reusing computer instructions in known locations in memory.

If you randomize the placing of the kernel's code in memory, exploits can't find the internal gadgets they need to fully compromise a system. The processor flaw could be potentially exploited to figure out where in memory the kernel has positioned its data and code, hence the flurry of software patching.

However, it may be that the vulnerability in Intel's chips is worse than the above mitigation bypass. In an email to the Linux kernel mailing list over Christmas, AMD said it is not affected. The wording of that message, though, rather gives the game away as to what the underlying cockup is:

AMD processors are not subject to the types of attacks that the kernel page table isolation feature protects against. The AMD microarchitecture does not allow memory references, including speculative references, that access higher privileged data when running in a lesser privileged mode when that access would result in a page fault.

A key word here is "speculative." Modern processors, like Intel's, perform speculative execution. In order to keep their internal pipelines primed with instructions to obey, the CPU cores try their best to guess what code is going to be run next, fetch it, and execute it.

It appears, from what AMD software engineer Tom Lendacky was suggesting above, that Intel's CPUs speculatively execute code potentially without performing security checks. It seems it may be possible to craft software in such a way that the processor starts executing an instruction that would normally be blocked – such as reading kernel memory from user mode – and completes that instruction before the privilege level check occurs.

That would allow ring-3-level user code to read ring-0-level kernel data. And that is not good.

The specifics of the vulnerability have yet to be confirmed, and this discussion of its severity is – aptly enough – speculation, but consider this: the changes to Linux and Windows are significant and are being pushed out at high speed. That suggests it's more serious than a KASLR bypass.

Also, the updates to separate kernel and user address spaces on Linux are based on a set of fixes dubbed the KAISER patches, which were created by eggheads at Graz University of Technology in Austria. These boffins discovered [PDF] it was possible to defeat KASLR by extracting memory layout information from the kernel in a side-channel attack on the CPU's virtual memory system. The team proposed splitting kernel and user spaces to prevent this information leak, and their research sparked this round of patching.

Their work was reviewed by Anders Fogh, who wrote this interesting blog post in July. That article described his attempts to read kernel memory from user mode by abusing speculative execution. Although Fogh was unable to come up with any working proof-of-concept code, he noted:

My results demonstrate that speculative execution does indeed continue despite violations of the isolation between kernel mode and user mode.

It appears the KAISER work is related to Fogh's research, and as well as developing a practical means to break KASLR by abusing virtual memory layouts, the team may have somehow proved Fogh right – that speculative execution on Intel x86 chips can be exploited to access kernel memory.


Shared systems

The bug will impact big-name cloud computing environments including Amazon EC2, Microsoft Azure, and Google Compute Engine, said a software developer blogging as Python Sweetness in this heavily shared and tweeted article on Monday:

There is presently an embargoed security bug impacting apparently all contemporary [Intel] CPU architectures that implement virtual memory, requiring hardware changes to fully resolve. Urgent development of a software mitigation is being done in the open and recently landed in the Linux kernel, and a similar mitigation began appearing in NT kernels in November. In the worst case the software fix causes huge slowdowns in typical workloads.
There are hints the attack impacts common virtualisation environments including Amazon EC2 and Google Compute Engine...

Microsoft's Azure cloud – which runs a lot of Linux as well as Windows – will undergo maintenance and reboots on January 10, presumably to roll out the above fixes.

Amazon Web Services also warned customers via email to expect a major security update to land on Friday this week, without going into details.

There were rumors of a severe hypervisor bug – possibly in Xen – doing the rounds at the end of 2017. It may be that this hardware flaw is that rumored bug: that hypervisors can be attacked via this kernel memory access cockup, and thus need to be patched, forcing a mass restart of guest virtual machines.

A spokesperson for Intel was not available for comment. ®


Updated to add

The Intel processor flaw is real. A PhD student at the systems and network security group at Vrije Universiteit Amsterdam has developed a proof-of-concept program that exploits the Chipzilla flaw to read kernel memory from user mode:

The Register has also seen proof-of-concept exploit code that leaks a tiny amount of kernel memory to user processes.

Finally, macOS has been patched to counter the chip design blunder since version 10.13.2, according to operating system kernel expert Alex Ionescu. And it appears 64-bit ARM Linux kernels will also get a set of KAISER patches, completely splitting the kernel and user spaces, to block attempts to defeat KASLR. We'll be following up this week.


Source : http://www.theregister.co.uk/2018/01/02/intel_cpu_design_flaw/ par John Leyden and Chris Williams 2 Jan 2018
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: tivoli le 03 janvier 2018 à 09:50:06
Dur de trouver d'autres sources sur l'impact eventuel (5-30% de performance CPU en moins)

Ce fil twitter en parle https://twitter.com/fenarinarsa/status/948378718233419776.
Je n'ai pas lu / compris dans le register qu'il etait possible d'acceder a l'hyperviseur depuis la VM
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Hugues le 03 janvier 2018 à 10:26:04
Ca a l'air très très lourd, la faille sera révélée demain il me semble.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Gabi le 03 janvier 2018 à 11:25:01
Ca fait quelque temps que les Internet en parlent, un des bons résumés sur le sujet : http://pythonsweetness.tumblr.com/post/169166980422/the-mysterious-case-of-the-linux-page-table
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: alsoares2 le 03 janvier 2018 à 22:38:55
J'ai l'impression que tout est bien silencieux pour une faille aussi majeure, ça me parait inconcevable que peu d'articles en parlent, sa sera différent lorsque les gens apprendront que leur machine perdra jusqu'à 30% de leur perf.
Enfin, la faille touche surtout les services types Cloud (AWS, Azure) si j'ai bien compris ? Les pertes de perf seront moindre sur les ordi lambda en x64 ?
Titre: Bug CPU Intel. Patch KPTI. Impact sur les performances Serveur ?
Posté par: alain_p le 03 janvier 2018 à 22:40:25
Vous en avez probablement entendu parler. Un bug hardware affecte le design des CPU Intel, ceux sortis depuis une dizaine d'année, sur la séparation de la mémoire utilisateur et noyau. Elle entraine un problème potentiel de sécurité, un processus utilisateur pouvant potentiellement lire ou écrire la mémoire en espace noyau, permettant de lire par par exemple des mots de passe ou d'injecter du code.

Un patch, appelé KPTI, Kernel Page Table Isolation, a été accepté d'urgence par Linus Torvalds, et devrait sortir avec le noyau 4.15. Il a recommandé qu'il soit appliqué également à tous les autres noyaux sous maintenance. Il appliquerait une stricte isolation des espace mémoire utilisateur et noyau. mais la conséquence serait une dégradation des performances serveur (notamment bases de données de 5 à 30%).

Voir par exemple cet article de NextInpact (je crois qu'il est en lecture libre) :
https://www.nextinpact.com/news/105903-kpti-correctifs-pourraient-impacter-lourdement-performances-processeurs-intel.htm

Voir aussi cet  article wikipedia :
https://en.wikipedia.org/wiki/Kernel_page-table_isolation

Ou de El Register :
https://www.theregister.co.uk/2018/01/02/intel_cpu_design_flaw/

Ce problème des CPU Intel (et pas à priori AMD, mais le patch s'appliquerait aux deux marques par défaut), ne concerne pas que Linux, mais tous les systèmes d'exploitation. Il ne peut pas être corrigé côté Intel par un nouveau firmware.

Des mises à jour similaires seraient en préparation côté Microsoft pour  windows, appliquées au prochain patch Tuesday, probablement la semaine prochaine. Il affecterait aussi bien sûr les Mac (processeur Intel), mais là pas de patch annoncé encore. Il affecterait aussi les CPU ARM 64 bits.

Il affecterait aussi le noyau Xen, donc un patch de sécurité est sous embargo jusqu'à demain :
http://xenbits.xen.org/xsa/

Des mises à jour des cloud publics de Microsoft (Azure), Amazon (AWS), OVH... sont prévues dans les prochains jours.

Verra-ton une baisse significative des performances des serveurs quand elle sera appliquée (pour le noyau linux, on peut la désactiver avec l'option kpti = off) ?
Titre: Bug CPU Intel. Patch KPTI. Impact sur les performances Serveur ?
Posté par: Hugues le 03 janvier 2018 à 22:44:50
Des mises à jour similaires seraient en préparation côté Microsoft pour  windows, appliquées au prochain patch Tuesday, probablement la semaine prochaine. Il affecterait aussi bien sûr les Mac (processeur Intel), mais là pas de patch annoncé encore.
macOS est patché ;)

http://www.macg.co/os-x/2018/01/apple-deja-corrige-la-faille-intel-dans-high-sierra-100946
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: alain_p le 03 janvier 2018 à 22:48:27
J'ai publié un article sur le même sujet. Je n'avais pas vu celui-ci. Je pense qu'il va être bloqué pour rediriger vers celui-ci. Des premiers benchmarks ont été publiés sur le site Phoronix, qui montrent un impact significatif dans certains cas :

https://www.phoronix.com/scan.php?page=article&item=linux-415-x86pti&num=1

Ce sont surtout les processus serveur qui sont impactés, moins les jeux, qui accèdent directement au matériel sans passer par le système. En particulier les bases de données sont impactées.
Titre: Bug CPU Intel. Patch KPTI. Impact sur les performances Serveur ?
Posté par: alain_p le 03 janvier 2018 à 22:49:41
Pour Mac OS, je n'avais pas vu que ce serait déjà corrigé (en fait seulement dans High Sierra). Et d'après ton lien, ce ne serait pas officiel, mais une analyse d'un chercheur du code High Sierra.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 03 janvier 2018 à 22:59:32
J'ai publié un article sur le même sujet. Je n'avais pas vu celui-ci. Je pense qu'il va être bloqué pour rediriger vers celui-ci.

J'ai fusionné les deux sujets et placé dans la section serveur, vu que c'est là où est l'impact le plus fort (les gameurs ne seraient pas impactés)
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: alsoares2 le 03 janvier 2018 à 23:06:36
Effectivement j'ai vu ces quelques articles qui en parlent, mais je voulais dire que je n'ai pas vu de "grand" médias (en terme de nombre de lecteurs et non de qualité) en parler alors que cela semble assez grave.
En faite c'est juste que la faille ne concerne visiblement (que) les serveurs, ce qui importe donc peu le grand public dans sa majorité...
A voir après la diffusion des patchs ce qu'il en ai, et si une baisse se fait fortement ressentir ou non.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: xillibit le 03 janvier 2018 à 23:18:16
Ca a l'air très très lourd, la faille sera révélée demain il me semble.
Les détails de la faille sont sous embargo jusqu'au 9 janvier soit le jour de l'ouverture du CES
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Jojo78 le 03 janvier 2018 à 23:50:18
Effectivement j'ai vu ces quelques articles qui en parlent, mais je voulais dire que je n'ai pas vu de "grand" médias
Il me semble avoir vu passer un truc sur  le figaro...
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Hugues le 03 janvier 2018 à 23:55:28
La faille vient d'être révélée par Google : https://googleprojectzero.blogspot.fr/2018/01/reading-privileged-memory-with-side.html

https://spectreattack.com/
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 04 janvier 2018 à 06:24:08
Là où je suis étonné, c'est en regardant la base CVE, c'est la date de déclaration des 3 CVE : cela date du 1er février 2017 ?

- Variant 1: bounds check bypass (CVE-2017-5753 (https://www.cve.mitre.org/cgi-bin/cvename.cgi?name=2017-5753))
- Variant 2: branch target injection (CVE-2017-5715 (https://www.cve.mitre.org/cgi-bin/cvename.cgi?name=2017-5715))
- Variant 3: rogue data cache load (CVE-2017-5754 (https://www.cve.mitre.org/cgi-bin/cvename.cgi?name=2017-5754))

Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: alain_p le 04 janvier 2018 à 07:32:09
Et donc il semblerait que des processeurs AMD soient aussi concernés, contrairement aux affirmations d'AMD.

Citer
1. A PoC that demonstrates the basic principles behind variant 1 in userspace on the tested Intel Haswell Xeon CPU, the AMD FX CPU, the AMD PRO CPU and an ARM Cortex A57 [2].
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: underground78 le 04 janvier 2018 à 08:59:26
AMD est apparemment touché par certaines failles mais pas toutes.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: tivoli le 04 janvier 2018 à 09:04:30
ARM aussi
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: alain_p le 04 janvier 2018 à 09:17:36
Là où je suis étonné, c'est en regardant la base CVE, c'est la date de déclaration des 3 CVE : cela date du 1er février 2017 ?

La date indiquée est celle où le numéro de CVE a été réservé, pas celle où une faille particulière a été déclarée, selon ce qui est indiqué sur les liens :

Citer
Disclaimer: The entry creation date may reflect when the CVE-ID was allocated or reserved, and does not necessarily indicate when this vulnerability was discovered, shared with the affected vendor, publicly disclosed, or updated in CVE.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: butler_fr le 04 janvier 2018 à 14:57:09
AMD et ARM sont touchés par la faille specte (CVE-2017-5753) et (CVE-2017-5715)

Intel par Spectre + Meltdown

Meltdown c'est mitigation via patch de l'os avec en gros de ce que j'ai compris une dégradation des perfs sur certains type de workload (orienté serveur)
et ça ça pique

Spectre pour l'instant l'impact est assez flou et contradictoire selon les sites et les sources.
d'après ce que j'ai compris ce serait difficilement exploitable actuellement (CVE-2017-5715)
mais aussi difficilement patchable
mais si patch ça devrait se faire avec un impact minimal sur les performances (CVE-2017-5753)

cf:
https://googleprojectzero.blogspot.fr/2018/01/reading-privileged-memory-with-side.html
et:
http://www.amd.com/en/corporate/speculative-execution
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: butler_fr le 04 janvier 2018 à 15:08:21
ps sinon c'est le bordel sur tous les sites d'info actuellement
la moitié a pas compris de quoi on parlait l'autre donne la moitié de l'info et après tu as les personnes en commentaire qui sont a coté de la plaque total (théorie du complot/fabulation sur la perte de performance/ceux qui ont pas compris qu'il y a 2/3 failles ...)
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Thornhill le 04 janvier 2018 à 17:22:40
L'advisory Xen (sur lequel tournent AWS et le cloud Oracle notamment) n'est pas réjouissant avec accès potentiel à la mémoire de l'hyperviseur depuis une VM.
Et  semble-t-il pas de patch pour l'instant :

https://xenbits.xen.org/xsa/advisory-254.html (https://xenbits.xen.org/xsa/advisory-254.html)

MITIGATION
==========

There is no mitigation for SP1 and SP2.

SP3 can be mitigated by running guests in HVM or PVH mode.

For guests with legacy PV kernels which cannot be run in HVM mode, we
have developed a "shim" hypervisor that allows PV guests to run in PVH
mode.  Unfortunately, due to the accelerated schedule, this is not yet
ready to release.  We expect to have it ready for 4.10, as well as PVH
backports to 4.9 and 4.8, available over the next few days.

RESOLUTION
==========

There is no available resolution for SP1 or SP3.

We are working on patches which mitigate SP2 but these are not
currently available.  Given that the vulnerabilities are now public,
these will be developed and published in public, initially via
xen-devel.

When we have useful information we will send an update.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: hwti le 04 janvier 2018 à 19:20:54
Et donc il semblerait que des processeurs AMD soient aussi concernés, contrairement aux affirmations d'AMD.
Citer
1. A PoC that demonstrates the basic principles behind variant 1 in userspace on the tested Intel Haswell Xeon CPU, the AMD FX CPU, the AMD PRO CPU and an ARM Cortex A57 [2].

Ce cas, sans violation de privilège ni exécution dans le kernel, correspond à des attaques potentielles en JavaScript.
Un site pourrait récupérer des données d'un autre site qui tourne dans le même processus.
Contre ça, Firefox et Chrome vont réduire la précision des mesures de temps, et Chrome teste la possibilité d'isoler les sites (ou au moins certains) dans des processus dédiés.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Leon le 05 janvier 2018 à 06:52:15
Tiens, j'ai (encore) une question technique pour les experts.
Intel pourrait dans les jours/semaines qui viennent, proposer une mise à jour du microcode de ses processeur pour corriger la vulnérabilité.

Je ne comprends pas trop comment c'est possible, et j'ai vu aussi que des mises à jour de microcode avaient déjà été diffusées par le passé, via les OS windows, linux, etc...

Pour moi, le microcode d'un processeur, c'est un truc stocké en local sur le processeur, et qu'on ne peut pas changer... Ca sert à interpréter les instructions (ISA x64 par exemple) en instructions unitaires à l'intérieur du CPU, et à cadencer le fonctionnement interne du CPU. C'est du moins ce que j'ai compris quand j'ai lu de la doc sur des CPU très anciens, datant des années 80.

Du coup, est-ce qu'il faut comprendre qu'un logiciel (l'OS) est capable de mette à jour le microcode?
Est-ce que seuls les logiciels type "OS" ont cette possibilité? Mais alors quid des logiciels que l'on boote sans OS sur un CD/clé USB? (logiciel de clonage de HDD). Quid des trucs qui se lancent parfois avant l'OS?
C'est fait "une fois pour toutes"? Ou alors à chaque démarrage?
Où est stocké ce microcode sur les CPU modernes? En interne dans une petite mémoire Flash?

Si un logiciel (l'OS) est capable de mettre à jour le microcode, est-ce que ça ne pose pas un énorme problème de vulnérabilité? Ca veut quand même dire que l'on peut modifier le comportement des instructions du CPU, c'est assez énorme!  :o

Si quelqu'un sait expliquer tout ça, ça m'intéresse au plus haut point!

Leon.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: zoc le 05 janvier 2018 à 08:03:50
Intel avait justement annoncé que ca ne pourrait pas être fixé par une mise à jour du microcode...

Il est possible de mettre à jour le microcode sur tous les processeurs à architecture CISC, et pas que les récents...
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 05 janvier 2018 à 08:47:49
Seuls les CPU de moins de 10 ans peuvent voir leur microcode mis à jour (CPU lancés en 2007 et plus récents)

J'ai un Intel Xeon E5620 @ 2.40GHz, CPU lancé au 1er trimestre 2010, sur un IBM System x  x3550 M3 7944 K3G. Le BIOS n'a pas été mis à jour (UEFI Version 1.14 du 02/02/2012) => on a donc un microcode de 2011. Je suis étonné de ne pas voir de mise à jour du microcode par le système d'exploitation. Je me demande si certains BIOS ne bloquent pas les mises à jour de microcode.

Sinon pour répondre à Leon, les hyperviseurs bloquent pour que des OS invités ne mettent pas à jour le microcode.

Attention, le microcode ne se met pas à jour une fois pour toute, c'est à chaque démarrage qu'il est mis à jour, ce n'est pas dans une mémoire flash.

Pour Windows, c'est complètement transparent pour l'utilisateur, ce sont les mises à jour Windows Update qui apportent les mises à jour de microcode.




Sinon, pour vous faire peur, un système d’exploitation peut rendre un BIOS inutilisable.
Plusieurs distributions linux qui fournissent un noyaux Linux récent sont impactés par ce bug :
Incompatibility with BIOS in certain Lenovo, Acer systems

A bug in the Linux 4.13 kernel shipped in Ubuntu 17.10 can leave users unable to update any of their BIOS settings, including their system’s boot order, after booting this version of Ubuntu.

A kernel with a fix for this issue will be available in zesty-updates shortly, but, the Ubuntu 17.10 installer images still contain the kernel with this bug. Users with affected systems should not upgrade to Ubuntu 17.10 or boot an Ubuntu 17.10 installer image until this issue as resolved. Doing so may result in your computer requiring professional servicing in order to restore BIOS functionality.

A full list of known affected models can be found in 1734147 (https://bugs.launchpad.net/bugs/1734147).

If you have already installed Ubuntu 17.10 on an affected system, you may not immediately notice this problem because Ubuntu will continue to boot from disk. To verify whether your system has been affected by this bug, create a USB stick with the Ubuntu 16.04 desktop image and try to boot it. If you are able to boot it, your system has most likely not been impacted by this bug.
Source : Wiki Ubuntu (https://wiki.ubuntu.com/ArtfulAardvark/ReleaseNotes#Known_issues)

Ubuntu 17.10 n'est plus disponible au téléchargement depuis deux semaines pour cette raison. J'ai vu des correctifs, mais je pensent qu'ils veulent être sur de valider la chose avec Lenovo avant de proposer de nouvelles images ISO d'Ubuntu 17.0.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Marin le 05 janvier 2018 à 09:27:55
Du coup, est-ce qu'il faut comprendre qu'un logiciel (l'OS) est capable de mette à jour le microcode?
Est-ce que seuls les logiciels type "OS" ont cette possibilité? Mais alors quid des logiciels que l'on boote sans OS sur un CD/clé USB? (logiciel de clonage de HDD). Quid des trucs qui se lancent parfois avant l'OS?
C'est fait "une fois pour toutes"? Ou alors à chaque démarrage?
Où est stocké ce microcode sur les CPU modernes? En interne dans une petite mémoire Flash?

Si un logiciel (l'OS) est capable de mettre à jour le microcode, est-ce que ça ne pose pas un énorme problème de vulnérabilité? Ca veut quand même dire que l'on peut modifier le comportement des instructions du CPU, c'est assez énorme!  :o

La mise à jour du microcode est possible au démarrage, depuis l'OS hôte. Cela se fait en chargeant un payload chiffré ou obfusqué au démarrage. Il existe plusieurs papiers récents sur le sujet (que je n'ai pas lus entièrement mais les deux derniers semblent être assez exhaustifs) :
À priori, Intel utilise RSA+SHA et AMD utilise une routine d'obfuscation que les chercheurs ont pensé poli de ne pas dévoiler.

Sur les Linux récents la mise à jour du microcode Intel est incluse de base ou fortement recommandée, depuis la découverte de bugs présents dans les architectures Haswell et Broadwell. Cf. https://wiki.archlinux.org/index.php/microcode
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Thornhill le 05 janvier 2018 à 10:15:13
Les mises à jour de microcode pour atténuer une partie des failles arrivent :


https://access.redhat.com/errata/RHSA-2018:0040 (https://access.redhat.com/errata/RHSA-2018:0040)
RHSA-2018:0040 - Security Advisory
Security Fix(es):

• An industry-wide issue was found in the way many modern microprocessor designs have implemented speculative execution of instructions (a commonly used performance optimization). There are three primary variants of the issue which differ in the way the speculative execution can be exploited. Variant CVE-2017-5715 triggers the speculative execution by utilizing branch target injection. It relies on the presence of a precisely-defined instruction sequence in the privileged code as well as the fact that memory accesses may cause allocation into the microprocessor's data cache even for speculatively executed instructions that never actually commit (retire). As a result, an unprivileged attacker could use this flaw to cross the syscall and guest/host boundaries and read privileged memory by conducting targeted cache side-channel attacks. (CVE-2017-5715)


Note: This is the microcode counterpart of the CVE-2017-5715 kernel mitigation.


Red Hat would like to thank Google Project Zero for reporting this issue.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: shroeder le 05 janvier 2018 à 14:59:39
Seuls les CPU de moins de 10 ans peuvent voir leur microcode mis à jour (CPU lancés en 2007 et plus récents)
IBTD.
Le Pentium Pro (ce qui nous ramène il y a 22 ans tout de même -11/1995-) avait déjà cette capacité cf. http://datasheets.chipdb.org/Intel/x86/Pentium%20Pro/PPPBIOS.PDF (http://datasheets.chipdb.org/Intel/x86/Pentium%20Pro/PPPBIOS.PDF).
On peut supposer que cette décision fut prise pour éviter de renouveler le fiasco du du bug FDIV de l'année précédente .
Le µcode peut être chargé par le BIOS ou l'UEFI, auquel cas il est actif dès le POST, soit être chargé par l'OS (sous Windows 95->2003, dans le fichier update.sys, au dessus dans mcupdate_*.dll).
Cette dernière possibilité peut d'ailleurs être désactivée, cf. https://docs.google.com/viewer?url=patentimages.storage.googleapis.com/pdfs/US7660977.pdf (https://docs.google.com/viewer?url=patentimages.storage.googleapis.com/pdfs/US7660977.pdf), ce qui pourrait expliquer le comportement de ton x3550.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Leon le 05 janvier 2018 à 18:46:00
Les mises à jour de microcode pour atténuer une partie des failles arrivent :
Dans ce cas, comment ça se passe à votre avis?

Est-ce que c'est Intel et AMD qui fournissent à RedHat le fichier du nouveau microcode?
Est-ce que ce fichier du nouveau microcode (crypté) est public, librement disponible, intégrable dans n'importe quel OS / hyperviseur?

Leon.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: jack le 05 janvier 2018 à 18:56:08
En parlant de microcode, voici la dernière maj:
intel-microcode (3.20171215.1) unstable; urgency=high

  * Add supplementary-ucode-CVE-2017-5715.d/: (closes: #886367)
    New upstream microcodes to partially address CVE-2017-5715
    + Updated Microcodes:
      sig 0x000306c3, pf_mask 0x32, 2017-11-20, rev 0x0023, size 23552
      sig 0x000306d4, pf_mask 0xc0, 2017-11-17, rev 0x0028, size 18432
      sig 0x000306f2, pf_mask 0x6f, 2017-11-17, rev 0x003b, size 33792
      sig 0x00040651, pf_mask 0x72, 2017-11-20, rev 0x0021, size 22528
      sig 0x000406e3, pf_mask 0xc0, 2017-11-16, rev 0x00c2, size 99328
      sig 0x000406f1, pf_mask 0xef, 2017-11-18, rev 0xb000025, size 27648
      sig 0x00050654, pf_mask 0xb7, 2017-11-21, rev 0x200003a, size 27648
      sig 0x000506c9, pf_mask 0x03, 2017-11-22, rev 0x002e, size 16384
      sig 0x000806e9, pf_mask 0xc0, 2017-12-03, rev 0x007c, size 98304
      sig 0x000906e9, pf_mask 0x2a, 2017-12-03, rev 0x007c, size 98304
  * Implements IBRS and IBPB support via new MSR (Spectre variant 2
    mitigation, indirect branches).  Support is exposed through cpuid(7).EDX.
  * LFENCE terminates all previous instructions (Spectre variant 2
    mitigation, conditional branches).

 -- Henrique de Moraes Holschuh <hmh@debian.org>  Thu, 04 Jan 2018 23:04:38 -0200

Leon: le microcode est un simple blob, qui est passé par le kernel au CPU très tôt à chaque boot (grep microcode dans ton dmesg après reboot)
Pour autant que je sache, et comme le dit Marin, le blob est complétement opaque. Je suppose qu'il n'y a aucun action de faite sur ce dernier au niveau du kernel, et que les fichiers sont donc utilisables par n'importes quel OS (qui ne sert donc que de "passe-plat")
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Leon le 05 janvier 2018 à 19:10:06
Leon: le microcode est un simple blob, qui est passé par le kernel au CPU très tôt à chaque boot (grep microcode dans ton dmesg après reboot)
Pour autant que je sache, et comme le dit Marin, le blob est complétement opaque. Je suppose qu'il n'y a aucun action de faite sur ce dernier au niveau du kernel, et que les fichiers sont donc utilisables par n'importes quel OS (qui ne sert donc que de "passe-plat")
OK, mais est-ce que c'est fourni librement à n'importe qui le demande? N'importe qui qui voudrait coder un OS ou un hyperviseur? Est-ce le microcode (crypté) est fourni de manière totalement libre, publique, par Intel et AMD ?

Leon.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 05 janvier 2018 à 19:13:16
Oui, c'est disponible sur le site d'Intel : https://downloadcenter.intel.com/download/27337/Linux-Processor-Microcode-Data-File
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 05 janvier 2018 à 19:19:48
Firefox 57.0.4 est sortie hier et intégre uniquement deux fixes to address the Meltdown and Spectre timing attacks. Le correctif est détaillé sur https://blog.mozilla.org/security/2018/01/03/mitigations-landing-new-class-timing-attack/ et vise a atténuer le risque d'une attaque via une page web.


Ubuntu distribuera les correctifs kernel, mardi prochain : (on ne sais pas si la mise à jour du micro-code sera de la partie, il aiment bien que le microcode soit testé longtemps en pré-prod avant une large distribution)

Unfortunately, you’ve probably already read about one of the most widespread security issues in modern computing history — colloquially known as “Meltdown” (CVE-2017-5754) and “Spectre” (CVE-2017-5753 and CVE-2017-5715) — affecting practically every computer built in the last 10 years, running any operating system.  That includes Ubuntu.

I say “unfortunately”, in part because there was a coordinated release date of January 9, 2018, agreed upon by essentially every operating system, hardware, and cloud vendor in the world.  By design, operating system updates would be available at the same time as the public disclosure of the security vulnerability.  While it happens rarely, this an industry standard best practice, which has broken down in this case.

At its heart, this vulnerability is a CPU hardware architecture design issue.  But there are billions of affected hardware devices, and replacing CPUs is simply unreasonable.  As a result, operating system kernels — Windows, MacOS, Linux, and many others — are being patched to mitigate the critical security vulnerability.

Canonical engineers have been working on this since we were made aware under the embargoed disclosure (November 2017) and have worked through the Christmas and New Years holidays, testing and integrating an incredibly complex patch set into a broad set of Ubuntu kernels and CPU architectures.

Ubuntu users of the 64-bit x86 architecture (aka, amd64) can expect updated kernels by the original January 9, 2018 coordinated release date, and sooner if possible.  Updates will be available for:
- Ubuntu 17.10 (Artful) — Linux 4.13 HWE
- Ubuntu 16.04 LTS (Xenial) — Linux 4.4 (and 4.4 HWE)
- Ubuntu 14.04 LTS (Trusty) — Linux 3.13
- Ubuntu 12.04 ESM** (Precise) — Linux 3.2
Note that an Ubuntu Advantage license is required for the 12.04 ESM kernel update, as Ubuntu 12.04 LTS is past its end-of-life

Ubuntu 18.04 LTS (Bionic) will release in April of 2018, and will ship a 4.15 kernel, which includes the KPTI patchset as integrated upstream.

Ubuntu optimized kernels for the Amazon, Google, and Microsoft public clouds are also covered by these updates, as well as the rest of Canonical’s Certified Public Clouds including Oracle, OVH, Rackspace, IBM Cloud, Joyent, and Dimension Data.

These kernel fixes will not be Livepatch-able.  The source code changes required to address this problem is comprised of hundreds of independent patches, touching hundreds of files and thousands of lines of code.  The sheer complexity of this patchset is not compatible with the Linux kernel Livepatch mechanism.  An update and a reboot will be required to active this update.

Furthermore, you can expect Ubuntu security updates for a number of other related packages, including CPU microcode, GCC and QEMU in the coming days.

We don’t have a performance analysis to share at this time, but please do stay tuned here as we’ll followup with that as soon as possible.

Thanks,
@DustinKirkland
VP of Product
Canonical / Ubuntu

Source : Canonical (https://insights.ubuntu.com/2018/01/04/ubuntu-updates-for-the-meltdown-spectre-vulnerabilities/), le 4 janvier 2018
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: jeremyp3 le 06 janvier 2018 à 03:59:33
bonjour,

le kernel de jessie 3.16 sera-t-il mis a jour ? oui oui je sais, je suis en retard :D j'ai déjà installé sur mon serveur jessie intel-microcode (de sid), mais je sais pas si ça suffit.

jerem
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 06 janvier 2018 à 07:27:49
Le Kernel 3.16 de Debian sera mis à jour.

Le Kernel 3.16 pour Ubuntu non : Le Kernel 3.16 est celui d'Ubuntu 14.10 qui as été proposé sur Ubuntu 14.04 LTS pour avoir les dernières technologies, mais avec un support de 18 mois seulement. Le Kernel 3.16 ne reçois plus aucune mise à jour de sécurité depuis août 2016.

Il est impératif de passer sur un Kernel avec un support long terme (jusqu'à avril 2019 pour Ubunu 14.04 LTS).

Au choix :
- Le Kernel 3.13 (celui d'origine de Ubuntu 14.04 LTS)
- Le Kernel 4.4 (celui d'origine de Ubuntu 16.04 LTS)

Je pense que tu vas choisir le kernel 4.4 pour éviter de passer sur un kernel plus ancien.

Pour un Ubuntu avec interface graphique, il faut taper en ligne de commande sudo apt-get install --install-recommends linux-generic-lts-xenial xserver-xorg-core-lts-xenial xserver-xorg-lts-xenial xserver-xorg-video-all-lts-xenial xserver-xorg-input-all-lts-xenial libwayland-egl1-mesa-lts-xenial

Pour un Ubuntu server, il faut lancer : sudo apt-get install --install-recommends linux-generic-lts-xenial

(https://lafibre.info/testdebit/ubuntu/201404_ubuntu_kernel_support.svg)

A noter que pour Ubuntu 16.04, il n'y a plus de risque d'être sur un kernel non supporté, si on choisit d'être sur un Kernel récent qui n'a pas un support jusqu'à avril 2021, les mises à jour de sécurité  entraînent un changement automatique de Kernel.

(https://lafibre.info/testdebit/ubuntu/201604_ubuntu_kernel_support.svg)
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: jeremyp3 le 06 janvier 2018 à 08:20:19
Le Kernel 3.16 de Debian sera mis à jour.

merci, vu que je suis pas sur ubuntu, le reste ne me concerne pas :) on va attendre sagement la mise a jour. ;)
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 07 janvier 2018 à 10:24:49
Le CERT liste les familles de processeurs ARM affectés : https://www.cert.ssi.gouv.fr/alerte/CERTFR-2018-ALE-001/
- ARM Cortex-R7
- ARM Cortex-R8
- ARM Cortex-A8
- ARM Cortex-A9
- ARM Cortex-A15
- ARM Cortex-A17
- ARM Cortex-A57
- ARM Cortex-A72
- ARM Cortex-A73
- ARM Cortex-A75

Intel liste ses familles de processeurs affectées : https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00088&languageid=en-fr
- Intel® Core™ i3 processor (45nm and 32nm)
- Intel® Core™ i5 processor (45nm and 32nm)
- Intel® Core™ i7 processor (45nm and 32nm)
- Intel® Core™ M processor family (45nm and 32nm)
- 2nd generation Intel® Core™ processors
- 3rd generation Intel® Core™ processors
- 4th generation Intel® Core™ processors
- 5th generation Intel® Core™ processors
- 6th generation Intel® Core™ processors
- 7th generation Intel® Core™ processors
- 8th generation Intel® Core™ processors
- Intel® Core™ X-series Processor Family for Intel® X99 platforms
- Intel® Core™ X-series Processor Family for Intel® X299 platforms
- Intel® Xeon® processor 3400 series
- Intel® Xeon® processor 3600 series
- Intel® Xeon® processor 5500 series
- Intel® Xeon® processor 5600 series
- Intel® Xeon® processor 6500 series
- Intel® Xeon® processor 7500 series
- Intel® Xeon® Processor E3 Family
- Intel® Xeon® Processor E3 v2 Family
- Intel® Xeon® Processor E3 v3 Family
- Intel® Xeon® Processor E3 v4 Family
- Intel® Xeon® Processor E3 v5 Family
- Intel® Xeon® Processor E3 v6 Family
- Intel® Xeon® Processor E5 Family
- Intel® Xeon® Processor E5 v2 Family
- Intel® Xeon® Processor E5 v3 Family
- Intel® Xeon® Processor E5 v4 Family
- Intel® Xeon® Processor E7 Family
- Intel® Xeon® Processor E7 v2 Family
- Intel® Xeon® Processor E7 v3 Family
- Intel® Xeon® Processor E7 v4 Family
- Intel® Xeon® Processor Scalable Family
- Intel® Xeon Phi™ Processor 3200, 5200, 7200 Series
- Intel® Atom™ Processor C Series
- Intel® Atom™ Processor E Series
- Intel® Atom™ Processor A Series
- Intel® Atom™ Processor x3 Series
- Intel® Atom™ Processor Z Series
- Intel® Celeron® Processor J Series
- Intel® Celeron® Processor N Series
- Intel® Pentium® Processor J Series
- Intel® Pentium® Processor N Series

En gros pour faire un résumé, on y trouve tous les processeurs des générations suivantes :
- Family 6 model 26/30/46 => famille de processeurs Nehalem, gravés en 45nm : à partir de novembre 2008
- Family 6 model 37/44/47 => 1ère génération - famille de processeurs Westmere, gravés en 32nm : à partir de janvier 2010
- Family 6 model 42 => 2ème génération - famille de processeurs Sandy Bridge, gravés en 32nm : à partir de janvier 2011
- Family 6 model 45/58 => 3ème génération - famille de processeurs Ivy Bridge : à partir de avril 2012
- Family 6 model 60/62/69/70 => 4ème génération - famille de processeurs Haswell, gravés en 22nm : à partir de juin 2013
- Family 6 model 61/63/71 => 5ème génération - famille de processeurs Broadwell : à partir de septembre 2014 (ordinateurs portables principalement)
- Family 6  model 78/79/94  => 6ème génération - famille de processeurs Skylake, gravés en 14nm : à partir de août 2015
- Family 6  model ?? => 7ème génération - famille de processeurs Kaby Lake, gravés en 14nm : 4ème trimestre 2016
- Family 6  model ?? => 8ème génération - famille de processeurs Coffee Lake, gravés en 14nm : 3ème trimestre 2017

Est-il normal de na pas y voir les Pentium E2xxx / Pentium Dual-Core / Core 2 Solo / Core 2 Duo / Core 2 Quad / Core 2 Extreme / Xeon 3000 / Xeon 5000 de la génération précédente ?
- Family 6 model 15/22 => famille de processeurs Merom, gravés en 65nm : à partir de juillet 2006
- Family 6 model 23/29 => famille de processeurs Penryn, CPUID model 23, gravés en 45nm : à partir de novembre 2007

J'ai regardé ce que apportait Nehalem, la première génération listée par Intel comme impactée par le bug et voici ce que j'ai noté qu'elle apporte :
=> Ajout du jeu de 7 instructions SSE 4.2 (en plus de MMX / SSE / SSE2 / SSE3 / SSSE3 / SSE 4.1) Ce second lot d’instructions SSE 4.2, porte sur le traitement des chaînes de caractères. Ces instructions seront particulièrement utiles dans la compression, la recherche de virus ou de données, le traitement de bases de données, etc.
=> Ajout du bus QPI (QuickPath Interconnect) qui remplace le FSB qui bridait fortement les systèmes quadri-processeurs.
=>Intégration du contrôleur mémoire et d'un contrôleur PCI-Express
=> Généralisation du cache de niveau 3 (qui n’existait avant que sur certains Xeon). Le cache L3 est commun aux différents cœurs. Ces derniers ont chacun un cache L1 et L2 dédiés par cœur.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 07 janvier 2018 à 11:13:04
https://meltdownattack.com/ annonce : every Intel processor which implements out-of-order execution is potentially affected, which is effectively every processor since 1995 (except Intel Itanium and Intel Atom before 2013)

J'en conclu que tous les Pentium sont impactés, à partir du Pentium 60 Mhz de mars 1993 (celui-la même qui avait un bug avec les calculs à virgule flottante)
C'est le cas de ses successeurs : Pentium MMX, Pentium Pro, Pentium II, Pentium III, Pentium 4 et les dérivés Celeron / Xeon / Core.
Cela concerne donc bien aussi l'architecture 32bits que l'architecture 64bits (certains correctifs semblent ne sortir qu'en 64bits)

Les CPU Intel 386  (lancés 1985) / Intel 486 (lancés en 1989) ne sont pas impactés. Seul les processeurs Atom ont ensuite utilisés une "in-order architecture" qui n'est pas impactée.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Leon le 07 janvier 2018 à 11:48:34
Oh purée... En gros, la très grande majorité des processeurs utilisés est impactée.

Ce qui m'impressionne surtout, c'est que les 3 marques principales soient touchées. Est-ce que ça veut dire qu'elles ont toutes les 3 appliquées les mêmes concepts, sans voir que ça pouvait engendrer des problèmes de sécurité?

Leon.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Thornhill le 07 janvier 2018 à 13:08:12
Potentiellement, tout processeur utilisant un cache L1/L2 avec les techniques Out of Order Execution pour Meltdown ou Speculative Execution pour Spectre peuvent être touchés.
Les IBM Power sont touchés par exemple (  https://www.ibm.com/blogs/psirt/potential-impact-processors-power-family/ (https://www.ibm.com/blogs/psirt/potential-impact-processors-power-family/)).
Possible que les Sparc soient vulnérables aussi, bien qu'Oracle reste muet sur ces failles pour l'instant...
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Marco POLO le 07 janvier 2018 à 22:53:32
...Ce qui m'impressionne surtout, c'est que les 3 marques principales soient touchées...
???
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Thornhill le 07 janvier 2018 à 23:13:37
Résultats des benchs RedHat concernant l'impact des patchs :

Speculative Execution Exploit Performance Impacts - Describing the performance impacts to security patches for CVE-2017-5754 CVE-2017-5753 and CVE-2017-5715

(...)
In order to provide more detail, Red Hat’s performance team has categorized the performance results for Red Hat Enterprise Linux 7, (with similar behavior on Red Hat Enterprise Linux 6 and Red Hat Enterprise Linux 5), on a wide variety of benchmarks based on performance impact:

- Measureable: 8-19% - Highly cached random memory, with buffered I/O, OLTP database workloads, and benchmarks with high kernel-to-user space transitions are impacted between 8-19%. Examples include OLTP Workloads (tpc), sysbench, pgbench, netperf (< 256 byte), and fio (random I/O to NvME).

- Modest: 3-7% - Database analytics, Decision Support System (DSS), and Java VMs are impacted less than the “Measurable” category. These applications may have significant sequential disk or network traffic, but kernel/device drivers are able to aggregate requests to moderate level of kernel-to-user transitions. Examples include SPECjbb2005, Queries/Hour and overall analytic timing (sec).

- Small: 2-5% - HPC (High Performance Computing) CPU-intensive workloads are affected the least with only 2-5% performance impact because jobs run mostly in user space and are scheduled using cpu-pinning or numa-control. Examples include Linpack NxN on x86 and SPECcpu2006.

- Minimal: Linux accelerator technologies that generally bypass the kernel in favor of user direct access are the least affected, with less than 2% overhead measured. Examples tested include DPDK (VsPERF at 64 byte) and OpenOnload (STAC-N). Userspace accesses to VDSO like get-time-of-day are not impacted. We expect similar minimal impact for other offloads.

NOTE: Because microbenchmarks like netperf/uperf, iozone, and fio are designed to stress a specific hardware component or operation, their results are not generally representative of customer workload. Some microbenchmarks have shown a larger performance impact, related to the specific area they stress.


Source : https://access.redhat.com/articles/3307751 (https://access.redhat.com/articles/3307751)
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Hugues le 08 janvier 2018 à 00:24:48
???

Intel, AMD, ARM.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Marco POLO le 08 janvier 2018 à 00:44:31
Intel, AMD, ARM.
Merci, Hugues: je pensais qu'ARM était une gamme de processeurs Intel.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: K-L le 08 janvier 2018 à 00:49:40
Parce que ce sont les les architectures les plus connues et les plus citées dans les médias.

Les PowerPC (et l'architecture Power), par exemple, sont aussi vulnérables : http://tenfourfox.blogspot.fr/2018/01/more-about-spectre-and-powerpc-or-why.html

IBM sort d'ailleurs un correctif pour les Power7 et Power9. Pour les OS PowerPC exotiques (AmigaOS, MorphOS, ...) ou anciens (MacOS PowerPC) je ne pense pas que cette vulnérabilité ait un quelconque impact.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Hugues le 08 janvier 2018 à 01:26:12
Ooooh, TenFourFox ! Ca rappelle des souvenirs ça :3
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Leon le 08 janvier 2018 à 06:27:47
Merci, Hugues: je pensais qu'ARM était une gamme de processeurs Intel.
Oh non, surtout pas.

ARM est une marque, une société qui conçoit des processeurs d'architecture ARM, orientés "basse consommation" / "systèmes embarqués". Elle ne produit pas de processeur, elle ne fait que les concevoir. Les processeurs sont produits sous licences par d'autres sociétés qui rémunèrent ARM.
Ce sont des processeurs modernes, avec une architecture RISC contrairement aux x86/x64.
https://fr.wikipedia.org/wiki/ARM_(soci%C3%A9t%C3%A9)
https://fr.wikipedia.org/wiki/Architecture_ARM

Avec le boom des smartphone ces dernières années, la production de processeurs ARM dans le monde a explosée.

Leon.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: butler_fr le 08 janvier 2018 à 10:59:45
petit article qui vulgarise bien sans prendre trop de raccourcis et en français!
http://www.hardware.fr/news/15326/meltdown-spectre-point-deux-failles.html
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 08 janvier 2018 à 21:16:16
Sous Windows 10, le correctif est incompatible avec certains anti-virus...

Liste des anti-virus compatible avec le correctif de sécurité :
- AVAST
- AVG Anti-Virus
- Avira
- BitDefender
- EMSI Anti-Malware
- eScan
- ESET
- F-Secure SAFE
- K7 Antivirus and Total Security
- Kaspersky
- Malwarebytes Anti-Malware
- Microsoft Windows Defender
- Norton Security
- Sophos Anti-Virus (Endpoint Control) and Central
- Symantec Endpoint Protection
- TrustPort Sphere

Liste des anti-virus qui ne sont pas encore compatible, où Microsoft bloque la mise à jour pour éviter des plantage avec "blue screen" :
- 360 Total Security
- AhnLab Internet Security (V3 family)
- BitDefender GravityZone Endpoint Security for Windows
- Carbon Black
- Cisco AMP
- CrowdStrike Falcon
- Cylance PROTECT
- Cylance PROTECT Home
- Cyren F-PROT
- Endgame
- FireEye Endpoint Security
- Fortinet Endpoint Protection
- G-DATA Antivirus
- McAfee Endpoint Protection
- Nyotron PARANOID
- Palo-Alto TRAPS
- Panda
- QuickHeal Endpoint Security
- SentinelOne EPP
- Trend Micro
- VIPRE Endpoint Security
- Webroot WSA

Une faille hardware, qui nécessite des mises à jour du microcode du processeur + changement de la gestion mémoire de tous les système d'exploitation + mise à jour anti-virus + mise à jour de tous les navigateurs web, c'est du jamais vu !
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: alain_p le 08 janvier 2018 à 21:41:03
Sur nos antivirus Kaspersky Endpoint 10.3.0.6294, la dernière version à priori, on a un triangle jaune avec un point d'exclamation, avec le message ' 'La confirmation de l'installation des mises à jour critiques est requise'. En fait, dans la console de l'agent (ou du serveur), on ne peut rien confirmer, à priori.

Je me demande s'il n'attend pas les mises à jour windows de mercredi prochain, pour confirmer l'installation ?

C'est peut-être ce que je comprend (pas certain) de cet article du site Kasperky :


- Le 18 décembre 2017 nous avons publié le correctif automatique qui est diffusé avec les mises à jour des bases de données antivirus. Les applications avec ce correctif installé n'auront pas de soucis de compatibilité.

- La mise à jour de sécurité de Microsoft du 9 janvier 2018 ne sera pas installée sur les ordinateurs qui sont incompatibles avec cette mise à jour. La mise à jour sera installée uniquement si l'application ou l'administrateur ajoute un indicateur spécial qui confirme la compatibilité dans le registre système. Cela signifie que toutes les versions de nos solutions sont actuellement protégées contre les problèmes d'incompatibilité (quelle que soit la date de mise à jour des bases de données).

- La mise à jour de Microsoft ne sera pas installée sur les ordinateurs sans indicateur de compatibilité même si aucune solution de sécurité n'est installée sur l'appareil. L'installation des solutions de Kaspersky Lab sans correctif sur les nouveaux ordinateurs n'entraînera pas de problèmes de compatibilité.

- Le 28 décembre 2017 Kaspersky Lab a publié le correctif qui contient l'indicateur de compatibilité et est diffusé avec les mises à jour des bases de données antivirus. Les applications avec cette version ou version plus récente des bases de données antivirus n'aurons pas de problèmes de compatibilité et permettrons l'installation de la mise à jour de Microsoft.

Source : https://support.kaspersky.com/14042
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 08 janvier 2018 à 22:02:49
La mise à jour du 9 janvier a été publié en avance par Microsoft (mise à jour de sécurité KB4056892).

Normalement tous les éditeurs devaient attendre le 9 janvier, mais vu que la faille a été divulguée en avance certains ont avancés les patch (Microsoft, Mozilla par exemple).

D'autres comme Canonical pour Ubuntu attendent la date du 9 janvier pour les patchs.

Kaspersky Lab  a diffusé l'indicateur de compatibilité qui autorise Microsoft à déployer le patch le 28 décembre, mais ce n'est pas le cas de la majoré, cf ma liste à jour au 8 janvier 2017 (après dans ceux qui n'ont pas diffusé l'indicateur, il y a ceux qui sont incompatibles et ceux sont compatible mais qui ont pris du retard pour diffuser l'indicateur. C'est quand même pas très glorieux de la part de ces éditeurs en retard, alors qu'un antivirus doit être réactifs aux menaces)

La faute de la diffusion en avance du la faille est  l’intégration en urgence d’un gros correctif dans la RC-6 du noyau Linux qui a fait beaucoup parler de lui. A la RC-6 seuls des petits correctifs de quelques lignes sont autorisés, pas un changement majeur dans la gestion de la mémoire. Cela montrait que cette intégration avait été préparée en sous-marin, pour une divulgation le plus tard possible.

Quand on édite un logiciel propriétaire, il y a moins de problème pour intégrer de gros changements discrètement.

On sait si Windows 7 sera corrigé ? Il y a le même problème de compatibilité avec les anti-virus ?
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: alain_p le 08 janvier 2018 à 22:20:01
Effectivement, cette mise à jour chez moi a été installée le 4/01.

PS C:\WINDOWS\system32> Get-Hotfix -Id KB4056892

Source        Description      HotFixID      InstalledBy          InstalledOn
------        -----------      --------      -----------          -----------
PC-xxxx Security Update  KB4056892     AUTORITE NT\Système  04/01/2018 00:00:00

Mais la description ne parle pas de Meltdown/Specte :

Citer
Cette mise à jour inclut des améliorations de la qualité. Elle ne comprend aucune nouvelle fonctionnalité du système d’exploitation. Les modifications principales sont notamment les suivantes :

- Résolution d’un problème selon lequel les journaux des événements ne reçoivent plus d’événements lorsqu’une stratégie de taille de fichier maximale est appliquée au canal.
....
- Mises à jour de sécurité de Windows SMB Server, du sous-système Windows pour Linux, du noyau Windows, de Windows Datacenter Networking, de Windows Graphics, de Microsoft Edge, d’Internet Explorer et du moteur de script Microsoft.

https://support.microsoft.com/fr-fr/help/4056892/windows-10-update-kb4056892

Notre serveur WSUS n'a pas du encore pousser cette MAJ.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 08 janvier 2018 à 22:26:09
Microsoft ne dit les failles que corrigent les mises à jour de sécurité, mais cela serait étonnant que cela ne concerne pas Meltdown/Specte.

Le même jour Mozilla a fait un correctif pour Spectre.

Qu'est ce qui ferait que ces mises à jour de sécurité ne pourraient pas attendre la prochain patch tuesday ?
A chaque mise à jour de sécurité hors du cycle mensuel, il y a une bonne raison.

Edit : copie d'écran sous Windows 7 64bits
(https://lafibre.info/testdebit/windows7/201801_maj_windows7.png)
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: alain_p le 08 janvier 2018 à 22:27:50
Il semble que ce patch ait pu bricker des AMD Athlon :

Citer
Many users claim the Security Update for Windows KB4056892, the Microsoft Meltdown/Spectre patch, bricks AMD Athlon-powered machines.

https://securityaffairs.co/wordpress/67498/hacking/microsoft-kb4056892-bricks-athlon-pcs.html

Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: alain_p le 08 janvier 2018 à 22:28:21
A chaque mise à jour de sécurité hors du cycle mensuel, il y a une bonne raison.

Tout à fait. Cela m'avait étonné et mis la puce à l'oreille.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Marco POLO le 09 janvier 2018 à 18:51:15
Oh non, surtout pas.

ARM est une marque, une société qui conçoit des processeurs d'architecture ARM, orientés "basse consommation" / "systèmes embarqués". Elle ne produit pas de processeur, elle ne fait que les concevoir. Les processeurs sont produits sous licences par d'autres sociétés qui rémunèrent ARM.
Ce sont des processeurs modernes, avec une architecture RISC contrairement aux x86/x64.
https://fr.wikipedia.org/wiki/ARM_(soci%C3%A9t%C3%A9)
https://fr.wikipedia.org/wiki/Architecture_ARM

Avec le boom des smartphone ces dernières années, la production de processeurs ARM dans le monde a explosée.

Leon.
Merci pour ces précisions.   ;)
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Marco POLO le 09 janvier 2018 à 19:18:58
...On sait si Windows 7 sera corrigé ? Il y a le même problème de compatibilité avec les anti-virus ?
J'ignore s'il s'agit de ça:
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: dj54 le 09 janvier 2018 à 19:20:29
sous linux
voici ce qui est prévue
https://wiki.ubuntu.com/SecurityTeam/KnowledgeBase/SpectreAndMeltdown
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: K-L le 09 janvier 2018 à 19:24:12
Ça c'est ce qui est prévu pour une distribution Linux parmi tant d'autres.

Pour Mageia par exemple : http://blog.mageia.org/fr/2018/01/08/chronique-hebdomadaire-2018-semaine-01/
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 09 janvier 2018 à 22:42:58
C'est la première fois que je vois un correctif de sécurité Ubuntu ne sortir que sue x86_64 (ARM et i386 seront patchés pus tard).

Le correctif est donc limité :
- uniquement l'architecture x86_64
- ne concerne que Meldown (CVE-2017-5754)

La mise à jour a été poussée pour Ubuntu 17.10

Le kernel a été compilé hier soir :
4.13.0-25-generic #29-Ubuntu SMP Mon Jan 8 21:14:41 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

Pour Ubuntu LTS, ils attendent plus de tests pour le pousser.

(https://lafibre.info/testdebit/ubuntu/201801_ubuntu_kernel_for_meltdown_attack.png)
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: hwti le 10 janvier 2018 à 03:01:07
Il n'y a pas de KTPI en 32 bits, il semble que certains kernels avec les patchs grsec ne soient pas impactés, je ne sais pas ce que les distributions vont faire.
Windows n'a pas de patch en 32 bits non plus.

Attention, les kernels inférieurs à Linux 4.14 ne supportent pas PCID, donc l'impact de KTPI sur les performances peut être plus important dans certains cas.
Pour Windows, c'est pareil : seul Windows 10 supporte PCID (mais uniquement sur les CPU supportant aussi INVPCID, cad Haswell et plus récents).
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Leon le 10 janvier 2018 à 06:28:43
KTPI = ??

Leon.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 10 janvier 2018 à 07:20:45
KPTI est une modification de la gestion mémoire pour isoler même quand le CPU n'est pas fiable sur l'isolation mémoire.

C'est ce patch intégré en fin de développement (RC6) de Linux 4.15 qui a fait beaucoup parler de lui. A la RC-6 seuls des petits correctifs de quelques lignes sont autorisés, pas un changement majeur dans la gestion de la mémoire. Cela montrait que cette intégration avait été préparée en sous-marin, pour une divulgation le plus tard possible.

Wikipédia dit : Kernel page-table isolation (KPTI) is a Linux kernel feature that mitigates the Meltdown security vulnerability (affecting mainly Intel's x86 CPUs) and improves kernel hardening against attempts to bypass kernel address space layout randomization (KASLR). It works by better isolating user space and kernel space memory. KPTI was merged into Linux kernel version 4.15, to be released in early 2018, and backported to Linux kernels 4.14.11, 4.9.75, 4.4.110.

Windows and macOS released similar updates.

KPTI does not address the related Spectre vulnerability.


Il y a plus de détails sur Wikipedia (https://en.wikipedia.org/wiki/Kernel_page-table_isolation) et sur lwn.net (https://lwn.net/Articles/738975/) (sur ce dernier site, on parle de KAISER, qui est l'ancien nom de KPTI)
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 10 janvier 2018 à 08:53:01
Ce qu tu soulève hwti est très intéressant sur le support ou non de PCID (Process-context identifier), qui permet de ne pas trop perdre en performance avec ce patch. C'est dommage que les tests montrant les régressions en terme de performance (https://lafibre.info/serveurs/grave-probleme-de-design-des-cpu-intel-depuis-10ans/msg510548/#msg510548) n'explique pas si cela a été fait avec le support de PCID ou non.

J'ai quatre questions hwti :

Sous Linux :

- La vulnérabilité Meltdown n'est pas exploitable sur un OS 32bits ou on ne sais pas la corriger ? (c'est complètement différent)

- Si le CPU support PCID, Linux 4.14 et 4.15 a moins de perte de performances, que les Linux précédents ? (attention les deux kernel 4.14 et 4.15 ne sont pas encore utilisés dans les distributions Linux, car le premier est trop récent et le second est encore en développement)


Les CPU qui supportent PCID (Process-context identifier) sont ceux de la famille de processeurs Westmere, conçus à partir de janvier 2010. On les identifie sous Linux par un lscpu => ce sont les Family 6 modèle 37/42/44/45/47 et tous les modèles > 50

Pour avoir le kernel 4.15 sous Ubuntu, il faut Ubuntu 18.04 minimum (sortie en avril 2018), ou Ubuntu 16.04 avec le HWE Kernel. Le Kernel 4.15 sera mis en place automatiquement pour ceux qui ont le HWE Kernel à partir de juillet 2018. Plus d'information sur https://wiki.ubuntu.com/Kernel/LTSEnablementStack

Sous Windows :

- Si si on a un CPU récent, supportant INVPCID (Haswell ou plus récent), il y a un impact de perte de performance supérieure lié au patch sous Windows 7, comparé à Windows 10 ?

- Sous Windows 10, il y a impact de perte de performance du patch supérieur avec un CPU plus ancien que Haswell  vs Haswell  et  récent ? (la cause étant le non support de INVPCID qui empêche d'utiliser PCID)

Cela va peut-être motiver Microsoft à supporter, comme sous Linux 4.14 et+, PCID sur les famille de processeurs Westmere, Sandy Bridge et Ivy Bridge ?


microarchitecture Haswell = 4ème génération de processeurs Core. Ils sont conçus à partir de juin 2013. Ce sont les par exemple les Core i3-4xxx, Core i5-4xxx, Core i7-4xxx.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 10 janvier 2018 à 14:11:22
Microsoft fait un premier point sur l'impact des patch sur les performances : (source Microsoft (https://cloudblogs.microsoft.com/microsoftsecure/2018/01/09/understanding-the-performance-impact-of-spectre-and-meltdown-mitigations-on-windows-systems/))

- Windows 10 + processeurs récents (PC de 2016 avec un processeur Skylake, Kabylake ou supérieur) : les benchmarks affichent des ralentissements à un chiffre, mais nous ne nous attendons pas à ce que la plupart des utilisateurs remarquent un changement car ces pourcentages sont reflétés en millisecondes.

- Windows 10 + processeurs un peu plus anciens (PC de 2015, processeurs Haswell et plus anciens) : certains benchmarks montrent des ralentissements plus importants, et nous nous attendons à ce que certains utilisateurs remarquent une baisse des performances du système.

- Windows 8/7 (PC de 2015, processeurs Haswell et plus anciens) : Impact significatif sur les performances du système : nous nous attendons à ce que la plupart des utilisateurs remarquent une baisse des performances du système.

- Windows Server, sur n’importe quel processeur : cette version est touchée par l’impact sur les performances. L'impact est plus fort sur les applications gourmandes en opérations d'entrée-sortie. L'impact est plus significatif sur les performances lorsque vous activez les mitigations pour isoler du code non fiable dans une instance Windows Server. C'est pourquoi vous devez prendre soin d'évaluer le risque de code non fiable pour chaque instance Windows Server et d'équilibrer le compromis sécurité / performance pour votre environnement.

J'ai par contre un peu de mal à comprendre : Windows 10 ne supporte pas PCID sur Haswell ?

Microsoft classe les PC en deux catégorie :
- La famille de processeurs Haswell (4ème génération) et plus ancien (Core i3-4xxx, Core i5-4xxx, Core i7-4xxx)
- La famille de processeurs Skylake (6ème génération) et plus récent (Core i3-6xxx, Core i5-6xxx, Core i7-6xxx)

Microsoft ne parle pas de la famille de processeurs Broadwell (5ème génération Core i3-5xxx, Core i5-5xxx, Core i7-5xxx). Il supportent PCID sous Windows 10 ?

Rajoutons à propose des patch publiés par Microsoft contre ces failles, que des PC équipés de processeurs AMD concernés par ces failles ne démarraient plus après application du patch Windows en question (https://lafibre.info/windows/probleme-maj-kb4054517/msg511289/#msg511289)
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: hwti le 10 janvier 2018 à 22:04:16
Sous Linux :

- La vulnérabilité Meltdown n'est pas exploitable sur un OS 32bits ou on ne sais pas la corriger ? (c'est complètement différent)
Elle n'est pas corrigée actuellement (à part peut-être avec les kernel Linux grsec ou dérivés, mais ce n'est pas ce que les principales distributions utilisent), je ne sais pas dans quelle mesure elle pourrait l'être (surtout qu'il y a en général 2 variantes en 32 bits : avec ou sans PAE).
C'est aussi valable sur ARM, mais seul le Cortex-A75 est impacté, et les premiers produits l'utilisant arrivent seulement dans quelques mois, aucune chance que ce soit avec un kernel 32 bits heureusement (Il y a eu des téléphones Android avec des Cortex-A53 et un kernel 32 bits, mais normalement c'est fini).

- Si le CPU support PCID, Linux 4.14 et 4.15 a moins de perte de performances, que les Linux précédents ? (attention les deux kernel 4.14 et 4.15 ne sont pas encore utilisés dans les distributions Linux, car le premier est trop récent et le second est encore en développement)[/size]

Les CPU qui supportent PCID (Process-context identifier) sont ceux de la famille de processeurs Westmere, conçus à partir de janvier 2010. On les identifie sous Linux par un lscpu => ce sont les Family 6 modèle 37/42/44/45/47 et tous les modèles > 50
Le cas optimal c'est PCID+INVPCID (cad Haswell et plus récent).
Normalement avec juste PCID, Linux devrait pouvoir s'en servir, ce qui est mieux que rien.
Mais bien sûr ce n'est que pour les kernels >= 4.14.

Sous Windows :

- Si si on a un CPU récent, supportant INVPCID (Haswell ou plus récent), il y a un impact de perte de performance supérieure lié au patch sous Windows 7, comparé à Windows 10 ?

- Sous Windows 10, il y a impact de perte de performance du patch supérieur avec un CPU plus ancien que Haswell  vs Haswell  et  récent ? (la cause étant le non support de INVPCID qui empêche d'utiliser PCID)

Cela va peut-être motiver Microsoft à supporter, comme sous Linux 4.14 et+, PCID sur les famille de processeurs Westmere, Sandy Bridge et Ivy Bridge ?

Seul Windows 10 sait gérer PCID+INVPCID (donc uniquement à partir d'Haswell) actuellement, c'est le cas "idéal".
Actuellement, il n'y a pas de code pour PCID seul, mais il est possible que ce soit prévu (l'API qui remonte le statut des corrections remonte deux informations pour PCID/INVPCID, mais actuellement les deux sont positionnés en lien avec INVPCID).


Tout ça c'est uniquement pour Meltdown, pour Spectre c'est encore plus compliqué, selon les techniques utilisées pour la variante 2 :
 - retpoline : recompilation des kernels/programmes
 - IBRS/STIBP/IBPB (ajouté par les nouveaux microcodes, respectivement Indirect Branch Restricted Speculation, Single Thread Indirect Branch Predictors, Indirect Branch Predictor Barrier) : restriction de la spéculation sur les branchements indirects (selon les OS et réglages, c'est appliqué sur le kernel seulement, ou tout le temps)
L'impact de IBRS/IBPB varie beaucoup selon la génération de processeur, donc dans certains cas Linux préférera probablement retpoline par défaut.
Windows semble actuellement les préférer s'ils sont disponibles, et les activer tout le temps (ce qui devrait pénaliser Haswell plus que Skylake).

A noter que selon https://newsroom.intel.com/wp-content/uploads/sites/11/2018/01/Intel-Analysis-of-Speculative-Execution-Side-Channels.pdf :
Citer
These capabilities will be available on modern existing products if the appropriate microcode update is applied, as well as on future products, where the performance cost of these mitigations will be improved
Spectre semble trop compliquée pour être vraiment corrigée, donc à l'avenir il faudra toujours compter sur un minimum de "coopération de l'OS", même si l'impact de performance pourrait se réduire.
Citer
Future Intel processors will also have hardware support for mitigating Rogue Data Cache Load.
Je pense qu'ils ne veulent pas se mouiller, mais Meltdown devrait être corrigée.

J'ai par contre un peu de mal à comprendre : Windows 10 ne supporte pas PCID sur Haswell ?
Le problème sur Haswell avec Windows 10, c'est l'impact d'IBRS à priori.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: hwti le 10 janvier 2018 à 22:19:03
Pour savoir ce que Windows a appliqué sur une machine donnée :
 - https://support.microsoft.com/en-us/help/4073119/protect-against-speculative-execution-side-channel-vulnerabilities-in
 - https://github.com/ionescu007/SpecuCheck
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 10 janvier 2018 à 22:32:37
Toujours pour la correction de Spectre, Intel fait un retour arrière et demande aux distributions de revenir sur un vieux microcode, pour deux CPU :
- sig 0x000406f1, pf_mask 0xef, 2017-11-18, rev 0xb000025, size 27648
- sig 0x000506c9, pf_mask 0x03, 2017-11-22, rev 0x002e, size 16384

Le microcode de Novembre 2017 doit être remplacé par celui de mars 2017 :

intel-microcode 3.20180108.1 source package in Ubuntu
Changelog

intel-microcode (3.20180108.1) unstable; urgency=high

  * New upstream microcode data file 20180108 (closes: #886367)
    + Updated Microcodes:
      sig 0x000306c3, pf_mask 0x32, 2017-11-20, rev 0x0023, size 23552
      sig 0x000306d4, pf_mask 0xc0, 2017-11-17, rev 0x0028, size 18432
      sig 0x000306e4, pf_mask 0xed, 2017-12-01, rev 0x042a, size 15360
      sig 0x000306f2, pf_mask 0x6f, 2017-11-17, rev 0x003b, size 33792
      sig 0x000306f4, pf_mask 0x80, 2017-11-17, rev 0x0010, size 17408
      sig 0x00040651, pf_mask 0x72, 2017-11-20, rev 0x0021, size 22528
      sig 0x00040661, pf_mask 0x32, 2017-11-20, rev 0x0018, size 25600
      sig 0x00040671, pf_mask 0x22, 2017-11-17, rev 0x001b, size 13312
      sig 0x000406e3, pf_mask 0xc0, 2017-11-16, rev 0x00c2, size 99328
      sig 0x00050654, pf_mask 0xb7, 2017-12-08, rev 0x200003c, size 27648
      sig 0x00050662, pf_mask 0x10, 2017-12-16, rev 0x0014, size 31744
      sig 0x00050663, pf_mask 0x10, 2017-12-16, rev 0x7000011, size 22528
      sig 0x000506e3, pf_mask 0x36, 2017-11-16, rev 0x00c2, size 99328
      sig 0x000706a1, pf_mask 0x01, 2017-12-26, rev 0x0022, size 73728
      sig 0x000806e9, pf_mask 0xc0, 2018-01-04, rev 0x0080, size 98304
      sig 0x000806ea, pf_mask 0xc0, 2018-01-04, rev 0x0080, size 98304
      sig 0x000906e9, pf_mask 0x2a, 2018-01-04, rev 0x0080, size 98304
      sig 0x000906ea, pf_mask 0x22, 2018-01-04, rev 0x0080, size 97280
      sig 0x000906eb, pf_mask 0x02, 2018-01-04, rev 0x0080, size 98304
    + Implements IBRS/IBPB support and enhances LFENCE: mitigation
      against Spectre (CVE-2017-5715)
    + Very likely fixes several other errata on some of the processors
  * supplementary-ucode-CVE-2017-5715.d/: remove.
    + Downgraded microcodes:
      sig 0x000406f1, pf_mask 0xef, 2017-03-01, rev 0xb000021, size 26624
      sig 0x000506c9, pf_mask 0x03, 2017-03-25, rev 0x002c, size 16384
    + This removes IBRS/IBPB support for these two platforms when compared
      with the previous (and unofficial) release, 20171215.  We don't know
      why Intel declined to include these microcode updates (as well as
      several others) in the release.
  * source: remove superseded upstream data file: 20171117
  * README.Debian, copyright: update download URLs (closes: #886368)

 -- Henrique de Moraes Holschuh <hmh@debian.org>  Wed, 10 Jan 2018 00:23:44 -0200
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: hwti le 10 janvier 2018 à 22:49:59
Toujours pour la correction de Spectre, Intel fait un retour arrière et demande aux distributions de revenir sur un vieux microcode, pour deux CPU :
- sig 0x000406f1, pf_mask 0xef, 2017-11-18, rev 0xb000025, size 27648
- sig 0x000506c9, pf_mask 0x03, 2017-11-22, rev 0x002e, size 16384
Il s'agit de Broadwell-E(P) (i7-68xxK, i7-69xxK/X, Xeon E5 v4), et Apollo Lake (dérivés d'Atom vendus sous le nom de Celeron N/J et Pentium N/J).
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: alain_p le 10 janvier 2018 à 22:54:58
Pour savoir ce que Windows a appliqué sur une machine donnée :
 - https://support.microsoft.com/en-us/help/4073119/protect-against-speculative-execution-side-channel-vulnerabilities-in
 - https://github.com/ionescu007/SpecuCheck

Merci pour ces infos. J'ai fait le test Microsoft PowerShell, il m'a recommandé un upgrade du BIOS (PC Dell). Je suis allé chercher le dernier BIOS, 1.3.1 du 8 Janvier, je l'ai appliqué (update aussi firmware Intel), il a fait plusieurs reboot. A la fin j'ai ré-éxécuté le test et tout était bon.

Donc il faut aussi mettre à jour le BIOS de ses PCs....

C'est aussi le cas des serveurs Dell au moins (et probablement d'autres constructeurs) :
http://www.dell.com/support/article/fr/fr/frbsdt1/sln308588/microprocessor-side-channel-vulnerabilities--cve-2017-5715--cve-2017-5753--cve-2017-5754---impact-on-dell-emc-products--dell-enterprise-servers--storage-and-networking-?lang=en
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: hwti le 10 janvier 2018 à 23:01:14
Donc il faut aussi mettre à jour le BIOS de ses PCs....
Microsoft ne semble effectivement pas distribuer ces mises à jour de microcode, alors qu'ils le font parfois via Windows Update.
Je ne sais pas si c'est parce qu'ils sont frileux (peu de retour de tests, performances), ou s'il y a un conflit entre ce qu'ils font et le moment où Windows les charge (Linux sait appliquer les microcodes à plusieurs moments, et il me semble avoir déjà lu que certains ne pouvaient l'être que très tôt dans le boot).
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Leon le 11 janvier 2018 à 06:46:29
Bon, difficile de comprendre tout ça, pour le commun des mortels. Je suis complètement perdu.
Je pense que je vais attendre un peu que ça se clarifie avant d'essayer d'installer quoi que ce soit...

Et puis vous savez expliquer pourquoi Microsoft n'intègre pas le correctif du microcode sans Windows directement ?

Leon.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 11 janvier 2018 à 08:24:43
Étonnant, car de nombreux constructeurs ne proposent pas des BIOS avec les derniers microcode.

C'est pour cela que Microsoft mettait à jour le microcode via les mises à jour Windows update de Windows et que Linux fait de même.

Sous Linux :

- La vulnérabilité Meltdown n'est pas exploitable sur un OS 32bits ou on ne sais pas la corriger ? (c'est complètement différent)
Elle n'est pas corrigée actuellement (à part peut-être avec les kernel Linux grsec ou dérivés, mais ce n'est pas ce que les principales distributions utilisent), je ne sais pas dans quelle mesure elle pourrait l'être (surtout qu'il y a en général 2 variantes en 32 bits : avec ou sans PAE).

Je ne sais pas si KPTI est présent dans ces noyaux, mais Ubuntu a sorti de nouveaux kernel pour 32bits, daté du 8 ou 9 janvier, comme pour les 64bits qui intègrent KPTI :
- Ubuntu 16.04 : 4.4.0-109-generic #132-Ubuntu SMP Tue Jan 9 19:52:07 UTC 2018 i686 i686 i686 GNU/Linux
- Ubuntu 16.04 kernel HWE  : 4.13.0-26-generic #29~16.04.2-Ubuntu SMP Tue Jan 9 21:38:24 UTC 2018 i686 i686 i686 GNU/Linux
- Ubuntu 17.10 : 4.13.0-25-generic #29-Ubuntu SMP Mon Jan 8 21:13:33 UTC 2018 i686 i686 i686 GNU/Linux

Mon PC 32bits n'est de toute façon par vulnérable à Meltdown, mais ce n'est pas le cas de la majorité des PC 32 bits :
$ lscpu
Architecture:                           i686
Mode(s) opératoire(s) des processeurs : 32-bit
Byte Order:                             Little Endian
CPU(s):                                 2
On-line CPU(s) list:                    0,1
Thread(s) par cœur :                    2
Cœur(s) par socket :                    1
Socket(s):                              1
Identifiant constructeur :              GenuineIntel
Famille de processeur :                 6
Modèle :                                28
Model name:                             Intel(R) Atom(TM) CPU N270   @ 1.60GHz
Révision :                              2
Vitesse du processeur en MHz :          800.000
CPU max MHz:                            1600,0000
CPU min MHz:                            800,0000
BogoMIPS:                               3191.87
Cache L1d :                             24K
Cache L1i :                             32K
Cache L2 :                              512K
Flags:                                  fpu vme de tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx constant_tsc arch_perfmon pebs bts cpuid aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 xtpr pdcm movbe lahf_lm dtherm
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: butler_fr le 11 janvier 2018 à 08:35:40
finalement les atom ne sont peut être pas si mauvais que ça ^^
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 11 janvier 2018 à 10:08:23
Retour sur l'impact performance sur un serveur de prod, qui a un trafic comparable d'un jour sur l'autre avec une pointe de trafic la nuit à 4 Gb/s.

Les données chargées sont un fichier de 10 Mo et il est en cache (aucun accès disque nécessaire)

Trafic réseau en Gb/s
(https://lafibre.info/images/stats/201801_stats_patch_meltdown_if.png)

Comme on le voit les deux nuits sont comparables en terme de trafic. La première avant l'upgrade, la seconde après.

Nombre de fichiers de 10 Mo téléchargés par seconde en http :
(https://lafibre.info/images/stats/201801_stats_patch_meltdown_apache_accesses.png)

Le moment où a été appliqué le patch (avec passage du Kernel 4.10 au Kernel 4.13 en même temps, c'est Ubuntu 16.04 avec Kernel HWE)
(https://lafibre.info/images/stats/201801_stats_patch_meltdown_uptime.png)

Charge CPU : on note une augmentation sur la seconde nuit pour un trafic équivalent :
(https://lafibre.info/images/stats/201801_stats_patch_meltdown_cpu.png)

Load average :
(https://lafibre.info/images/stats/201801_stats_patch_meltdown_load.png)

Les E/S disques sont bien nulles, sauf au moment du reboot :
(https://lafibre.info/images/stats/201801_stats_patch_meltdown_diskstats_iops.png)  (https://lafibre.info/images/stats/201801_stats_patch_meltdown_diskstats_throughput.png)

Le CPU est récent :

$ lscpu
Architecture:          x86_64
Mode(s) opératoire(s) des processeurs :32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                8
On-line CPU(s) list:   0-7
Thread(s) par cœur : 2
Cœur(s) par socket : 4
Socket(s):             1
Nœud(s) NUMA :       1
Identifiant constructeur :GenuineIntel
Famille de processeur :6
Modèle :             94
Model name:            Intel(R) Xeon(R) CPU E3-1240 v5 @ 3.50GHz
Révision :           3
Vitesse du processeur en MHz :3500.000
CPU max MHz:           3900,0000
CPU min MHz:           800,0000
BogoMIPS:              7008.00
Virtualisation :      VT-x
Cache L1d :           32K
Cache L1i :           32K
Cache L2 :            256K
Cache L3 :            8192K
NUMA node0 CPU(s):     0-7
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti intel_pt tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx rdseed adx smap clflushopt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: hwti le 11 janvier 2018 à 10:32:54
Je ne sais pas si KPTI est présent dans ces noyaux, mais Ubuntu a sorti de nouveaux kernel pour 32bits, daté du 8 ou 9 janvier, comme pour les 64bits qui intègrent KPTI :
- Ubuntu 16.04 : 4.4.0-109-generic #132-Ubuntu SMP Tue Jan 9 19:52:07 UTC 2018 i686 i686 i686 GNU/Linux
Je vois KAISER (donc une ancienne version de KPTI, probablement pas 100% alignée avec ce qui est intégré/corrigé en 4.15rcX), et avec CONFIG_KAISER qui dépend bien de CONFIG_X86_64.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 12 janvier 2018 à 09:03:57
Ubuntu distribue les mises à jour des mcrocode-Intel pour contrer la faille Spectre

Le microcode des CPU, comportant deux nouvelles fonctionnalités dans le processeur :  SPEC_CTRL et PRED_CMD MSRs
SPEC_CTRL et PRED_CMD MSRs permettant au kernel de contrôler les prédictions du CPU et donc de limiter le risque de la faille Spectre.

Concrètement, la prédiction est désactivé dans certains cas qui peuvent être problématique. La baisse de performances liée serait minime, les CPU continuant de faire des prédiction dans 99% des cas.

C'est la première fois que le microcode est mise à jour en tant que mis à jour de sécurité.

Il est possible de mettre à jour le microcode via une mise à jour du BIOS, où plus simplement, demander à Ubuntu de mettre à jour le microcode à chaque démarrage (ce n'est pas persistant, donc à chaque démarrage le nouveau microcode est chargé)

(https://lafibre.info/testdebit/ubuntu/201801_microcode_intel_ubuntu_1710.png)

Attention, il me semble que si le mocrocode est activé sur les nouvelles installation, ce n'est pas le cas des anciennes et comme le code n'est pas libre, Ubuntu n'est pas en mesure de le faire automatiquement.

Pour activer le microcode Pour les PC avec interface graphique, il faut activer l’utilisation du microcode Intel dans les pilotes additionnels :
(https://lafibre.info/testdebit/ubuntu/201512_microcode_intel_ubuntu_1510.png)
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 12 janvier 2018 à 09:05:04
Sur un serveur Ubuntu server comment faire pour installer les microcode ?

C'est simple :
sudo apt install intel-microcode


Il faut ensuite redémarrer le serveur.

intel-microcode est un paquet qui installe iucode-tool

Voici le contenu de la mise à jour :


Version 3.20180108.0~ubuntu17.10.1 :

  * New upstream microcode datafile 20180108
    + New Microcodes:
      sig 0x000506c9, pf_mask 0x03, 2017-03-25, rev 0x002c, size 16384
      sig 0x000706a1, pf_mask 0x01, 2017-12-26, rev 0x0022, size 73728
      sig 0x000906ea, pf_mask 0x22, 2018-01-04, rev 0x0080, size 97280
      sig 0x000906eb, pf_mask 0x02, 2018-01-04, rev 0x0080, size 98304
    + Updated Microcodes:
      sig 0x000306c3, pf_mask 0x32, 2017-11-20, rev 0x0023, size 23552
      sig 0x000306d4, pf_mask 0xc0, 2017-11-17, rev 0x0028, size 18432
      sig 0x000306e4, pf_mask 0xed, 2017-12-01, rev 0x042a, size 15360
      sig 0x000306f2, pf_mask 0x6f, 2017-11-17, rev 0x003b, size 33792
      sig 0x000306f4, pf_mask 0x80, 2017-11-17, rev 0x0010, size 17408
      sig 0x00040651, pf_mask 0x72, 2017-11-20, rev 0x0021, size 22528
      sig 0x00040661, pf_mask 0x32, 2017-11-20, rev 0x0018, size 25600
      sig 0x00040671, pf_mask 0x22, 2017-11-17, rev 0x001b, size 13312
      sig 0x000406e3, pf_mask 0xc0, 2017-11-16, rev 0x00c2, size 99328
      sig 0x00050654, pf_mask 0xb7, 2017-12-08, rev 0x200003c, size 27648
      sig 0x00050662, pf_mask 0x10, 2017-12-16, rev 0x0014, size 31744
      sig 0x00050663, pf_mask 0x10, 2017-12-16, rev 0x7000011, size 22528
      sig 0x000506e3, pf_mask 0x36, 2017-11-16, rev 0x00c2, size 99328
      sig 0x000806e9, pf_mask 0xc0, 2018-01-04, rev 0x0080, size 98304
      sig 0x000806ea, pf_mask 0xc0, 2018-01-04, rev 0x0080, size 98304
      sig 0x000906e9, pf_mask 0x2a, 2018-01-04, rev 0x0080, size 98304
   * source: remove unneeded intel-ucode/ directory
   * source: remove superseded upstream data file: 20170707

Vérification :

PC fixe : Exemple avec un Intel Core i3-4150 @3.50GHz, processeur sorti en T2 2014

Avant la mise à jour, Ubuntu mets à jour vers la version 0x22 du 27 janvier 2017 :

$ journalctl -k | grep microcode
janv. 12 20:44:22 kernel: microcode: microcode updated early to revision 0x22, date = 2017-01-27
janv. 12 20:44:22 kernel: microcode: sig=0x306c3, pf=0x2, revision=0x22
janv. 12 20:44:22 kernel: microcode: Microcode Update Driver: v2.2.


Après la mise à jour, Ubuntu mets à jour vers la version 0x23 du 20 novembre 2017 :
$ journalctl -k | grep microcode
janv. 12 21:34:08 kernel: microcode: microcode updated early to revision 0x23, date = 2017-11-20
janv. 12 21:34:08 kernel: microcode: sig=0x306c3, pf=0x2, revision=0x23
janv. 12 21:34:08 kernel: microcode: Microcode Update Driver: v2.2.



PC portable : Exemple avec un Intel Core i5-5300U @2.30GHz, processeur sorti en T1 2015

Avant la mise à jour, Ubuntu mets à jour vers la version 0x25 du 27 janvier 2017 :

$ journalctl -k | grep microcode
janv. 11 15:42:05 kernel: microcode: microcode updated early to revision 0x25, date = 2017-01-27
janv. 11 15:42:05 kernel: microcode: sig=0x306d4, pf=0x40, revision=0x25
janv. 11 15:42:05 kernel: microcode: Microcode Update Driver: v2.2.


Après la mise à jour, Ubuntu mets à jour vers la version 0x28 du 17 novembre 2017 :
$ journalctl -k | grep microcode
janv. 12 09:11:45 kernel: microcode: microcode updated early to revision 0x28, date = 2017-11-17
janv. 12 09:11:45 kernel: microcode: sig=0x306d4, pf=0x40, revision=0x28
janv. 12 09:11:45 kernel: microcode: Microcode Update Driver: v2.2.


Serveur : Exemple avec un Intel Xeon E3-1240 v5 @ 3.50GHz, processeur sorti en T4 2015

Avant la mise à jour, Ubuntu mets à jour vers la version 0xba du 9 avril 2017 :

$ journalctl -k | grep microcode
janv. 10 17:22:10 kernel: microcode: microcode updated early to revision 0xba, date = 2017-04-09
janv. 10 17:22:10 kernel: microcode: sig=0x506e3, pf=0x2, revision=0xba
janv. 10 17:22:10 kernel: microcode: Microcode Update Driver: v2.2.


Après la mise à jour, Ubuntu mets à jour vers la version 0xc2 du 16 novembre 2017 :
$ journalctl -k | grep microcode
janv. 12 05:56:53 kernel: microcode: microcode updated early to revision 0xc2, date = 2017-11-16
janv. 12 05:56:53 kernel: microcode: sig=0x506e3, pf=0x2, revision=0xc2
janv. 12 05:56:53 kernel: microcode: Microcode Update Driver: v2.2.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 16 janvier 2018 à 08:53:25
Utilitaire pour vérifier si votre système est vulnérable a une des trois failles :

- Spectre & Meltdown vulnerability/mitigation checker for Linux (https://github.com/speed47/spectre-meltdown-checker) (avec son code source disponible sur GitHub)

- Ashampoo Spectre Meltdown CPU Checker pour Windows 7/8/10 (https://www.ashampoo.com/fr/eur/pin/1304/sicherheitssoftware/spectre-meltdown-cpu-checker)




On regrette que Intel n'ait publié des microcode que pour les CPU récents (2014 / 2015 / 2106 / 2017).

- Intel Xeon E5-1410 @2.8GHz, sortie en T2 2012 n'a pas encore de correctif microcode
- Intel Xeon E3-1230 V2 @3.3GHz, sortie en T2 2012 n'a pas encore de correctif microcode
- Intel Core i3-3240 @ 3.40GHz, sortie en T3 2012 n'a pas encore de correctif microcode

Voici ce que cela donne sur un Xeon E3-1230 V2 avec Ubuntu 16.04.3 : la mise à jour du microcode date de février 2015.

$ journalctl -k | grep microcode
janv. 16 06:48:26 kernel: microcode: microcode updated early to revision 0x1c, date = 2015-02-26
janv. 16 06:48:26 kernel: microcode: sig=0x306a9, pf=0x2, revision=0x1c
janv. 16 06:48:26 kernel: microcode: Microcode Update Driver: v2.2.

Voici ce que cela donne sur un Core i3-3240 @ 3.40GHz avec Ubuntu 16.04.3 : même microcode que sur le Xeon E3-1230 V2 :
$ journalctl -k | grep microcode
janv. 16 16:51:12 kernel: microcode: microcode updated early to revision 0x1c, date = 2015-02-26
janv. 16 16:51:12 kernel: microcode: sig=0x306a9, pf=0x2, revision=0x1c
janv. 16 16:51:12 kernel: microcode: Microcode Update Driver: v2.2.

Maintenant, Google rend publique une solution logicielle pour "corriger" ou "atténuer" les vulnérabilités Spectre avec moins d'impact sur les performances. On a donc deux solutions :

- D’un côté, Intel propose une mise à jour du microcode du processeur. Celle-ci est pointée du doigt par les constructeurs et les chercheurs, qui signalent son impact significatif sur les performances du processeur, car on désactive dans certaines situation l’exécution spéculative du processeur.

- La solution logicielle Google, baptisé Retpoline, contraction de Return et Trampoline, celle-ci « permet d'isoler les branches indirectes de l'exécution spéculative ». Google explique l’avoir utilisé en interne sans avoir reçu la moindre plainte des clients de Google Cloud Platform en termes de réduction de performances.

De nouveaux patch pourraient arriver, permettant à plus de systèmes d'être corrigés et bonus, avec moins d'impact sur les performances.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Thornhill le 17 janvier 2018 à 15:23:05
Voilà, Oracle a enfin craché le morceau 15 jours après tout le monde.
Comme c'était prévisible, les Sparc sont vulnérables à Spectre.

Il va falloir se résigner à supprimer intel dans le titre de ce sujet...



   Meltdown (CVE-2017-5754):
    Based on current information, Oracle believes that Oracle Solaris versions running on SPARCv9 hardware are not impacted by the Meltdown (CVE-2017-5754) vulnerability.

    Spectre (CVE-2017-5753, CVE-2017-5715):
    Based on current information, Oracle believes that certain versions of Oracle Solaris on SPARCv9 are affected by the Spectre vulnerabilities (CVE-2017-5753, CVE-2017-5715). Oracle is working on producing the patches for all affected versions that are under Premier Support or Extended Support. Oracle will deliver these fixes upon successful completion of the testing of the patches. For more information, the Oracle Lifetime Support Policies for hardware and operating systems is located at https://www.oracle.com/support/lifetime-support/hardware-operating-systems.html

    Oracle will also investigate the performance impact of these patches, and may update this MOS Note when more information is available. In the meanwhile, Oracle recommends that customers follow normal security practices, and not allow the installation of untrusted programs on affected systems (Successful exploitation of the Spectre vulnerabilities requires that a perpetrator be allowed to install and execute malicious code against the targeted systems). Oracle also recommends that customers limit the number of privileged users (who have the ability to install and run code) and periodically review audit logs (to detect potentially abnormal activities).
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 18 janvier 2018 à 22:12:30
Utilitaire de seulement 120 Ko pour vérifier si votre système est vulnérable a une des trois failles sous Windows :

- https://www.grc.com/inspectre.htm

Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: alain_p le 18 janvier 2018 à 22:19:24
Bon, c'est pas trop mal sur mon PC perso sous windows 10 1709 64 bit, mais j'avais mis à jour le BIOS, entre autres :
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: hwti le 18 janvier 2018 à 23:36:29
Intel reconnait des problèmes de stabilité avec les nouveaux microcodes !

https://newsroom.intel.com/news/firmware-updates-and-initial-performance-data-for-data-center-systems/
Citer
As I noted in my blog post last week, while the firmware updates are effective at mitigating exposure to the security issues, customers have reported more frequent reboots on firmware updated systems. [...] We have reproduced these issues internally and are making progress toward identifying the root cause. In parallel, we will be providing beta microcode to vendors for validation by next week.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 19 janvier 2018 à 07:22:56
Ubuntu vas proposer dans quelques jours de nouveaux noyaux pour corriger Spectre :
- 4.13.0-29.32
- 4.4.0-111.134
- 3.13.0-140.189

Ceux qui avaient été déployés mardi 9 janvier corrigeaient Meltdown et non Spectre.

Ils sont en validation depuis le 12 janvier, il est possible de les récupérer en cochant la case qui active le dépôt "proposed"
(https://lafibre.info/testdebit/ubuntu/201801_mise_a_jour_proposed.png)


Des microcode pour les CPU AMD seront proposés lundi prochain dans Ubuntu, pour ceux qui ont installé le paquet amd64-microcode (installé par défault, si vous avez activé la case pour le contenu non libre qui inclut aussi du code propriétaire pour certaines cartes WiFi.

Pour l’installer : sudo apt install amd64-microcode
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 24 janvier 2018 à 22:04:29
Toujours pour la correction de Spectre, Intel fait un retour arrière et demande aux distributions de revenir sur un vieux microcode, pour deux CPU :
- sig 0x000406f1, pf_mask 0xef, 2017-11-18, rev 0xb000025, size 27648
- sig 0x000506c9, pf_mask 0x03, 2017-11-22, rev 0x002e, size 16384

Le microcode de Novembre 2017 doit être remplacé par celui de mars 2017 :

intel-microcode 3.20180108.1 source package in Ubuntu
Changelog

intel-microcode (3.20180108.1) unstable; urgency=high

  * New upstream microcode data file 20180108 (closes: #886367)
    + Updated Microcodes:
      sig 0x000306c3, pf_mask 0x32, 2017-11-20, rev 0x0023, size 23552
      sig 0x000306d4, pf_mask 0xc0, 2017-11-17, rev 0x0028, size 18432
      sig 0x000306e4, pf_mask 0xed, 2017-12-01, rev 0x042a, size 15360
      sig 0x000306f2, pf_mask 0x6f, 2017-11-17, rev 0x003b, size 33792
      sig 0x000306f4, pf_mask 0x80, 2017-11-17, rev 0x0010, size 17408
      sig 0x00040651, pf_mask 0x72, 2017-11-20, rev 0x0021, size 22528
      sig 0x00040661, pf_mask 0x32, 2017-11-20, rev 0x0018, size 25600
      sig 0x00040671, pf_mask 0x22, 2017-11-17, rev 0x001b, size 13312
      sig 0x000406e3, pf_mask 0xc0, 2017-11-16, rev 0x00c2, size 99328
      sig 0x00050654, pf_mask 0xb7, 2017-12-08, rev 0x200003c, size 27648
      sig 0x00050662, pf_mask 0x10, 2017-12-16, rev 0x0014, size 31744
      sig 0x00050663, pf_mask 0x10, 2017-12-16, rev 0x7000011, size 22528
      sig 0x000506e3, pf_mask 0x36, 2017-11-16, rev 0x00c2, size 99328
      sig 0x000706a1, pf_mask 0x01, 2017-12-26, rev 0x0022, size 73728
      sig 0x000806e9, pf_mask 0xc0, 2018-01-04, rev 0x0080, size 98304
      sig 0x000806ea, pf_mask 0xc0, 2018-01-04, rev 0x0080, size 98304
      sig 0x000906e9, pf_mask 0x2a, 2018-01-04, rev 0x0080, size 98304
      sig 0x000906ea, pf_mask 0x22, 2018-01-04, rev 0x0080, size 97280
      sig 0x000906eb, pf_mask 0x02, 2018-01-04, rev 0x0080, size 98304
    + Implements IBRS/IBPB support and enhances LFENCE: mitigation
      against Spectre (CVE-2017-5715)
    + Very likely fixes several other errata on some of the processors
  * supplementary-ucode-CVE-2017-5715.d/: remove.
    + Downgraded microcodes:
      sig 0x000406f1, pf_mask 0xef, 2017-03-01, rev 0xb000021, size 26624
      sig 0x000506c9, pf_mask 0x03, 2017-03-25, rev 0x002c, size 16384
    + This removes IBRS/IBPB support for these two platforms when compared
      with the previous (and unofficial) release, 20171215.  We don't know
      why Intel declined to include these microcode updates (as well as
      several others) in the release.
  * source: remove superseded upstream data file: 20171117
  * README.Debian, copyright: update download URLs (closes: #886368)

 -- Henrique de Moraes Holschuh <hmh@debian.org>  Wed, 10 Jan 2018 00:23:44 -0200

J'ai moi même eu des reboot intempestif sur des serveurs avec CPU fortement chargé suite à la mise à jour du Micro-code.

Ubuntu fais machine arrière et remet la précédente version :

(https://lafibre.info/testdebit/ubuntu/201801_ubuntu_microcode_intel.png)
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: alain_p le 24 janvier 2018 à 22:08:12
Dell a aussi retiré des mises  à jour de BIOS de Janvier pour remettre les anciennes.

https://www.bleepingcomputer.com/news/security/dell-advising-all-customers-to-not-install-spectre-bios-updates/

P.S : et d'ailleurs HP aussi.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 28 janvier 2018 à 20:42:01
Commande sous Linux pour vérifier si le noyau est bien patché contre Meltdown :

cat /boot/config-`uname -r` | egrep "CONFIG_PAGE_TABLE_ISOLATION"

Vous devez obtenir CONFIG_PAGE_TABLE_ISOLATION=y

Pour en savoir plus sur KPTI : Kernel page-table isolation (https://en.wikipedia.org/wiki/Kernel_page-table_isolation)
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Thornhill le 28 janvier 2018 à 21:34:57
Dell a aussi retiré des mises  à jour de BIOS de Janvier pour remettre les anciennes.

Oracle itou.
D'ailleurs Intel a identifié la cause des reboots et fait tester aux OEM de nouveaux firmwares :
https://newsroom.intel.com/news/root-cause-of-reboot-issue-identified-updated-guidance-for-customers-and-partners/ (https://newsroom.intel.com/news/root-cause-of-reboot-issue-identified-updated-guidance-for-customers-and-partners/)
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: jack le 28 janvier 2018 à 22:31:37
Pour ceux qui ont un kernel récent:
Citation de: Greg Kroah-Hartman
11% [jack:~]grep . /sys/devices/system/cpu/vulnerabilities/*
/sys/devices/system/cpu/vulnerabilities/meltdown:Mitigation: PTI
/sys/devices/system/cpu/vulnerabilities/spectre_v1:Vulnerable
/sys/devices/system/cpu/vulnerabilities/spectre_v2:Vulnerable: Minimal generic A M retpoline
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 10 février 2018 à 15:01:27
Voici l'état d’avancement des correctifs Intel : (document au format PDF)
(https://lafibre.info/images/materiel/201802_intel_microcode_update.jpg) (https://lafibre.info/images/materiel/201802_intel_microcode_update.pdf)

Bon point : Intel a prévu de sortir des correctifs sur presque tous les CPU commercialisés depuis 10ans. J'ai noté l'absence de certains Xeon haut de gamme dans le document, je ne m'explique pas pourquoi.

Voici un résumé en indiquant le N° de la génération : (si vous avez un i3-4150, la génération est indiquée par le chiffre juste après le tiret, ici 4ème génération)
- micro-architecture NetBurst (Pentium 4 / D et dérivés)  : Pas de correctif prévu
- Merom => Gen -3 (65nm / juillet 2006) : Pas de correctif prévu
- Penryn => Gen -2 (45nm / novembre 2007) : Correctifs planifiés, sauf pour les Xeon Dunnington
- Nehalem => Gen -1 (45nm / novembre 2008) : Correctifs planifiés, sauf pour les Xeon Gainestown et Beckton
- Westmere => Gen1 (32nm / janvier 2010) : Correctifs planifiés, sauf pour les Xeon Eagleton
- Sandy-Bridge => Gen2 (32nm / janvier 2011) : Corretifs en Pre-Beta
- Ivy-Bridge => Gen3 (22nm / avril 2012) : Corretifs en Pre-Beta (ou Beta pour certains Xeon)
- Haswell => Gen4  (22nm / juin 2013) : Correctifs planifiés / Pre-Beta / Beta en fonctiondu CPU
- Broadwell => Gen5 (14nm / septembre 2014) : Corretifs en Pre-Beta (cpu mobile+Xeon) ou Beta (cpu fixe)
- Skylake => Gen6 (14nm / août 2015) : Correctifs en prod sauf pour Core-i9 et Xeon qui sont en Beta
- Kaby-Lake => Gen7 (14nm / août 2016) : Correctifs en Beta
- Kaby Lake Refresh / Coffee Lake => Gen8 (14nm / octobre 2017) : Correctifs en Beta
- Cannonlake => Gen9 (10nm / second semestre 2018) : Correctifs intégrés dans le silicium

Je n'a pas parlé des Atom, mais ils semblent avoir presque tous leur correctifs en prod.

Les dates indiquées sont celles de la sortie de la première puce. Aujourd'hui en 2018, les PC portables sont commercialisés avec des puces de 6ème, 7ème et 8ème génération.

Intel à compliqué les choses avec du Kaby Lake Refresh et du  Coffee Lake qui désignent tous les deux la 8ème génération.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Free_me le 21 mars 2018 à 16:32:46
du coup c'est quand qu'Intel nous sors des processeurs patchés physiquement ??
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 23 avril 2018 à 21:31:00
C'est au second semestre que sortira les premiers CPU corrigés physiquement (de nouveaux modèles, tous les modèles actuels de 8ème génération seront encore commercialisés et non corrigés)

Les correctifs sont vraiment complexes, après Intel qui retire ses micro-code, ceux fournis en avril entraînent des bug et nécessitent une nouvelle mise à jour du kernel : (mise à jour proposée aujourd'hui depuis 16h12)

(https://lafibre.info/testdebit/ubuntu/201804_ubuntu_kernel_bug_microcode_intel.png)
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: hwti le 24 avril 2018 à 22:44:19
C'est au second semestre que sortira les premiers CPU corrigés physiquement (de nouveaux modèles, tous les modèles actuels de 8ème génération seront encore commercialisés et non corrigés)
Corrigés physiquement pour Meltdown, peut-être.

Pour Spectre, ils auront au moins l'équivalent des microcodes patchés intégré d'origine, et peut-être des changements pour que l'utilisation de ces instructions soit moins pénalisante.
Il n'est pas possible de corriger Spectre dans un CPU, c'est-à-dire de corriger la faille sans aucune modification dans les programmes (à part totalement désactiver l'exécution spéculative, ce qui est impensable).
Par exemple, il n'y a aucune séparation entre le code d'un navigateur et le code généré par le compilateur JIT utilisé pour le JavaScript. Le CPU ne peut donc pas empêcher les effets de bord, sauf à retenir toutes les modifications des différents caches (L1, L2, L3, TLB, prédicteur de branchement, ...) pour pouvoir défaire tous les changements apportés par les instructions d'une branche mal prédite, ce qui serait très difficile et coûteux.
Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: Thornhill le 08 mai 2018 à 14:58:56
Oracle a publié les résultats des patchs (microcode & kernel) de mitigation de Spectre sur les derniers CPU SPARC (S7 / M7 / M8).
Evidemment, l'impact n'est pas négligeable.



Titre: Grave probleme de design des CPU intel depuis 10ans
Posté par: vivien le 08 mai 2018 à 15:05:36
Spectre-NG : Spectre de retour, 8 nouvelles vulnérabilités dont 4 critiques

Intel n'a pas encore terminé son travail de micro-code pour atténuer Spectre que voici Spectre-NG :

Le site allemand Heise rapporte que des chercheurs ont trouvés huit nouvelles vulnérabilités sur les processeurs Intel. Nommées Spectre-NG (Next Generation) elles seraient assez similaires à celles découvertes en début d’année et quatre d’entre elles présenteraient un risque de sécurité critique. Peu de détails ont été divulgués, mais Intel, Microsoft et Linux travaillent déjà sur des corrections. La première vague de patches devrait débarquer en fin de mois, tandis que la deuxième est attendue pour Août.

Encore plus dangereux que Spectre ?

Ces nouvelles vulnérabilités sont essentiellement des variantes de Spectre et peuvent être exploitées sur un système invité (host) via machine virtuelle (VM). Cependant, l’une de ces failles serait jugée bien plus dangereuse que ce que l’on a pu voir précédemment, car elle simplifierait grandement les attaques intersystème (ou multi plateforme). Les mots de passes et clés d’accès seraient les éléments les plus en risque, particulièrement sur des machines utilisant des services sur le cloud.

Pour les utilisateurs moyens, le risque de sécurité est assez bas, puisque c’est surtout les serveurs qui sont concernés. En revanche, il sera intéressant de surveiller l’impact que les patchs auront sur nos machines. Espérons que les performances ne soient pas affectées.

Notez que pour l’instant la recherche n’a été effectuée que sur les processeurs Intel, Heise note que certains CPU ARM pourraient être affectés et que plus d’informations sont nécessaires pour savoir si AMD est épargné.


Source : tom's Hardware (https://www.tomshardware.fr/articles/faille-securite-serveur-patch-intel,1-67505.html) par Paco Berdah 4 mai 2018
Titre: Spectre et Meltdown: Grave problème de design des CPU Intel depuis 10ans
Posté par: vivien le 16 juin 2018 à 16:24:28
Après la variante 3a (CVE-2018-3640) et de la variante 4 (CVE-2018-3639) au mois de mai, voici encore une nouvelle faille proche de Spectre et Meltdown via l'exécution spéculative : CVE-2018-3665

https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00145.html



Titre: Spectre et Meltdown: Grave problème de design des CPU Intel depuis 10ans
Posté par: Optrolight le 16 juin 2018 à 18:15:04
Je suis curieux de voir comment d'un point de vu architecture ils vont corriger cela en gardant les mêmes performances.
Titre: Spectre et Meltdown: Grave problème de design des CPU Intel depuis 10ans
Posté par: vivien le 07 juillet 2018 à 07:25:55
Encore une régression lié à un Microcode qui atténue la faille Spectre, mais cette fois si chez AMD :

(https://lafibre.info/testdebit/ubuntu/201807_amd_microcode_regression_spectre.png)
Titre: Spectre et Meltdown: Grave problème de design des CPU Intel depuis 10ans
Posté par: vivien le 22 août 2018 à 13:42:34
1/ Fin mai "Speculative Store Bypass" (SSB) est annoncé (CVE-2018-3639) Cette nouvelle faille, comme pour Spectre, est liée à l’exécution spéculative des processeurs. Cela brise une fois de plus l’isolation entre les différentes applications tournant sur un ordinateur.

2/ Mi-juillet, des chercheurs annonçaient deux nouvelles variantes de Spectre (1.1 et 1.2).

3/ Début août, des chercheurs annonçaient NetSpectre (Read Arbitrary Memory over Network).

4/ Mi-août, c'est Foreshadow L1 Terminal Fault (L1TF) ou la variante 5
trois identifiants CVE (de niveau « high ») ont déjà été créés :
- L1 Terminal Fault – SGX (CVE-2018-3615) 7.9 High CVSS : 3.0/AV : L/AC : L/PR : N/UI : N/S : C/C : H/I : L/A : N ;
- L1 Terminal Fault – OS, SMM (CVE-2018-3620)
7.1 High CVSS : 3.0/AV : L/AC : L/PR : N/UI : N/S : C/C : H/I : N/A : N ;
- L1 Terminal Fault – VMM (CVE-2018-3646)
7.1 High CVSS : 3.0/AV : L/AC : L/PR : N/UI : N/S : C/C : H/I : N/A : N.
Cf le site d'OVH pour plus de précisions : https://www.ovh.com/fr/blog/ovh-l1-terminal-fault-l1ft-foreshadow-disclosure/

(https://lafibre.info/images/materiel/201808_intel_spectre_meltdown.png)

Voici le correctif du kernel pour Ubuntu, déployé le même jour que sa divulgation.
(https://lafibre.info/testdebit/ubuntu/201808_intel_foreshadow_l1_terminal_fault.png)

Avec toutes ces failles, difficile de savoir si votre micro-code permet de bien corriger la faille (en plus de disposer de la dernière version du Kernel)

Linux permet de récupérer des informations via dmesg : dmesg | grep -i -e "Spectre" -e "Speculative"

Cas d'une machine Speculative Store Bypass: Vulnerable :

$ dmesg | grep -i -e "Spectre" -e "Speculative"
[    0.028667] Spectre V2 : Mitigation: Full generic retpoline
[    0.028669] Spectre V2 : Spectre v2 mitigation: Filling RSB on context switch
[    0.028670] Spectre V2 : Spectre v2 mitigation: Enabling Indirect Branch Prediction Barrier
[    0.028671] Spectre V2 : Enabling Restricted Speculation for firmware calls
[    0.028673] Speculative Store Bypass: Vulnerable


Après mise à jour de l'UEFI :
$ dmesg | grep -i -e "Spectre" -e "Speculative"
[    0.028912] Spectre V2 : Mitigation: Full generic retpoline
[    0.028914] Spectre V2 : Spectre v2 mitigation: Filling RSB on context switch
[    0.028915] Spectre V2 : Spectre v2 mitigation: Enabling Indirect Branch Prediction Barrier
[    0.028916] Spectre V2 : Enabling Restricted Speculation for firmware calls
[    0.028918] Speculative Store Bypass: Mitigation: Speculative Store Bypass disabled via prctl and seccomp



Pour L1 Terminal Fault (L1TF) :

cat /sys/devices/system/cpu/vulnerabilities/l1tf

Processors that aren't vulnerable to L1TF will report the following:

$ cat /sys/devices/system/cpu/vulnerabilities/l1tf
Not affected

The file will contain the following contents for processors that do not support Intel Hyper-Threading or where Hyper-Threading has been disabled:

$ cat /sys/devices/system/cpu/vulnerabilities/l1tf
Mitigation: PTE Inversion; VMX: conditional cache flushes, SMT disabled

Processors that have Hyper-Threading support enabled will indicate that SMT is vulnerable when used in conjunction with Intel Virtualization Technology (VMX):

$ cat /sys/devices/system/cpu/vulnerabilities/l1tf
Mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable

Intel processors that lack VMX support will not report VMX status:

$ cat /sys/devices/system/cpu/vulnerabilities/l1tf
Mitigation: PTE Inversion

In some cases, which are believed to be rare, there may be no mitigation available due to the PTE inversion technique being incompatible with the number of physical address bits used by the processor and the amount of memory installed in the system. In these cases, the file will indicate the no mitigations are in place and that the system is vulnerable:

$ cat /sys/devices/system/cpu/vulnerabilities/l1tf
Vulnerable

If you've modified the default behavior of L1 data cache flushes, the VMX status will indicate the change in behavior. If the selected mode is always, the file contents will be similar to the following (Hyper-Threading is disabled in the example but may be enabled on your system):

$ cat /sys/devices/system/cpu/vulnerabilities/l1tf
Mitigation: PTE Inversion; VMX: cache flushes, SMT disabled

If the selected mode is "never", the file contents will be similar to the following (Hyper-Threading is disabled in the example but may be enabled on your system):

$ cat /sys/devices/system/cpu/vulnerabilities/l1tf
Mitigation: PTE Inversion; VMX: vulnerable, SMT disabled

Source : https://wiki.ubuntu.com/SecurityTeam/KnowledgeBase/L1TF
Titre: Spectre et Meltdown: Grave problème de design des CPU Intel depuis 10ans
Posté par: vivien le 26 août 2018 à 16:04:52
Encore plus simple pour avoir un résumé : grep "" /sys/devices/system/cpu/vulnerabilities/*

Si ne vulnérabilité n’apparaît pas, c'est que le Kernel ne la corrige pas, donc vulnérable.

Après la mise à jour de l'UEFI: (version fin du 1er semestre 2018)
$ grep "" /sys/devices/system/cpu/vulnerabilities/*
/sys/devices/system/cpu/vulnerabilities/l1tf:Mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable
/sys/devices/system/cpu/vulnerabilities/meltdown:Mitigation: PTI
/sys/devices/system/cpu/vulnerabilities/spec_store_bypass:Mitigation: Speculative Store Bypass disabled via prctl and seccomp
/sys/devices/system/cpu/vulnerabilities/spectre_v1:Mitigation: __user pointer sanitization
/sys/devices/system/cpu/vulnerabilities/spectre_v2:Mitigation: Full generic retpoline, IBPB, IBRS_FW


Avant la mise à jour avec le dernier UEFI : (version début du 1er semestre 2018)
$ grep "" /sys/devices/system/cpu/vulnerabilities/*
/sys/devices/system/cpu/vulnerabilities/l1tf:Mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable
/sys/devices/system/cpu/vulnerabilities/meltdown:Mitigation: PTI
/sys/devices/system/cpu/vulnerabilities/spec_store_bypass:Vulnerable
/sys/devices/system/cpu/vulnerabilities/spectre_v1:Mitigation: __user pointer sanitization
/sys/devices/system/cpu/vulnerabilities/spectre_v2:Mitigation: Full generic retpoline, IBPB, IBRS_FW


Avec un microcode encore plus ancien :
$ grep "" /sys/devices/system/cpu/vulnerabilities/*
/sys/devices/system/cpu/vulnerabilities/l1tf:Mitigation: PTE Inversion; VMX: EPT disabled
/sys/devices/system/cpu/vulnerabilities/meltdown:Mitigation: PTI
/sys/devices/system/cpu/vulnerabilities/spec_store_bypass:Vulnerable
/sys/devices/system/cpu/vulnerabilities/spectre_v1:Mitigation: __user pointer sanitization
/sys/devices/system/cpu/vulnerabilities/spectre_v2:Mitigation: Full generic retpoline
Titre: Spectre et Meltdown: Grave problème de design des CPU Intel depuis 10ans
Posté par: vivien le 28 août 2018 à 09:32:05
Ubuntu a mis en production aujourd'hui les microcode pour corriger "Speculative Store Bypass" (CVE-2018-3639)

Avant la mise en production de ces micro-code (il y a eu une longue période de validation), la mise à jour de l'UEFI était nécessaire.

(https://lafibre.info/testdebit/ubuntu/201808_ubuntu_mocrocode_intel.png)

Avant la mise à jour :
$ dmesg | grep microcode
[    0.000000] microcode: microcode updated early to revision 0x2d, date = 2018-02-07
[    1.336839] microcode: sig=0x206a7, pf=0x2, revision=0x2d
[    1.336990] microcode: Microcode Update Driver: v2.2.
$ grep "" /sys/devices/system/cpu/vulnerabilities/*
/sys/devices/system/cpu/vulnerabilities/l1tf:Mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable
/sys/devices/system/cpu/vulnerabilities/meltdown:Mitigation: PTI
/sys/devices/system/cpu/vulnerabilities/spec_store_bypass:Vulnerable
/sys/devices/system/cpu/vulnerabilities/spectre_v1:Mitigation: __user pointer sanitization
/sys/devices/system/cpu/vulnerabilities/spectre_v2:Mitigation: Full generic retpoline, IBPB, IBRS_FW

Après la mise à jour :
$ dmesg | grep microcode
[    0.000000] microcode: microcode updated early to revision 0x2e, date = 2018-04-10
[    1.332247] microcode: sig=0x206a7, pf=0x2, revision=0x2e
[    1.332451] microcode: Microcode Update Driver: v2.2.
$ grep "" /sys/devices/system/cpu/vulnerabilities/*
/sys/devices/system/cpu/vulnerabilities/l1tf:Mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable
/sys/devices/system/cpu/vulnerabilities/meltdown:Mitigation: PTI
/sys/devices/system/cpu/vulnerabilities/spec_store_bypass:Mitigation: Speculative Store Bypass disabled via prctl and seccomp
/sys/devices/system/cpu/vulnerabilities/spectre_v1:Mitigation: __user pointer sanitization
/sys/devices/system/cpu/vulnerabilities/spectre_v2:Mitigation: Full generic retpoline, IBPB, IBRS_FW

Titre: Spectre et Meltdown: Grave problème de design des CPU Intel depuis 10ans
Posté par: vivien le 28 août 2018 à 09:37:28
Microsoft lui aussi mis à jour les microcode en publiant KB4100347 : Mises à jour de microcode de Intel

Il semble que certains PC n’apprécient pas la mise à jour des MicroCode :

Microsoft a publié en juillet dernier la mise à jour cumulative KB4100347 pour les PC sous Windows 10 April 2018 Update. Il semble que pour certains utilisateurs, son installation n’est pas sans risque. Elle peut empêcher l’ordinateur de démarrer.

KB4100347 est un correctif pour Windows 10 April 2018. Son contenu propose une atténuation contre la vulnérabilité Spectre Variant 2. Plusieurs rapports évoquent des PC défaillants après son installation. Ils ne sont plus en mesure démarrer correctement.

KB4100347 est apparu en juillet dernier mais Microsoft l’a remis en avant la semaine dernière. Son contenu n’a normalement pas changé aux regards de sa page KB. Elle n’a pas évoluée depuis son premier déploiement. Cette « nouvelle version » est cependant l’origine de soucis. Une fois installée, elle empêche certains systèmes de démarrer. Jusqu’à présent, aucune solution n’a été trouvée hormis sa suppression.
Windows 10 et KB4100347, système Intel seulement ?

Microsoft est silencieux sur les causes possibles du problème. Les différentes discutions de la communauté Windows avancent l’idée que cet Update a été tout simplement proposé par erreur sur ces PC. KB4100347 vise normalement que les configurations disposant d’un processeur Intel.  Certaines victimes fonctionnent sous en environnement AMD.

Il est encore difficile de déterminer combien de PC ont été touchés.


Source : GinjFO (https://www.ginjfo.com/actualites/logiciels/windows-10/windows-10-et-kb4100347-attention-certains-pc-ne-demarrent-plus-20180827), le 27 août 2018 par Jérôme Gianoli.
Titre: Spectre et Meltdown: Grave problème de design des CPU Intel depuis 10ans
Posté par: Optrolight le 28 août 2018 à 14:20:24
Il semblerait que les PC avec des proc AMD en souffre surtout. Bref il mauvaise publication de mise à jour.