Científicos de la Universidad de Cambridge, Ross Anderson y Nicholas Boucher, han publicado información sobre el concepto de ataque de origen troyano (CVE-2021-42574), que se puede utilizar para inyectar código malicioso en aplicaciones legítimas a través de campos de comentarios. El exploit PoC ya está disponible en GitHub.
El ataque se basa en el uso de caracteres de control bidireccionales en los comentarios del código fuente.. tales personajes, conocido como BiDi (“bidireccional”), son caracteres de control Unicode que se utilizan dentro de una cadena de texto para señalar la transición de LTR (de izquierda a derecha) a RTL (De derecha a izquierda) modo y viceversa.
En la práctica, Estos caracteres se utilizan exclusivamente para aplicaciones de software y son invisibles para los humanos., ya que sólo se utilizan para incrustar texto con una dirección de lectura diferente en grandes bloques de texto (por ejemplo, para insertar líneas en árabe o hebreo).
Los investigadores han descubierto que la mayoría de los compiladores y editores de código no tienen protocolos para manejar símbolos BiDi o señalar su presencia en los comentarios fuente..
Según los expertos, Los atacantes pueden insertar caracteres de control BiDi en comentarios que la gente no puede ver., y al compilar, moverán el texto del campo de comentarios al código ejecutable o moverán el código en los comentarios, exponiendo así las aplicaciones a ataques y eludiendo los controles de seguridad.
Además de los compiladores, varios editores de código y servicios de hosting, como se indica en la siguiente tabla, También se informa que se ven afectados..
Además, según los expertos, Los compiladores de código fuente son vulnerables a otro problema. (CVE-2021-42694) relacionado con homoglifos. Durante tales ataques, Las letras latinas clásicas se reemplazan con caracteres similares de otros alfabetos..
Los investigadores escriben que el segundo ataque se puede utilizar para crear dos funciones diferentes que parecen iguales al ojo humano pero que en realidad son diferentes.. Anderson y Boucher afirman que de esta manera, un atacante puede agregar de forma encubierta código malicioso a un proyecto.
Los investigadores resumen que los compiladores y editores deben detectar caracteres de control bidireccionales y homoglifos y asegurarse de comunicarlos a las personas.. Hasta ahora, sin embargo, solo los desarrolladores detrás del compilador oficial de Rust han liberado la actualización.
Déjame recordarte que yo también escribí eso. Experto hackeado 70% de redes Wi-Fi en Tel Aviv para investigación.