{"id":1001,"date":"2014-04-16T17:55:43","date_gmt":"2014-04-16T23:55:43","guid":{"rendered":"https:\/\/www.lastdragon.net\/?p=1001"},"modified":"2014-04-17T09:24:13","modified_gmt":"2014-04-17T15:24:13","slug":"el-amarillismo-sobre-heartbleed","status":"publish","type":"post","link":"https:\/\/www.lastdragon.net\/?p=1001","title":{"rendered":"El amarillismo sobre Heartbleed"},"content":{"rendered":"<p>Tengo varios d\u00edas leyendo un mont\u00f3n de cosas del bug Heartbleed, ciertamente es un bug y ciertamente es peligroso, pero no como para dejar de comprar en l\u00ednea o dejar de usar bancos en l\u00ednea.<\/p>\n<p>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\u00e1s hasta 64K. Suena como mucha informaci\u00f3n, si me pondr\u00eda a temblar si el sistema operativo fuera MS-DOS, pero no es as\u00ed. 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\u00e1s de basura en la RAM como una llave para descifrar un disco duro por poner un ejemplo, se convierte en una tarea tit\u00e1nica, es como intentar buscar una gota en una piscina. Es tener mucha suerte<\/p>\n<p>Una gota son 64K, la piscina los GIGAS y GIGAS que puede tener un servidor, eventualmente se podr\u00e1 extraer algo de informaci\u00f3n \u00fatil, pero ser\u00e1 muy poca e inconclusa, un servidor como un Google o un banco estar\u00eda 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\u00e1s probable encontrarse con basura o informaci\u00f3n de la propia sesi\u00f3n lo cual no importa porque es tu propia informaci\u00f3n.<\/p>\n<p>Si entiendes lo que escribir, podr\u00e1s ver lo obvio, es improbable que alguien obtenga informaci\u00f3n \u00fatil a partir de ah\u00ed <\/p>\n<p>Que podr\u00edan obtener que valga la pena.<\/p>\n<p>La clave de sesi\u00f3n para conexi\u00f3n a la base de datos, pero toda base de datos razonablemente bien configurada no permite conexiones de cualquier lugar y mucho menos est\u00e1 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\u00e1s usarlo desde la tierra.<\/p>\n<p>Informaci\u00f3n de tarjetas de cr\u00e9dito, es m\u00e1s probable que  veas tu propia informaci\u00f3n de tu tarjeta de cr\u00e9dito antes de que veas la de otra persona, si solo tienes un l\u00edmite de 64K de memoria RAM cercana, piensa que la mayor\u00eda de las p\u00e1ginas WEB mueven muchos archivos, reciben y transfieren cosas desde tu navegador muy probablemente un par de MEGAS de informaci\u00f3n, por cada p\u00e1gina WEB que visitas y puede ser aun mas si tiene AJAX, esto significa que la informaci\u00f3n pr\u00f3xima que ver\u00edas serian archivos que ya tienes en el CACHE de tu propia maquina o informaci\u00f3n que t\u00fa mismo enviaste en un formulario, dif\u00edcilmente veras la informaci\u00f3n de otra persona.<\/p>\n<p>Ahora como deber\u00eda ser Heartbleed para que de verdad diera miedo.<\/p>\n<p>Primero que en lugar de tener acceso a la memoria cercana de la sesi\u00f3n SSL tuvieras la oportunidad de acceder a un puntero, porque entonces podr\u00edas navegar entre toda la RAM donde el UID del proceso del navegador tiene derecho, podr\u00edas obtener un DUMP de toda la memoria con ese UID y ah\u00ed dentro encontrar\u00edas toda la informaci\u00f3n de otros usuarios.<\/p>\n<p>Podr\u00eda ser incluso peor hacer un DUMP a toda la RAM, pero ning\u00fan sistema operativo que se respete y cumpla con lo m\u00ednimo de posix tendr\u00eda este problema.<\/p>\n<p>Gracias a la protecci\u00f3n de memoria aunque tuvieran acceso a un puntero, jam\u00e1s podr\u00edan 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\u00f3n en p\u00e1ginas WEB casi siempre es con un UID diferente a ROOT as\u00ed que realmente el sistema del servidor nunca estar\u00eda comprometido.<\/p>\n<p>Otras cosas que dificultan tener acceso a informaci\u00f3n \u00fatil como claves que inician algo en el sistema vulnerable es que, estas claves est\u00e1n en los primeros 200 MB de RAM cuando el kernel inicia, ah\u00ed est\u00e1n las llaves para descifrar algo importante como montar un disco duro cifrado y el Heartbleed est\u00e1 varios GIGAS lejanos, incluso si pudiera entrar a la zona de memoria protegida equivaldr\u00eda a querer leer un pedazo de papel que est\u00e1 dentro de una casa con llave en M\u00e9xico mientras estas parado en Espa\u00f1a o alguna otra parte de Europa. Es una distancia enorme en RAM muy lejos de los 64K<\/p>\n<p>Dicho lo anterior Heartbleed es amarillismo puro. No digo que no sea una vulnerabilidad, pero tampoco es el Armaged\u00f3n del internet<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Tengo varios d\u00edas leyendo un mont\u00f3n de cosas del bug Heartbleed, ciertamente es un bug y ciertamente es peligroso, pero no como para dejar de comprar en l\u00ednea o dejar de usar bancos en l\u00ednea. El problema de Heartbleed es que da la oportunidad de atraer una cadena de caracteres fuera del rango de memoria&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-1001","post","type-post","status-publish","format-standard","hentry","category-hackers-and-tools"],"_links":{"self":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts\/1001","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1001"}],"version-history":[{"count":2,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts\/1001\/revisions"}],"predecessor-version":[{"id":1004,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts\/1001\/revisions\/1004"}],"wp:attachment":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1001"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1001"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1001"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}