Extensiones ISA

El conjunto de instrucciones de la arquitectura Intel (ISA) continúa evolucionando y creciendo en funcionalidad, enriqueciendo la experiencia del usuario, y creando sinergia entre las industrias.

Intel® Memory Protection Extensions (Intel® MPX)

Los sistemas PC sufren ataques maliciosos de creciente sofisticación y una de las formas más comúnmente observadas es causar o explotar el uso excesivo del búfer (o desbordamientos) en aplicaciones de software.

Intel® MPX es un nombre para las Intel® Architecture extensions diseñadas para incrementar la robustez del software. Este proporcionará características de hardware que se pueden utilizar en conjunto con los cambios en el compilador para comprobar que las referencias de la memoria destinadas al momento de la compilación no se conviertan en un peligro durante la ejecución. Dos de los objetivos más importantes son proporcionar esta capacidad sin impactar el código recientemente compilado y proporcionar mecanismos de compatibilidad con componentes de software legados. Intel® MPX estará disponible en un futuro procesador Intel®.

How to Protect Apps from Buffer Overflow Attacks Learn how to enhance security for software on Windows® 10 using Intel® Memory Protection Extensions.
Storing and loading bounds
Intel® Memory Protection Extensions Enabling Guide This document describes Intel® Memory Protection Extensions (Intel® MPX), its motivation, and programming model. It also describes the enabling requirements and the current status of enabling in the supported OSs: Linux* and Windows* and compilers: Intel® C++ Compiler, GCC, and Visual C++*. Finally...
Exposing Processor Features to Dynamic Languages Intel® for its part invests countless hours and billions of transistors to add features in our silicon products which will speed up people's lives. If only they knew how to take advantage of it! Part of our job in dynamic languages is what I call "putting the cookies on the bottom shelf". Make this...
Pointer Checker in ICC: requires dynamic linking of runtime libraries
10/07/14
The -check-pointers switch, which enables the Pointer Checker feature available in Intel® Parallel Studio XE 2016, cannot be used with the -static flag on Linux* (/MT on Windows*) which forces all Intel libraries to be linked statically. The reason is that, by design, the Pointer Checker library “...
Using Intel® SDE's chip-check feature Intel® SDE includes a software validation mechanism to restrict executed instructions to a particular microprocessor. This is intended to be a helpful diagnostic tool for use when deploying new software. Use chip check when you want to make sure that your program is not using instruction features...
Using Intel® MPX with the Intel® Software Development Emulator Intel has announced a new technology called Intel® Memory Protection Extensions (Intel® MPX). To find out more, check out the Instruction Set Extensions web pages.  Once you know about Intel MPX, you may want to experiment with Intel® SDE. This article explains how to run Intel MPX with Intel SDE...
Intel® Memory Protection Extensions (Intel® MPX) Design Considerations   My very first exposure to buffer overflow was with Morris worm in 80’s and since then, we collectively have tried to get a good handle on buffer overflow as it impacts both security and robustness of C/C++ software. Needless to say, we have made significant progress with addressing buffer...
Intel® Memory Protection Extensions (Intel® MPX) Runtime Support Enabling an application to use Intel MPX will generally not require source code updates but there is some runtime code needed in order to make use of Intel MPX.  For most applications this runtime support will be available by linking to a library supplied by the compiler or possibly it will come...
Intel® Memory Protection Extensions (Intel® MPX) support in the GNU toolchain Invalid memory access problem is commonly found in many C/C++ programs and leads to time consuming debugging, program instability and vulnerability. Many attacks exploit software bugs related to inappropriate memory accesses caused by buffer overflow (or buffer overruns). Existing set of...