{"id":27515,"date":"2022-08-22T11:44:09","date_gmt":"2022-08-22T09:44:09","guid":{"rendered":"https:\/\/www.kaspersky.es\/blog\/?p=27515"},"modified":"2022-08-22T11:44:09","modified_gmt":"2022-08-22T09:44:09","slug":"retbleed-vulnerability","status":"publish","type":"post","link":"https:\/\/www.kaspersky.es\/blog\/retbleed-vulnerability\/27515\/","title":{"rendered":"Ataque Retbleed: Spectre contraataca"},"content":{"rendered":"<p>A mediados de julio, unos investigadores de la Escuela Polit\u00e9cnica Federal de Z\u00farich <a href=\"https:\/\/comsec.ethz.ch\/research\/microarch\/retbleed\/\" target=\"_blank\" rel=\"noopener nofollow\">publicaron<\/a> un estudio que describe un nuevo ataque que aprovecha las vulnerabilidades (o caracter\u00edsticas) de los procesadores modernos. El ataque se denomin\u00f3 Retbleed y es un derivado de <a href=\"https:\/\/support.google.com\/faqs\/answer\/7625886?hl=es\" target=\"_blank\" rel=\"noopener nofollow\">Retpoline<\/a>, un m\u00e9todo de defensa contra un tipo de ataque de Spectre. B\u00e1sicamente, los autores demostraron que su t\u00e9cnica de compilaci\u00f3n de programas, que anteriormente se cre\u00eda que ofrec\u00eda una protecci\u00f3n eficaz contra el conocido ataque Spectre Variant 2, no funciona o solo funciona de forma ocasional. La investigaci\u00f3n es bastante compleja, como ocurre en todos los anteriores estudios sobre vulnerabilidades de <em>hardware <\/em>en procesadores. \u00a0En este art\u00edculo, como siempre, intentaremos no profundizar en la complejidad de los art\u00edculos cient\u00edficos m\u00e1s relevantes, sino describir los resultados de forma sencilla. Comencemos con algunos datos para ponernos en contexto:<\/p>\n<h2>\u00bfQu\u00e9 es Spectre v2? Hablemos de la predicci\u00f3n de ramificaci\u00f3n<\/h2>\n<p>Hace m\u00e1s de cuatro a\u00f1os, a principios de 2018, se publicaron dos trabajos de investigaci\u00f3n que <a href=\"https:\/\/meltdownattack.com\/\" target=\"_blank\" rel=\"noopener nofollow\">describ\u00edan<\/a> las vulnerabilidades de Spectre y Meltdown. Estas son vulnerabilidades de <em>hardware<\/em>: la forma en la que funcionan los procesadores hace posible un ataque de robo de datos potencial. Desde entonces, se han descubierto <a href=\"https:\/\/www.kaspersky.es\/blog\/spectre-meltdown-in-practice\/26793\/\" target=\"_blank\" rel=\"noopener\">diversas<\/a> variantes m\u00e1s de Spectre. Los investigadores han encontrado m\u00e1s formas de atacar una clase de vulnerabilidades comunes; es decir, usar para el ataque la funcionalidad predeterminada del procesador llamada \u201cpredicci\u00f3n de ramificaci\u00f3n\u201d.<\/p>\n<p>La predicci\u00f3n de ramificaci\u00f3n y la ejecuci\u00f3n especulativa de instrucciones ayudan a mejorar significativamente el rendimiento del procesador. En cualquier programa, la ejecuci\u00f3n de pasos posteriores suele depender del resultado de c\u00e1lculos previos. El ejemplo m\u00e1s sencillo es cuando un usuario introduce una contrase\u00f1a para acceder a informaci\u00f3n confidencial. Si la contrase\u00f1a es correcta, los datos se muestran al usuario. Si la contrase\u00f1a es incorrecta, se solicita al usuario que lo intente de nuevo. Con instrucciones simples para la CPU, esto se traduce b\u00e1sicamente en verificar los derechos de acceso a ciertos datos en la RAM: si se confirman los derechos necesarios, se otorga acceso a los datos; si no, el acceso queda denegado.<\/p>\n<p>El procesador puede realizar millones de operaciones de este tipo por segundo, y mientras se verifica una determinada condici\u00f3n, suele estar inactivo (en t\u00e9rminos generales, esperando a que un usuario introduzca una contrase\u00f1a o que se verifiquen los derechos de acceso). Pero \u00bfy si hacemos que utilice este tiempo de inactividad para realizar por adelantado los c\u00e1lculos que se realizan tras el resultado m\u00e1s probable de la verificaci\u00f3n? Cuando nuestro hipot\u00e9tico usuario introduzca su contrase\u00f1a hipot\u00e9tica, el resultado del c\u00e1lculo estar\u00e1 listo y el usuario podr\u00e1 ver sus datos confidenciales un poco m\u00e1s r\u00e1pido.<\/p>\n<p>Pero \u00bfc\u00f3mo saber qu\u00e9 parte del c\u00f3digo es m\u00e1s probable que se ejecute? Mediante estad\u00edsticas relacionadas con ejecuciones anteriores de instrucciones similares, por supuesto. Si nuestro usuario introduce la contrase\u00f1a correcta nueve de cada 10 veces (hay que tener en cuenta que este es un ejemplo te\u00f3rico y muy simplificado), podemos preparar sus datos confidenciales con antelaci\u00f3n. Si la contrase\u00f1a es incorrecta, simplemente descartaremos los resultados y tardaremos un poco m\u00e1s en mostrar un mensaje de error.<\/p>\n<p>Los autores del art\u00edculo de 2018 describieron dos variantes del ataque de Spectre, y la Variante 2 (conocida tambi\u00e9n como Inyecci\u00f3n de destino de rama) entrena a un predictor de ramificaci\u00f3n para que realice las instrucciones que necesitamos, como leer datos a los que un atacante no deber\u00eda tener acceso. S\u00ed, estos c\u00e1lculos luego se descartan, pero su resultado (los datos extremadamente confidenciales) se almacenan temporalmente en la cach\u00e9, donde pueden ser robados.<\/p>\n<p>Este es un ataque extremadamente complejo. En primer lugar, el atacante debe poder ejecutar c\u00f3digo en el sistema atacado, aunque sin los privilegios deseados, es decir, sin acceso a datos confidenciales. Por ejemplo, se podr\u00eda persuadir a un usuario para que abra en su navegador una p\u00e1gina web que contenga un <em>script <\/em>malicioso. En segundo lugar, el atacante necesita un <em>software<\/em> en el sistema de destino que incluya un c\u00f3digo id\u00f3neo para el ataque. En la jerga de los investigadores, esto se conoce como \u201cgadget\u201d. El c\u00f3digo de ataque entrena al sistema de predicci\u00f3n de ramificaci\u00f3n para ejecutar especulativamente este dispositivo. Esto hace que acceda a un \u00e1rea de memoria inaccesible para el atacante. Los datos confidenciales se colocan en la cach\u00e9 de la CPU, donde se pueden extraer muy lentamente (no m\u00e1s de decenas de bits por segundo) mediante la lectura del canal lateral.<\/p>\n<p>Tratemos de explicarlo de una forma a\u00fan m\u00e1s sencilla. El sistema de predicci\u00f3n de ramificaci\u00f3n incorporado en el procesador no separa las instrucciones de diferentes programas, y se puede usar un \u00fanico programa para hacer que el procesador ejecute especulativamente una instrucci\u00f3n que se supone que no debe ejecutar. Anteriormente, esto no parec\u00eda ser un problema, ya que el <em>software<\/em> no puede acceder en ning\u00fan caso directamente a los datos en la cach\u00e9 del procesador. Pero resulta que, se pueden extraer los datos mediante la lectura de canales laterales (que es un mecanismo muy complejo: la reconstrucci\u00f3n de datos bas\u00e1ndose \u00fanicamente en la informaci\u00f3n sobre la velocidad de las respuestas a las solicitudes de lectura).<\/p>\n<h2>Espera, Spectre fue descubierto en 2018. Seguramente ya lo hayan parcheado, \u00bfno?<\/h2>\n<p>Con las vulnerabilidades de <em>hardware<\/em> no es tan sencillo. En primer lugar, incluso si nos centramos en esta descripci\u00f3n simplificada, est\u00e1 claro que la vulnerabilidad, aunque est\u00e9 definitivamente basada en el <em>hardware<\/em>, requiere que coincidan ciertas condiciones en el <em>software <\/em>para que pueda ser explotada. Si ese es el caso, \u00bfpor qu\u00e9 no parchear el <em>software<\/em>? Esto es mucho m\u00e1s sencillo que actualizar el <em>hardware<\/em>. Tambi\u00e9n es posible reparar parcialmente la vulnerabilidad en los procesadores mediante actualizaciones de microc\u00f3digo. Pero solo puede encontrarse una soluci\u00f3n definitiva al problema con el lanzamiento de nuevos procesadores con <em>hardware <\/em>modificado. Mientras tanto, los viejos siguen siendo total o parcialmente vulnerables.<\/p>\n<p>Hay otra pregunta que es extremadamente importante en el contexto de la investigaci\u00f3n de Retbleed. \u00bfCu\u00e1l ser\u00eda el coste de un parche de <em>software<\/em> o <em>hardware<\/em>? Cada m\u00e9todo para \u201ccerrar\u201d Spectre reduce el rendimiento. Por ejemplo, el bastante obvio sistema de Especulaci\u00f3n restringida de rama indirecta (IBRS) introduce verificaciones adicionales de permisos durante la ejecuci\u00f3n de c\u00f3digo especulativo y evita que los programas con m\u00ednimos privilegios accedan a datos altamente confidenciales, haciendo imposible un ataque de Spectre. Pero con cientos de miles o millones de verificaciones de este tipo, el rendimiento de la CPU tiende a disminuir. \u00bfPero cu\u00e1nto? Hay investigaciones que <a href=\"https:\/\/www.phoronix.com\/review\/3-years-specmelt\" target=\"_blank\" rel=\"noopener nofollow\">demuestran<\/a> que un conjunto diverso de parches para Spectre en un sistema provoc\u00f3 una disminuci\u00f3n del rendimiento de hasta un 25 %.<\/p>\n<p>Y aqu\u00ed es donde viene <a href=\"https:\/\/support.google.com\/faqs\/answer\/7625886?hl=es\" target=\"_blank\" rel=\"noopener nofollow\">Retpoline<\/a>, un m\u00e9todo de protecci\u00f3n contra Spectre relativamente sencillo propuesto por los ingenieros de Google que se ha utilizado durante la compilaci\u00f3n de <em>software<\/em>. Como sugieren los autores del m\u00e9todo, reemplazar algunas instrucciones por otras en situaciones t\u00edpicas de ramificaci\u00f3n no afecta a la operatividad del <em>software<\/em>, pero s\u00ed hace imposible un ataque de Spectre. Una ventaja importante de Retpoline frente a IBRS y otros m\u00e9todos de protecci\u00f3n es tan solo un ligero descenso de no m\u00e1s del 5 % del rendimiento.<\/p>\n<h2>\u00bfQu\u00e9 muestra el estudio de Retbleed?<\/h2>\n<p>B\u00e1sicamente, esta nueva investigaci\u00f3n ha demostrado que Retpoline\u2026 \u00a1no funciona! Las instrucciones de retorno en las que se bas\u00f3 el m\u00e9todo Retpoline tambi\u00e9n podr\u00edan explotarse en un esquema ligeramente modificado para enga\u00f1ar (o entrenar maliciosamente) al predictor de ramificaci\u00f3n. Los autores han grabado incluso un v\u00eddeo demostrando el ataque:<\/p>\n<p style=\"margin-bottom: 0\"><span class=\"embed-youtube\" style=\"text-align:center; display: block;\"><iframe class=\"youtube-player\" type=\"text\/html\" width=\"640\" height=\"390\" src=\"https:\/\/www.youtube.com\/embed\/dmSPvJxPm80?version=3&amp;rel=1&amp;fs=1&amp;showsearch=0&amp;showinfo=1&amp;iv_load_policy=1&amp;wmode=transparent\" frameborder=\"0\" allowfullscreen=\"true\"><\/iframe><\/span><\/p>\n<p style=\"text-align: center\">Una demostraci\u00f3n de ataque de Retbleed en un sistema basado en Linux.<\/p>\n<p>El v\u00eddeo muestra c\u00f3mo un programa que no tiene acceso a dichos datos roba una contrase\u00f1a de superusuario cifrada. Hay que tener en cuenta que el v\u00eddeo est\u00e1 muy acelerado: en tiempo real, \u00a1el robo de la contrase\u00f1a en un sistema basado en Intel lleva al menos una hora y media! Los resultados se resumen en la siguiente tabla:<\/p>\n<div id=\"attachment_27516\" style=\"width: 1921px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-27516\" class=\"wp-image-27516 size-full\" src=\"https:\/\/media.kasperskydaily.com\/wp-content\/uploads\/sites\/88\/2022\/08\/22114100\/retbleed-vulnerability-table.jpg\" alt=\"Lista resumida de procesadores probados ante la posibilidad de un ataque de Retbleed con la protecci\u00f3n Retpoline activada.\" width=\"1911\" height=\"480\"><p id=\"caption-attachment-27516\" class=\"wp-caption-text\">Lista resumida de procesadores probados ante la posibilidad de un ataque de Retbleed con la protecci\u00f3n Retpoline activada. <a href=\"https:\/\/comsec.ethz.ch\/wp-content\/files\/retbleed_sec22.pdf\" target=\"_blank\" rel=\"noopener nofollow\">Fuente<\/a><\/p><\/div>\n<p>Como muestra la tabla, los procesadores AMD Zen 1 y Zen 2 (2017\u20132019) y Kaby Lake y Coffee Lake de Intel (2016\u20132017), que no son completamente nuevos, pero est\u00e1n actualizados, son propensos a un ataque de Retbleed. En los procesadores AMD Zen 3 m\u00e1s modernos y en Intel Alder Lake y los procesadores anteriores de novena generaci\u00f3n, no funciona un ataque de Retbleed. Esto tambi\u00e9n se debe a la implementaci\u00f3n de la protecci\u00f3n de <em>hardware<\/em> IBRS mejorado en los procesadores Intel.<\/p>\n<h2>Coste de la protecci\u00f3n<\/h2>\n<p>Si es tan dif\u00edcil llevar a cabo un ataque de Spectre, \u00bfpor qu\u00e9 defenderse de \u00e9l? Es verdad que para aplicar Spectre a un caso del mundo real (con da\u00f1o real a las v\u00edctimas), se deben cumplir muchas condiciones: ser capaz de ejecutar c\u00f3digo en el sistema atacado, tener instalado un <em>software <\/em>propenso a ataques y extraer datos de forma fiable de la cach\u00e9 (con bastante probabilidad de una lectura con errores). Anteriormente, <a href=\"https:\/\/www.kaspersky.es\/blog\/spectre-meltdown-in-practice\/26793\/\" target=\"_blank\" rel=\"noopener\">comentamos<\/a> que el ataque m\u00e1s realista se simul\u00f3 en un navegador Chrome del que un potencial atacante podr\u00eda, por ejemplo, extraer contrase\u00f1as guardadas en la RAM. Pero esto se resolvi\u00f3 con una sencilla mejora de la protecci\u00f3n en el propio navegador, como ocurre con cualquier otro peque\u00f1o error.<\/p>\n<p>Podr\u00eda ocurrir que el progreso en la investigaci\u00f3n de vulnerabilidades similares a Spectre alg\u00fan d\u00eda lleve de forma inesperada a posibilitar un ataque masivo en los ordenadores y servidores de los usuarios. Pero, si hablamos de proteger datos realmente confidenciales, Spectre debe tenerse en cuenta a d\u00eda de hoy.<\/p>\n<p>La situaci\u00f3n m\u00e1s probable es un ataque a trav\u00e9s de proveedores de <em>hosting<\/em> y computaci\u00f3n distribuida. Un servidor virtual t\u00edpico que se puede alquilar por una cantidad de dinero razonable a trav\u00e9s de cualquier proveedor es esencialmente un programa que se ejecuta junto a los sistemas operativos virtuales de otros clientes en el mismo servidor de alta potencia. Un suscriptor de servidor virtual puede, por definici\u00f3n, ejecutar programas en \u00e9l, pero no tiene privilegios para acceder a sus vecinos o al <em>host<\/em>, es decir, el sistema operativo de control. La separaci\u00f3n de los entornos virtuales y la imposibilidad de escapar de su espacio virtual es un requisito de seguridad clave para dichos proveedores de servicios.<\/p>\n<p>A su vez, los proveedores de servicios est\u00e1n interesados \u200b\u200ben tener tantos sistemas virtuales ejecut\u00e1ndose en el mismo servidor como sea posible sin que surjan problemas entre ellos. Esta es la clave para la recuperaci\u00f3n m\u00e1s temprana del <em>hardware<\/em> m\u00e1s costoso. Dicho esto, todos los parches de Spectre (que realmente funcionan) reducen el rendimiento y, por lo tanto, reducen los ingresos del ISP. Pero los proveedores tampoco pueden ignorar el problema, \u00a1porque el robo exitoso de datos confidenciales ni siquiera deja rastro!<\/p>\n<p>Entonces, cuando se propuso Retpoline, muchos lo tomaron como un salvavidas para luchar contra el nuevo problema. Pero, en enero de 2018, surgieron dudas sobre la fiabilidad de este m\u00e9todo de defensa. <a href=\"https:\/\/lkml.org\/lkml\/2018\/1\/22\/598\" target=\"_blank\" rel=\"noopener nofollow\">Una discusi\u00f3n<\/a> sobre la lista de correo de los desarrolladores del kernel de Linux muestra una serie de quejas sobre Retpoline (el autor tampoco se deshace en halagos al tratar otros m\u00e9todos). Al mismo tiempo, Linus Torvalds, el creador y principal guardi\u00e1n de Linux, <a href=\"https:\/\/lkml.org\/lkml\/2018\/1\/21\/192\" target=\"_blank\" rel=\"noopener nofollow\">dej\u00f3 claro<\/a> (con el tono tajante que le caracteriza) que Retpoline es en general suficiente.<\/p>\n<p>Los autores de Retbleed critican la forma sentenciosa en la que Torvalds coloca su rotunda cita al comienzo del art\u00edculo. Ellos tambi\u00e9n calcularon el \u201ccoste\u201d de la protecci\u00f3n en el mundo real para los procesadores vulnerables que no se pueden reparar a nivel de <em>hardware<\/em>. Los parches en el kernel de Linux han producido ca\u00eddas de rendimiento de hasta un 39 % en los procesadores Intel y un 14 % en los procesadores AMD.<\/p>\n<p>Los procesadores AMD resultaron ser vulnerables a su manera, y los investigadores descubrieron un fen\u00f3meno que llamaron \u201cPhantom JMPs\u201d. Result\u00f3 que, bajo ciertas condiciones, es posible hacer que un sistema de predicci\u00f3n de ramificaci\u00f3n ejecute una instrucci\u00f3n arbitraria incluso aunque no se encuentre en el c\u00f3digo atacado. Como consecuencia de ello, los autores tuvieron que publicar un breve <a href=\"https:\/\/comsec.ethz.ch\/wp-content\/files\/retbleed_addendum_sec22.pdf\" target=\"_blank\" rel=\"noopener nofollow\">anexo<\/a> de una p\u00e1gina al estudio. Sin embargo, estipulan que explotar esta vulnerabilidad para causar da\u00f1os reales es a\u00fan m\u00e1s dif\u00edcil que con el Spectre V2 tradicional.<\/p>\n<h2>\u00bfY ahora qu\u00e9?<\/h2>\n<p>Para el com\u00fan de los usuarios, la amenaza de los ataques de Spectre sigue siendo completamente virtual y ser\u00e1 suficiente con aplicar los parches preventivos de los desarrolladores de sistemas operativos. Por cierto, en Windows, la protecci\u00f3n IBRS efectiva est\u00e1 habilitada de forma predeterminada. Es posible que los nuevos parches del kernel de Linux provoquen una disminuci\u00f3n del rendimiento que puede ser m\u00e1s perceptible en las soluciones empresariales en las que el <em>hardware<\/em> del dispositivo se exprime al l\u00edmite.<\/p>\n<p>El problema se complica por el hecho de existir un gran n\u00famero de variantes de Spectre. Retbleed tambi\u00e9n podr\u00eda considerarse una variante separada, que funciona de una forma distinta en procesadores de diferentes fabricantes. AMD e Intel han reconocido a Retbleed como una vulnerabilidad separada y es probable que propongan una soluci\u00f3n de <em>hardware<\/em> para ella. Las empresas cambiar\u00e1n a un nuevo <em>hardware<\/em> donde se implementen medidas de protecci\u00f3n, encontrando un equilibrio entre rendimiento y seguridad. Por desgracia, todos los parches de <em>software<\/em> tienen un mayor impacto en el rendimiento de los procesadores relativamente antiguos. Con el tiempo, no solo el <em>software<\/em> requiere una mayor exigencia, sino que tambi\u00e9n existe esta \u201cpenalizaci\u00f3n\u201d en la ejecuci\u00f3n especulativa.<\/p>\n<p>Si se mira el problema con perspectiva, no se trata de nada nuevo. Los desarrolladores ofrecen una soluci\u00f3n para mejorar el rendimiento sin pensar en la seguridad. Tarde o temprano (tarde en este caso, ya que la ejecuci\u00f3n especulativa comenz\u00f3 a mediados de la d\u00e9cada de los a\u00f1os 90), vuelve para atormentarnos a todos, y las medidas de seguridad tienen un coste, pero con el tiempo se encuentran nuevas soluciones y la industria de alta tecnolog\u00eda sigue adelante.<\/p>\n<p>La sorpresa fue el descubrimiento del problema en el <em>hardware<\/em>, algo que no es tan f\u00e1cil de solucionar como en el <em>software<\/em>. Y esto no es un simple error, sino un enfoque deficiente (desde la perspectiva de la seguridad) adoptado por la industria hace muchos a\u00f1os. Esperemos que los desarrolladores de procesadores encuentren nuevos m\u00e9todos para ofrecer una inform\u00e1tica segura y potente antes de que la amenaza de un ataque de <em>hardware<\/em> extremadamente peligroso caiga sobre nosotros, un peligro que nos amenaza a todos, es ya conocido y solo puede resolverse reemplazando el <em>hardware<\/em> por completo.<\/p>\n<input type=\"hidden\" class=\"category_for_banner\" value=\"mdr\">\n<p>\u00a0<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Examinamos el coste de la seguridad usando como ejemplo un estudio reciente sobre vulnerabilidades de hardware en los procesadores.<\/p>\n","protected":false},"author":665,"featured_media":27517,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[2202,2754],"tags":[2500,784],"class_list":{"0":"post-27515","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-business","8":"category-enterprise","9":"tag-spectre","10":"tag-vulnerabilidades"},"hreflang":[{"hreflang":"es","url":"https:\/\/www.kaspersky.es\/blog\/retbleed-vulnerability\/27515\/"},{"hreflang":"en-in","url":"https:\/\/www.kaspersky.co.in\/blog\/retbleed-vulnerability\/24459\/"},{"hreflang":"en-ae","url":"https:\/\/me-en.kaspersky.com\/blog\/retbleed-vulnerability\/19925\/"},{"hreflang":"en-us","url":"https:\/\/usa.kaspersky.com\/blog\/retbleed-vulnerability\/26903\/"},{"hreflang":"en-gb","url":"https:\/\/www.kaspersky.co.uk\/blog\/retbleed-vulnerability\/24808\/"},{"hreflang":"ru","url":"https:\/\/www.kaspersky.ru\/blog\/retbleed-vulnerability\/33847\/"},{"hreflang":"tr","url":"https:\/\/www.kaspersky.com.tr\/blog\/retbleed-vulnerability\/10936\/"},{"hreflang":"x-default","url":"https:\/\/www.kaspersky.com\/blog\/retbleed-vulnerability\/45155\/"},{"hreflang":"fr","url":"https:\/\/www.kaspersky.fr\/blog\/retbleed-vulnerability\/19298\/"},{"hreflang":"de","url":"https:\/\/www.kaspersky.de\/blog\/retbleed-vulnerability\/29163\/"},{"hreflang":"ru-kz","url":"https:\/\/blog.kaspersky.kz\/retbleed-vulnerability\/25346\/"},{"hreflang":"en-au","url":"https:\/\/www.kaspersky.com.au\/blog\/retbleed-vulnerability\/30864\/"},{"hreflang":"en-za","url":"https:\/\/www.kaspersky.co.za\/blog\/retbleed-vulnerability\/30572\/"}],"acf":[],"banners":"","maintag":{"url":"https:\/\/www.kaspersky.es\/blog\/tag\/vulnerabilidades\/","name":"vulnerabilidades"},"_links":{"self":[{"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/posts\/27515","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/users\/665"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/comments?post=27515"}],"version-history":[{"count":2,"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/posts\/27515\/revisions"}],"predecessor-version":[{"id":27519,"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/posts\/27515\/revisions\/27519"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/media\/27517"}],"wp:attachment":[{"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/media?parent=27515"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/categories?post=27515"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/tags?post=27515"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}