Exec Shield

Exec Shield

Exec Shield

Exec Shield es un proyecto realizado por Red Hat, Inc. en 2002 con el objetivo de reducir el riesgo de gusanos u otros ataques automatizados en sistemas Linux. El primer resultado del proyecto fue un parche de seguridad para el núcleo Linux que emula el bit NX en máquinas x86, las cuales no disponen de una implementación nativa de NX en su hardware. Aunque el proyecto Exec Shield tiene muchos otros componentes, algunas personas se refieren al primera parche como Exec Shield.

El primer parche de Exec Shield añadía una opción a la zona de memoria de datos como no ejecutable y a la zona de memoria del programa como no escribible. Esto elimina mucho de los exploits, como aquellos provenientes de desbordamientos de buffers y otras técnicas eficaces en la sobrescritura de datos y la inserción de código en dichas estructuras. Exec Shield también proporciona aleatorización del espacio de direcciones para mmap () y la base del montículo (heap).

Además, este parche incrementa la dificultad de insertar y ejecutar shellcodes, haciendo que la mayoría de exploits no sean efectivos. Ninguna recompilación de las aplicaciones es necesaria para poder usar completamente Exec Shield, aunque algunas aplicaciones (Mono, Wine, XEmacs) no son del todo compatibles.

Otras características que están fuera del proyecto Exec Shield son los Ejecutables con Posición Independiente (PIE), el parche de aleatorización del espacio de direcciones para los núcleos Linux, un amplio conjunto de comprobaciones internas de seguridad para glibc que hacen que los exploits del montículo y de formato de cadenas sean casi imposibles, la característica GCC Fortify Source, y la adaptación y unión de GCC stack-protector.

Contenido

Implementación

Exec Shield funciona en todas las máquinas x86 que usan límites del segmento de código. Gracias a la manera en que Exec Shield funciona, es muy ligero; sin embargo, no protegerá totalmente distribuciones arbitrarias de la memoria virtual. Si el límite del segmento de código (CS) es superado, por ejemplo llamando a mprotect() para aumentar la memoria ejecutable, entonces las protecciones se pierden por debajo de ese límite. Ingo Molnar advirtió de esto en una conversación de corre electrónico. Afortunadamente, la mayoría de las aplicaciones son seguras ya que la pila (que es la parte más importante) no se convierte en ejecutable a menos que la aplicación realice algunas llamadas explícitas.

Por Agosto de 2004, nada del proyecto Exec Shield trataba de forzar protecciones de la memoria restringiendo mprotect() en cualquier arquitectura; aunque la memoria no se debería iniciar siendo ejecutable, podía ser ejecutable más tarde, de modo que el núcleo permitirá a una aplicación marcar las páginas de la memoria como escribibles y ejecutables a la vez. Sin embargo, en cooperación con el proyecto SELinux (Security Enhanced Linux), la política estándar de la distribución Fedora Core prohíbe este comportamiento para la mayoría de los ejecutables, con algunas excepciones por razones de compatibilidad.

Historia

Exec Shield fue desarrollado por varias personas de Red Hat; el primer parche fue realizado por Ingo Molnar de Red Hat y la primera versión apareció en Mayo de 2003. Forma parte de Fedora Core desde la versión 1 a la 6 y de Red Hat Enterprise Linux desde la versión 3 (Update 3) hasta la 4.[1] [2] Otros desarrolladores involucrados en el proyecto son Jakub Jelínek, Ulrich Drepper, Richard Henderson, Arjan van de Ven.

Véase también

Referencias

  1. «Fedora Core 1 Release Notes». Red Hat, Inc. (11-2003). Archivado desde el original, el 02-12-2003. Consultado el 18-10-2007.
  2. van de Ven, Arjan (08-2004). «New Security Enhancements in Red Hat Enterprise Linux v.3, update 3» (PDF). Red Hat, Inc.. Archivado desde el original, el 12-05-2005. Consultado el 18-10-2007.

Enlaces externos

Obtenido de "Exec Shield"

Wikimedia foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Mira otros diccionarios:

  • Exec Shield — is a project started at Red Hat, Inc in late 2002 with the aim of reducing the risk of worm or other automated remote attacks on Linux systems. The first result of the project was a security patch for the Linux kernel that emulates an NX bit on… …   Wikipedia

  • Exec Shield — est un projet démarré à la fin 2002 visant à reduire le risque des attaques automatiques à distance sur des systèmes Linux. Le premier resultat a été un patch de sécurité pour le noyau Linux émulant le bit NX sur les processeurs x86. Il a été… …   Wikipédia en Français

  • Exec — may refer to:* Exec, short for executive officer * Exec, an operating system function for running a program * Exec (Amiga), the OS kernel of Amiga computers * EXEC, an interpreted command procedure control language for IBM s VM/CMS operating… …   Wikipedia

  • ExecShield — Exec Shield Exec Shield est un projet démarré à la fin 2002 visant à reduire le risque des attaques automatiques à distance sur des systèmes Linux. Le premier resultat a été un patch de sécurité pour le noyau Linux émulant le bit NX sur les… …   Wikipédia en Français

  • NX bit — The NX bit, which stands for No eXecute, is a technology used in CPUs to segregate areas of memory for use by either storage of processor instructions (or code) or for storage of data, a feature normally only found in Harvard architecture… …   Wikipedia

  • Executable space protection — In computer security, executable space protection is the marking of memory regions as non executable, such that an attempt to execute machine code in these regions will cause an exception. It makes use of hardware features such as the NX bit.The… …   Wikipedia

  • PaX — In computer security, PaX is a patch for the Linux kernel that implements least privilege protections for memory pages. The least privilege approach allows computer programs to do only what they have to do in order to be able to execute properly …   Wikipedia

  • W^X — (prononcé W xor X ) est le nom d une fonctionnalité dédiée à la sécurité informatique présente dans le système d exploitation OpenBSD. C est une forme de protection de la mémoire avec laquelle une page peut être accessible en écriture, ou en… …   Wikipédia en Français

  • Buffer overflow — In computer security and programming, a buffer overflow, or buffer overrun, is an anomalous condition where a process attempts to store data beyond the boundaries of a fixed length buffer. The result is that the extra data overwrites adjacent… …   Wikipedia

  • Position-independent code — In computing, position independent code (PIC) or position independent executable (PIE) is machine instruction code that executes properly regardless of where in memory it resides. PIC is commonly used for shared libraries, so that the same… …   Wikipedia

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”