Flux RSS - La vie du site - Nouveautés et mises à jour
Assiste.com - Sécurité informatique - Vie privée sur le Web - Neutralité d'Internet Assiste.com - Sécurité informatique - Vie privée sur le Web - Neutralité d'Internet

Principe d'anticipation

En informatique, les « principes d'anticipation » sont des mécanismes accélérateurs, essentiellement mis en œuvre avec des dispositifs appelés « cache », chaque fois qu'une méthode plus rapide peut se substituer, temporairement, à une mécanique plus lente qui vient d'être utilisée une première fois et risque d'être réutilisée.

28.01.2023 : Pierre Pinard.

En informatique, les « principes d'anticipation » sont des mécanismes accélérateurs, essentiellement mis en oeuvre avec des dispositifs appelés « caches ». Il s'agit de chercher une accélération de quelque chose, parfois par la prédiction, simultanément à une diminution de la consommation des ressources.

Plusieurs termes sont des synonymes : « mémoire cache », « antémémoire », « mémoire prédictive », « mémoire d'anticipation » et tout un panel d'anglicismes.

D'autres mécanismes, comme le « prefetch » ou les « mémoires tampon (buffers) », dont les « caches disques », participent des « principes d'anticipation ».

Les « listes hosts », consultées très tôt lors de la « résolution de noms de domaines » pour vérifier s'il y a intention de blocage d'accès à un « domaine » ou intention de diriger vers une « adresse IP » précise, prédéfinie, participent, sans que ce soit leur finalité, des « principes d'anticipation ».

Voir l'article et le dossier « Cache ».

  • Il y a des « Caches » matériel dans les processeurs, les cartes graphiques, les disques durs (ce sont plutôt des « buffers »), les interfaces, etc.

  • Il y a un « Cache DNS » dont les données (la résolution d'un nom de domaine en son adresse IP) ont une persistance (une durée de vie appelée TTL [Time To Live]) de 24 heures (résolutions réussies conservées durant les dernières 24 heures [86.400 secondes] ou échouées durant les 5 dernières minutes [300 dernières secondes]).

  • Il y a un « Cache DNS » dans chaque navigateur Web, dont les données ont une persistance de quelques secondes à quelques minutes.

  • Il y a un « Cache » dans chaque logiciel qui utilise un flux continu (les lecteurs de médias). VLC, par exemple, comporte un « Cache » dont la taille est paramétrable (intéressant pour le streaming, par exemple).

Note : un « cache » n'a rien à voir avec quelque chose de « caché ».

Parmi les failles de sécurité des processeurs Intel et AMD (alertes au jour le jour sur nos forums), certaines sont liées à des anticipations mal ou pas maitrisées (1ère alerte de ce type le 04.01.2018).

Les processeurs modernes intègrent plusieurs fonctionnalités visant à améliorer leurs performances. Parmi celles-ci, l'exécution dite out-of-order permet d'exécuter les instructions d'un programme en fonction de la disponibilité des ressources de calculs et plus nécessairement de façon séquentielle. Une faiblesse de ce mécanisme peut cependant conduire à l'exécution d'une instruction sans que le niveau de privilèges requis par celle-ci ne soit correctement vérifié (niveau de privilège de l'utilisateur). Bien que le résultat de l'exécution d'une telle instruction ne soit pas validé par la suite, il peut être possible de récupérer l'information en utilisant une attaque par canaux cachés.

L'exécution spéculative est une seconde technique d'optimisation utilisée par les processeurs modernes. Les dépendances entre les instructions limitent les possibilités d'exécution out-of-order (hors du cycle). Pour remédier à cette limitation, le processeur émet des hypothèses concernant les résultats non encore disponibles. Ceci lui permet de poursuivre l'exécution out-of-order en utilisant ces hypothèses en remplacement des résultats attendus. On parle alors d'exécution spéculative. Ces hypothèses sont vérifiées par le processeur dès que les résultats auxquels elles se rapportent deviennent disponibles. Si elles se révèlent correctes, le processeur valide l'exécution spéculative. Mais inversement, si elles se révèlent erronées, les effets de l'exécution spéculative doivent être annulés et l'exécution doit reprendre au point on les hypothèses erronées avaient été émises, c'est-à-dire là où l'exécution spéculative avait débutée.

Cependant les effets d'une exécution spéculative erronée sur le cache perdurent. Or, en mesurant des temps d'accès à des zones mémoires, il est possible de connaître l'état du cache. Par conséquent, un attaquant sera capable de déterminer les résultats intermédiaires d'une exécution spéculative erronée si ceux-ci influent sur l'état du cache. Cette utilisation du cache pour mener à bien l'exploitation est commune aux trois variantes du Cryptoransomware Spectre.

Principe d'anticipation - Risques et failles par les exécutions spéculatives # # # # # # # # # # # # # # # # # # # # # # # # # # #

Dossier (collection) : Caches, caches DNS, anticipation et accélération

Notions et principes
Principes d'anticipation
Notion de cache et principe d'accélération
Antémémoire
Antémémoire (« Cache memory »)
Mémoire cache
Mémoire prédictive
Mémoire d'anticipation
Schéma de principe - résolution noms de domaine
ETag (Entity Tag - HTTP ETag - balise-entité ETag HTTP)

Ce ne sont pas des caches
Les « caches disques » ne sont pas des « caches »
Disque dur - Gestion des « caches d'écriture différée »
La mémoire virtuelle (fichier PageFile.sys) de Windows n'est pas un cache

Les caches DNS des systèmes d'exploitation
Cache DNS - Qu'est-ce que c'est
TTL - Durée de vie des données mises en cache DNS

Comment voir le contenu du cache DNS de Windows - invite de commande
Comment voir le contenu du cache DNS de Windows - Application graphique gratuite DNSDataView

Comment vider le cache DNS de Windows
Comment vider le cache DNS de Linux
Comment vider le cache DNS de MAC OS X

Les caches DNS des navigateurs Web
Comment vider le cache DNS de Firefox
Comment vider le cache DNS de Google Chrome

Les caches des navigateurs Web
Cache des navigateurs Web (ajustement et vider)
Vider le cache d'Internet Explorer 7
Vider le cache d'Internet Explorer 8
Vider le cache d'Internet Explorer 9
Vider le cache d'Internet Explorer 10
Vider le cache d'Internet Explorer 11
Vider le cache de Firefox
Vider le cache d'Opera 11
Vider le cache d'Opera 12
Vider le cache d'Opera 15
Vider le cache de Google Chrome
Vider le cache de Safari pour Windows

Accélérateur de Windows : le Prefetch - ne jamais y toucher
Prefetch (mécanisme accélérateur dans Windows)
Prefetcher
Prefetching
Windows Prefetching
Prefetch et Windows
Application Prefetching
Paging memory system
Hard page fault intensive scenarios

Cas d'usages du nettoyage des caches
Accélérer Windows et le PC
Procéder à une décontamination


Dossier (collection) : Hosts, DNS et Web

Hosts et DNS
Hosts et DNS - Schéma de principe
Hosts et DNS - Un peu d'histoire
Naissance du World Wide Web
Nom de domaine

Fichier Hosts - Qu'est-ce que c'est ? Où ?
Hosts
Hosts : Où se trouve le fichier Hosts
Comment restaurer un fichier hosts corrompu
Où trouver des listes Hosts toutes faites
HostsMan (pour importer des listes dans hosts)

DNS - Qu'est-ce que c'est ? Où ?
DNS
Qu'est-ce qu'un serveur DNS
DNS - Les Kits de connection des FAI
DNS - Pourquoi changer de DNS
DNS - Comment changer de DNS
Liste des DNS des FAI français (et quelques autres)
Comment changer de DNS pour utiliser ceux de Cloudflare
Comment changer de DNS pour utiliser les DNS de Google ?
Comment changer de DNS pour utiliser les DNS d'OpenDNS ?
Comment changer de DNS pour utiliser les DNS de la FDN ?
Comment vider les caches des navigateurs ?
NameBench - Trouver des DNS rapide

Cache DNS du Système d'exploitation
Cache DNS - Qu'est-ce que c'est
Cache DNS - Voir le cache - Invite commande
Cache DNS - Voir le cache - DNSDataView
Cache DNS - Vider le cache DNS Windows
Cache DNS - Vider le cache DNS Linux
Cache DNS - Vider le cache DNS MAC OS X

Cache DNS des navigateurs Web
Cache DNS des navigateurs Web - Qu'est-ce que c'est ?
Cache DNS - Vider le cache DNS Firefox
Cache DNS - Vider le cache DNS de MS IE
Cache DNS - Vider le cache DNS de MS EDGE
Cache DNS - Vider le cache DNS Opera
Cache DNS - Vider le cache DNS Chrome
Cache DNS - Vider le cache DNS Safari

Web Réputation et listes de blocage
Domaine dans la listes hosts hphosts
Domaine dans les listes noires (blacklists)
Domaine de confiance ?
Catégorisation des sites dans une liste hosts

Trucs à DNS
Trucs à DNS 1 (Whois et IP-Whois)
Trucs à DNS 2 (Historiques, Ping, DNS...)
Trucs à DNS 3 (DNSView - Lecture du cache DNS)

Attaques des DNS et autres corruptions
Attaque en Pharming (corruption de hosts)

Logiciels serveur DNS
Liste des logiciels serveur DNS
Surveillance en temps réel des pannes des serveurs DNS