Question:
Sur les boîtiers Windows, est-il nécessaire de patcher pour Spectre et Meltdown?
RockPaperLz- Mask it or Casket
2018-01-12 01:05:43 UTC
view on stackexchange narkive permalink

D'après ce que j'ai lu, Spectre et Meltdown nécessitent chacun un code non autorisé pour s'exécuter sur une boîte Windows pour que les attaques aient lieu. Le fait est qu'une fois qu'une boîte a un code non autorisé en cours d'exécution, il est déjà compromis .

Étant donné que les correctifs Microsoft pour Spectre et Meltdown auraient ralentir les systèmes patchés, il semble peut-être une bonne décision de laisser les systèmes Windows non corrigés au niveau du système d'exploitation.

En supposant que le code non autorisé n'est pas installé sur un Windows box, le seul point de pénétration facile d'un système semble être via javascript s'exécutant dans un navigateur Web. Pourtant, Firefox de Mozilla et Internet Explorer de Microsoft ont déjà été corrigés. Google Chrome n'est pas actuellement corrigé, mais il pourrait apparemment être exécuté en isolation stricte du site afin d'empêcher les attaques Sprectre et Meltdown réussies.

Compte tenu de tout ce qui précède (et en supposant les meilleures pratiques de ne pas exécuter de code inconnu), est-il vraiment logique de patcher Windows pour Spectre et Meltdown?

Windows est un système d'exploitation multi-utilisateurs.Si un utilisateur sans privilèges d'administrateur exécute un code non autorisé, ce code ne devrait pas être en mesure d'affecter ou de compromettre les autres utilisateurs.Mais Meltdown lui permet de le faire.L'exécution de code non autorisé dans l'espace utilisateur ne devrait _pas_ signifier que votre machine est complètement compromise, et si c'est le cas, c'est un trou qui doit être corrigé.
@MikeScott - Je dirais que Windows est très souvent une boîte à utilisateur unique, car elle est utilisée par exactement une personne.Pour une boîte strictement personnelle, je pense qu'il * pourrait * avoir du sens de * retarder * ces mises à jour jusqu'à ce que MS comprenne le désordre qu'ils en ont fait jusqu'à présent.Mon expérience personnelle est la suivante: 90% de ce que je fais sur mon ordinateur se fait via Firefox fonctionnant en mode utilisateur - si un exploit passe par FF, peu importe qu'il puisse tout lire.https://xkcd.com/1200/
@Martin - Cela ne peut pas être simplement une boîte personnelle.Il devrait s'agir d'une boîte personnelle où tout ce qui est confidentiel est accessible via et uniquement via un navigateur patché sans autre code non approuvé en cours d'exécution sur la machine.Selon ma réponse, il y a beaucoup plus de façons dont le code non fiable fonctionne que OP ne le croyait.
Gardez également à l'esprit que puisque les mises à jour Windows ne sont plus fournies sous forme de correctifs individuels, la seule façon de ne pas installer le correctif pour Meltdown et Spectre est d'arrêter complètement d'installer les correctifs.
Une amélioration générique de l'état d'esprit de * "devrions-nous appliquer ce patch?" * Le change en * "combien de temps devrions-nous retarder l'application de ce patch?" *.
Être capable d'exécuter du code sur une machine ne signifie pas qu'elle est compromise - l'application peut l'être et le compte mais pas la boîte.Si je trouve un RCE mais que la boîte est entièrement corrigée et exécute une liste blanche d'application stricte et que le compte est restreint / sandbox.Je n'ai pas compromis la boîte et je pourrais ne jamais éclater.
Je trouve amusant que les COÛTS de ces correctifs ne soient discutés qu'indirectement ici.Il y a une vague mention de l'extrême d'éteindre un ordinateur et de le verrouiller, ce qui n'est bien sûr pas une solution pratique, et tout le monde s'en rend compte.Mais appliquer un correctif qui réduit les performances de, disons, 15 pour cent (cela ne semble pas beaucoup, non?), C'est comme éteindre 1 ordinateur sur 7, n'est-ce pas?
Six réponses:
Hector
2018-01-12 01:40:49 UTC
view on stackexchange narkive permalink

le seul point de pénétration facile dans un système semble être via javascript exécuté dans un navigateur Web.

Et Flash? Java? Silverlight? VBA dans un document de bureau? Des applications qui chargent des pages Web à l'intérieur d'elles-mêmes?

Le fait est qu'une fois qu'une boîte a un code non autorisé en cours d'exécution, il est déjà compromis.

Avec du code sous votre compte utilisateur, beaucoup peut être fait. Mais compromis est un terme relatif. Vous ne pouvez pas par exemple installer un enregistreur de frappe de bas niveau. Les autorisations peuvent vous empêcher de lire l'espace mémoire d'autres applications même lorsqu'elles sont exécutées sous le même compte utilisateur. Et bien sûr, vous n'avez pas accès aux fichiers et aux processus exécutés sous d'autres comptes d'utilisateurs. Un utilisateur sur une machine d'entreprise ne pouvait pas détourner une autre session d'utilisateurs connectés.

Être capable de lire des valeurs de RAM arbitraires peut vous donner les jetons d'accès nécessaires pour vaincre tout cela.

L'exécution de code dans l'espace utilisateur (en compromettant un compte utilisateur) produit également de nombreuses preuves médico-légales dans les journaux d'audit.Obtenir des données du cache L1 du processeur via le canal latéral est pratiquement indétectable via le système d'exploitation ou d'autres routines de haute couche.
@void_in Ce n'est pas pratiquement indétectable.Il ** EST ** indétectable, et c'est pourquoi la faille de sécurité est si grave.Personne ne s'attendait à ce que ce soit un vecteur d'attaque.Il a fallu 20 ans pour le découvrir, et c'est un concept relativement simple.La faille de sécurité utilise quelque chose qui se produit constamment sur un ordinateur.Vous ne pouvez carrément pas détecter l'attaque.
@Nelson - la lecture de toute quantité utile de données générerait des nombres irréalistes de certains types d'interruptions.Ainsi, avec un profilage du système, vous seriez techniquement en mesure de le détecter - bien qu'à un coût de performance assez important.
@Hector Ce n'est pas forcément vrai.Il n'y a rien d'héritage à l'exploit qui nécessite que toute la formation spéculative et la lecture des données soient effectuées dans un court laps de temps.La clé est de savoir si les lectures spéculatives du processeur sont conservées pour certains fichiers qui sont exécutés à plusieurs reprises.Si tel est le cas, faites-le simplement fonctionner à un débit faible sur une longue période, en augmentant lentement la lecture de la mémoire jusqu'à ce que vous atteigniez les données nécessaires pour l'escalade d'accès, alors le système est compromis et personne n'est plus sage.
Les interruptions @Hector: ne sont pas techniquement nécessaires;ce n'est qu'une possibilité d'exploitation particulière.
Les plugins Flash ou Silverlight compilent-ils en JIT le code non approuvé dans leur bac à sable?Je n'ai pas entendu dire que les attaques Spectre étaient plausibles grâce à un code interprété;trop difficile à former le prédicteur de branche indirecte.La fusion est encore plus improbable;vous devez organiser quelque chose à essayer de charger à partir d'une adresse de noyau.Vous pouvez peut-être le faire via une spéculation erronée de certaines branches, mais c'est certainement beaucoup plus difficile lorsque vous ne pouvez pas exécuter de code machine arbitraire.Javascript n'a pas de pointeurs de type C que vous pouvez simplement définir sur les adresses du noyau ... Plausible à partir d'un sandbox JIT, mais interprété est trop de couches.
@PeterCordes Les deux utilisent JIT oui.Les scripts Silverlight sont essentiellement des .Net en sandbox - vous pouvez utiliser n'importe quel langage .Net.Quant à JavaScript, des preuves de concepts existent déjà et plusieurs éditeurs de navigateurs ont confirmé que leurs propres tests internes l'ont montré possible.
baldPrussian
2018-01-12 01:49:32 UTC
view on stackexchange narkive permalink

Dans mon monde, appliquer des correctifs est une évidence. Nous allons le faire et il faut une exception pour NE PAS appliquer de patch.

Pour le moment, ce sont des exploits que nous connaissons pour Spectre et Meltdown. Cependant, comment garantir qu'il n'y en aura pas davantage? De plus, de nombreux exploits (tels que Wannacry / Petya) impliquent des systèmes qui ne sont pas corrigés pour ce problème connu.

Je terminerais avec cette pensée: êtes-vous prêt à miser votre réputation professionnelle sur non appliquer un correctif connu pour corriger une vulnérabilité connue? Cela ne me semble pas être un pari judicieux. Imaginez dans votre entreprise si un logiciel malveillant basé sur l'un de ces deux éléments pénètre dans votre réseau. L'une des premières questions de la direction est: comment est-ce arrivé? Savions-nous que c'était possible? Existait-il des mesures de prévention et si oui, les avons-nous appliquées? J'ai fait l'objet de ces questions basées sur les décisions de la direction d'accepter un risque de sécurité et ce n'était pas un endroit confortable pour être.

Pour répondre à votre question: non, ce n'est pas nécessaire. Mais ne pas le faire, l'OMI, est irresponsable.

Je pense qu'un excellent exemple d'exception à la règle où la direction peut convenir que le risque de sécurité est acceptable: vous avez une date de livraison de produit dans 2 semaines, et le correctif de votre grille entraînera un ralentissement qui vous fera manquer la date limite.Comme l'a souligné baldPrussian, il s'agit d'une décision de gestion: ils doivent décider que la création de cette version est une meilleure valeur pour l'entreprise que la correction immédiate des machines.
@CortAmmon Dans ce cas, il peut être intéressant de laisser le gestionnaire de compte communiquer avec le client ce qu'il préfère: expédier à temps ou expédier avec le correctif X jours plus tard.C'est généralement la bonne chose à faire avec des exploits de cette ampleur (médiatique).
Vos réflexions finales me rappellent ce qui a `` causé '' la violation d'Equifax ... https://www.theregister.co.uk/2017/09/14/missed_patch_caused_equifax_data_breach/ - un correctif qui n'a pas été déployé.Je ne voudrais pas être cette personne responsable des correctifs.
@CortAmmon J'ai été dans plus d'une situation où quelque chose de bien moins critique mais toujours dangereux a pris la priorité sur des livraisons d'un million de dollars.Je n'ai jamais rencontré une seule entreprise cliente qui ne comprenait pas un retard dans cette situation;en fait, ils sont généralement très favorables.Je parie que cela a beaucoup à voir avec la façon dont le gestionnaire de compte gère le message.
Daniel Grover
2018-01-12 01:22:39 UTC
view on stackexchange narkive permalink

Oui, car il peut être utilisé pour l'élévation de privilèges. Habituellement, si une attaque compromet un hôte, ils n'ont que des privilèges d'utilisateur. Grâce à cette vulnérabilité, ils peuvent augmenter les privilèges en divulguant leurs informations d'identification. L'escalade de privilèges est importante pour les attaquants pour la réalisation de nombreuses attaques, telles que l'usurpation d'arp, le relais SMB / LDAP, le détournement de jetons, le vidage d'informations d'identification, etc.

Cort Ammon
2018-01-12 05:07:14 UTC
view on stackexchange narkive permalink

Installez les correctifs sauf si vous avez une très raison de ne pas le faire.

L'approche que vous décrivez peut se résumer comme suit:

Je connais l'exploit X. Je pourrais patcher mon système d'exploitation pour résoudre l'exploit X, ou je pourrais revoir attentivement chaque opération que je fais sur mon ordinateur (y compris les tâches de mise à jour automatisées effectuées pour moi). Si aucune de ces tâches ne présente de risque, alors je n'ai pas besoin d'installer le correctif.

Oui, en effet, votre logique est bonne. C'est la même logique qui dit "Un ordinateur qui est éteint et débranché est très résistant aux pirates." Cependant, cela vous demandera d'exister dans un état de vigilance continu. Chaque octet de code transféré sur votre ordinateur doit provenir d'une source fiable à 100%. Vous pouvez même fonctionner sur un réseau où cette logique est suffisamment solide. Mais vous ne l'êtes probablement pas, alors installez les correctifs. (Stuxnet peut être l'ultime exemple de ce qui se passe quand quelqu'un pense que son réseau n'est pas piratable)

Vous devrez rester dans cet état de vigilance continu pour toujours, ou du moins jusqu'à ce que vous vous atteliez et installiez les correctifs.

Comme Daniel Grover répond, considérez ceci comme un vecteur pour l'élévation de privilèges. La sécurité de nombreux systèmes dépend de l'hypothèse qu'un secret est, en fait, un secret. Meltdown / Spectre conteste cette hypothèse.

Lorsque ma direction me demande «comment devenir complètement sécurisé?», Ma réponse est «éteindre l'appareil, l'enfermer dans du béton, couper le cordon et l'enterrer quelque part dans un marais. C'est le seul moyen de devenir infaillible».La sécurité consiste à ralentir les attaquants et à faire en sorte que l'attaque ne vaille pas la récompense.
@baldPrussian J'ai entendu une citation similaire: "Le seul ordinateur vraiment sécurisé est éteint, débranché, enterré dans un bunker en béton avec des gardes armés postés à l'entrée. Même dans ce cas, je le vérifierais de temps en temps."
@CortAmmon Vous venez d'aider l'attaquant lors d'une attaque DoS sur votre ordinateur.
@NieDzejkob J'ai recommandé une analyse des risques pour bien décider des meilleures mesures de sécurité.La sécurité est toujours dans un équilibre.
@CortAmmon Je faisais référence au commentaire sur un bunker en béton.
@NieDzejkob Ahh je suis arrivé.J'ai raté ça.
David Richerby
2018-01-13 02:24:19 UTC
view on stackexchange narkive permalink

Sur les boîtiers Windows, est-ce que des correctifs pour Spectre et Meltdown sont nécessaires?

D'après ce que j'ai lu, Spectre et Meltdown nécessitent chacun un code non autorisé pour fonctionner sur une boîte Windows pour que les attaques aient lieu. Le fait est qu'une fois qu'une boîte a un code non autorisé en cours d'exécution, elle est déjà compromise.

Premièrement, cela ressemble beaucoup à ce que vous dites, pour éviter d'être piraté via Spectre ou Meltdown, vous devez juste éviter d'être piraté par quelque méthode que ce soit. Mais c'est une chose beaucoup plus difficile à faire!

Deuxièmement, comparez,

Dans une entreprise, est-il nécessaire de verrouiller le coffre-fort?

D'après ce que j'ai lu, voler des objets dans un coffre-fort nécessite qu'un voleur se trouve à l'intérieur du bâtiment. Le problème, c'est qu'une fois qu'un voleur est à l'intérieur du bâtiment, il est déjà compromis.

Bien sûr, mais en vous protégeant de certaines des choses que le voleur pourrait faire est toujours mieux que de lever les mains et de dire: "Eh bien, il est entré pour qu'il puisse tout prendre."

casey
2018-01-14 23:52:09 UTC
view on stackexchange narkive permalink

Le meilleur argument que j'ai vu pour les correctifs lorsqu'on me présente cette ligne de pensée est le suivant:

Détecter Spectre et Meltdown est très difficile et votre produit audiovisuel ne va pas arrêter ces attaques .

Ce sont des failles dans l'exécution spéculative du matériel (prédiction de branche, etc.). Votre processeur le fait toujours et la détection des utilisations malveillantes sera extrêmement difficile à faire. Toute la stratégie d'atténuation consiste donc à appliquer des correctifs, car la détection n'est pas envisageable.

Étant donné le nombre d'exploit PoC qui ont été développés et démontrés la semaine dernière (et juste à partir d'une idée de ce qu'étaient les bogues, avant la fin de l'embargo), je n'ai aucun doute sur le fait que des bogues existent.

Qui, sain d'esprit, installe des produits audiovisuels sur un serveur?!?
@StephanSchinkel - Beaucoup de gens sont tenus par la loi d'avoir AV sur un serveur.J'ai un AV sur chacun de mes serveurs et clients, Linux et Windows, et je dois mettre à jour les signatures chaque semaine.
@StephanSchinkel, vous n'avez peut-être pas d'AV, mais vous avez probablement un SOC faisant l'IDS, la surveillance, la gestion des terminaux, la journalisation, etc. Le point était que la détection de ces exploits sera difficile et ne vous sauvera pas.En dehors de cela, je n'ai pas vu où le OP a spécifié les serveurs, juste des «fenêtres».


Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 3.0 sous laquelle il est distribué.
Loading...