CWE-119
Restricción Incorrecta de Operaciones dentro de los Límites de un Búfer de Memoria
Acerca de
El producto realiza operaciones sobre un búfer de memoria, pero lee o escribe en una ubicación de memoria fuera del límite previsto del búfer. Esto puede resultar en operaciones de lectura o escritura en ubicaciones de memoria inesperadas que podrían estar vinculadas a otras variables, estructuras de datos o datos internos del programa.
Consecuencias comunes
- Integridad, Confidencialidad, Disponibilidad → Ejecutar Código o Comandos No Autorizados, Modificar Memoria
- Disponibilidad, Confidencialidad → Leer Memoria, DoS: Fallo, Salida o Reinicio, DoS: Consumo de Recursos (CPU), DoS: Consumo de Recursos (Memoria)
- Confidencialidad → Leer Memoria
Mitigaciones
- Requisitos: Utilice un lenguaje que no permita que esta debilidad ocurra o que proporcione construcciones que faciliten evitarla. Por ejemplo, muchos lenguajes que realizan su propia gestión de memoria, como Java y Perl, no están sujetos a desbordamientos de búfer. Otros lenguajes, como Ada y C#, típicamente proporcionan protección contra desbordamiento, pero la protección puede ser deshabilitada
- Arquitectura y Diseño: Utilice una biblioteca o framework verificado que no permita que esta debilidad ocurra o que proporcione construcciones que faciliten evitarla. Los ejemplos incluyen la Safe C String Library (SafeStr) de Messier y Viega [REF-57], y la biblioteca Strsafe.h de Microsoft [REF-56]. Estas bibliotecas proporcionan versiones más seguras de las funciones de manejo de cadenas propens
- Operación, Compilación: Utilice mecanismos automáticos de detección de desbordamiento de búfer ofrecidos por ciertos compiladores o extensiones de compilador. Los ejemplos incluyen: el flag /GS de Microsoft Visual Studio, el flag FORTIFY_SOURCE de GCC de Fedora/Red Hat, StackGuard y ProPolice, que proporcionan diversos mecanismos incluyendo detección basada en canarios y verificación de rango/índi
- Implementación: Considere adherirse a las siguientes reglas al asignar y gestionar la memoria de una aplicación: - Verifique dos veces que el búfer sea tan grande como se especifica. - Al usar funciones que aceptan un número de bytes a copiar, como strncpy(), tenga en cuenta que si el tamaño del búfer de destino es igual al tamaño del búfer de origen, es posible que no termine la cadena con NULL.
- Operación, Compilación: Ejecute o compile el software usando características o extensiones que dispongan aleatoriamente las posiciones del ejecutable de un programa y sus bibliotecas en memoria. Debido a que esto hace que las direcciones sean impredecibles, puede impedir que un atacante salte de manera confiable a código explotable. Los ejemplos incluyen Address Space Layout Randomization (ASLR) [
- Operación: Utilice una CPU y un sistema operativo que ofrezcan Data Execution Protection (usando bits NX o XD de hardware) o las técnicas equivalentes que simulan esta característica por software, como PaX [REF-60] [REF-61]. Estas técnicas garantizan que cualquier instrucción ejecutada esté exclusivamente en una dirección de memoria que forme parte del segmento de código. Para más información sobr
CVEs con esta debilidad
Preguntas frecuentes
¿Qué es CWE-119?
El producto realiza operaciones sobre un búfer de memoria, pero lee o escribe en una ubicación de memoria fuera del límite previsto del búfer. Esto puede resultar en operaciones de lectura o escritura en ubicaciones de memoria inesperadas que podrían estar vinculadas a otras variables, estructuras de datos o datos internos del programa.
¿Qué probabilidad hay de que CWE-119 sea explotada?
MITRE califica la probabilidad de explotación de CWE-119 como high.
¿Qué plataformas afecta CWE-119?
CWE-119 se ha observado en: Memory-Unsafe, C, C++, Assembly, Not Technology-Specific.
¿Cuántas CVE rastrea Rainforest para CWE-119?
Rainforest Labs rastrea actualmente 1 CVE publicadas asociadas a CWE-119. Están listadas en esta página.
Potencia tu estrategia de seguridad con Rainforest
Descubre vulnerabilidades a tiempo, prioriza amenazas críticas y protege lo que realmente importa. Rainforest simplifica tus operaciones de seguridad, ahorrando tiempo y reduciendo costos, para que te enfoques en lo que impulsa tu negocio.
