El amarillismo sobre Heartbleed

Tengo varios días leyendo un montón de cosas del bug Heartbleed, ciertamente es un bug y ciertamente es peligroso, pero no como para dejar de comprar en línea o dejar de usar bancos en línea.

El problema de Heartbleed es que da la oportunidad de atraer una cadena de caracteres fuera del rango de memoria esperado, si se esperan 4 bytes de una palabra de 4 como HOLA , los sitios afectados por Heartbleed pueden pedir más hasta 64K. Suena como mucha información, si me pondría a temblar si el sistema operativo fuera MS-DOS, pero no es así. En realidad es un ataque de suerte porque son 64K entre las gigas de RAM que puede llegar a tener un servidor, para encontrar algo interesante además de basura en la RAM como una llave para descifrar un disco duro por poner un ejemplo, se convierte en una tarea titánica, es como intentar buscar una gota en una piscina. Es tener mucha suerte

Una gota son 64K, la piscina los GIGAS y GIGAS que puede tener un servidor, eventualmente se podrá extraer algo de información útil, pero será muy poca e inconclusa, un servidor como un Google o un banco estaría sobre escribiendo y corrompiendo la RAM tan pronto como esta se deje de usar por atender lecturas de archivos y otras conexiones de red, es más probable encontrarse con basura o información de la propia sesión lo cual no importa porque es tu propia información.

Si entiendes lo que escribir, podrás ver lo obvio, es improbable que alguien obtenga información útil a partir de ahí

Que podrían obtener que valga la pena.

La clave de sesión para conexión a la base de datos, pero toda base de datos razonablemente bien configurada no permite conexiones de cualquier lugar y mucho menos está expuesta a internet, tener la clave para un servicio que no puedes tocar es como tener un extintor que puede apagar el sol, pero nunca podrás usarlo desde la tierra.

Información de tarjetas de crédito, es más probable que veas tu propia información de tu tarjeta de crédito antes de que veas la de otra persona, si solo tienes un límite de 64K de memoria RAM cercana, piensa que la mayoría de las páginas WEB mueven muchos archivos, reciben y transfieren cosas desde tu navegador muy probablemente un par de MEGAS de información, por cada página WEB que visitas y puede ser aun mas si tiene AJAX, esto significa que la información próxima que verías serian archivos que ya tienes en el CACHE de tu propia maquina o información que tú mismo enviaste en un formulario, difícilmente veras la información de otra persona.

Ahora como debería ser Heartbleed para que de verdad diera miedo.

Primero que en lugar de tener acceso a la memoria cercana de la sesión SSL tuvieras la oportunidad de acceder a un puntero, porque entonces podrías navegar entre toda la RAM donde el UID del proceso del navegador tiene derecho, podrías obtener un DUMP de toda la memoria con ese UID y ahí dentro encontrarías toda la información de otros usuarios.

Podría ser incluso peor hacer un DUMP a toda la RAM, pero ningún sistema operativo que se respete y cumpla con lo mínimo de posix tendría este problema.

Gracias a la protección de memoria aunque tuvieran acceso a un puntero, jamás podrían llegar a ver las llaves para descifrar un disco duro porque normalmente esa parte de la RAM solo tiene acceso el UID 0 o sea ROOT pero la sesión en páginas WEB casi siempre es con un UID diferente a ROOT así que realmente el sistema del servidor nunca estaría comprometido.

Otras cosas que dificultan tener acceso a información útil como claves que inician algo en el sistema vulnerable es que, estas claves están en los primeros 200 MB de RAM cuando el kernel inicia, ahí están las llaves para descifrar algo importante como montar un disco duro cifrado y el Heartbleed está varios GIGAS lejanos, incluso si pudiera entrar a la zona de memoria protegida equivaldría a querer leer un pedazo de papel que está dentro de una casa con llave en México mientras estas parado en España o alguna otra parte de Europa. Es una distancia enorme en RAM muy lejos de los 64K

Dicho lo anterior Heartbleed es amarillismo puro. No digo que no sea una vulnerabilidad, pero tampoco es el Armagedón del internet

5 Comments

Add a Comment

Comment spam protected by SpamBam