• [^] # Re: Encore un journal imbitable

    Posté par . En réponse au journal Supervisor Mode Execution Protection. Évalué à 6.

    Traduction: chaque page mémoire est marquée avec différents tags dont le plus récemment introduit (sur architecture x86) est le bit NX.
    Les tags sont en général R, W, X : la page est accessible en lecture, en écriture, ou en exécution.
    AMD a introduit le bit NX sur architecture x86 afin que les noyaux puissent rendre diverses zones mémoire non exécutable pour éviter certaines attaques (nom marketing : protection matérielle contre les virus). L'idée est qu'une page accessible en écriture ne soit pas exécutable, afin qu'un attaquant ne puisse pas insérer directement son code : toute donnée écrite par un programme n'est que des données, pas du code du programme lui-même.

    Cette saine pratique empêche également celle, malsaine en terme de sécurité, du code auto-modifiant (malsaine également pour les performances, les processeurs n'ayant pas dans l'idée que le code puisse être modifié, le cache instruction écronomise de la logique). La rumeur voudrait que ce soit cette raison qui ait rendu l'implémentation du bit NX tardive sous windows (à cause de Microsoft Office, pour les macros).