
(adsbygoogle = window.adsbygoogle || []).push({});
Hace pocos dias investigadores de la Universidad de Cambridge dieron a conocer la publicación de una técnica para sustituir sutilmente códigos maliciosos en el código fuente de aplicaciones.
El método de ataque preparado que ya es catalogado bajo CVE-2021-42574 se presenta con el nombre Trojan Source y se basa en la formación de texto que se ve diferente al compilador/intérprete y la persona que ve el código.
(adsbygoogle = window.adsbygoogle || []).push({});
Sobre Trojan Source
El método se basa en la aplicación de caracteres Unicode especiales en los comentarios del código, que cambian el orden de visualización del texto bidireccional. Con la ayuda de estos caracteres de control, algunas partes del texto se pueden mostrar de izquierda a derecha, mientras que otras, de derecha a izquierda.
En la práctica diaria, estos caracteres de control se pueden utilizar, por ejemplo, para insertar cadenas en hebreo o árabe en un archivo con código. Sin embargo, si usa estos caracteres para combinar líneas con diferentes direcciones de texto en la misma línea, los pasajes de texto que se muestran de derecha a izquierda pueden superponerse al texto normal existente que se muestra de izquierda a derecha.
Con este método, se puede agregar una construcción maliciosa al código, pero luego hacer que el texto con esta construcción sea invisible al ver el código, agregando los caracteres que se muestran de derecha a izquierda en el siguiente comentario o dentro del literal, lo que resultará en un resultado completamente diferentes caracteres superpuestos a la inserción maliciosa. Dicho código seguirá siendo semánticamente correcto, pero se interpretará y mostrará de manera diferente.
(adsbygoogle = window.adsbygoogle || []).push({});
Hemos descubierto formas de manipular la codificación de archivos de código fuente para que los espectadores y compiladores humanos vean una lógica diferente. Un método particularmente pernicioso utiliza caracteres de anulación de direccionalidad Unicode para mostrar el código como un anagrama de su verdadera lógica. Hemos verificado que este ataque funciona contra C, C ++, C #, JavaScript, Java, Rust, Go y Python, y sospechamos que funcionará contra la mayoría de los otros lenguajes modernos.
Mientras revisa el código, el desarrollador se enfrentará al orden visual de los caracteres y verá un comentario sospechoso en un editor de texto, interfaz web o IDE, pero el compilador y el intérprete utilizarán el orden lógico de los caracteres y manejarán el código malicioso como está, independientemente del texto bidireccional en el comentario. Varios editores de código populares (VS Code, Emacs, Atom), así como interfaces para ver código en repositorios (GitHub, Gitlab, BitBucket y todos los productos de Atlassian) se ven afectados.
Hay varias formas de utilizar el método para implementar acciones maliciosas: agregar una expresión oculta «return», que conduce a la terminación de la ejecución de la función antes de tiempo; la conclusión en el comentario de expresiones que normalmente se consideran construcciones válidas (por ejemplo, para deshabilitar comprobaciones importantes); asignación de otros valores de cadena que conducen a fallas de validación de cadena.
Además, se propuso otra opción de ataque (CVE-2021-42694), que implica el uso de homoglyphs, símbolos que parecen similares en apariencia, pero difieren en significado y tienen diferentes códigos Unicode. Estos caracteres se pueden utilizar en algunos idiomas en los nombres de funciones y variables para engañar a los desarrolladores. Por ejemplo, se pueden definir dos funciones con nombres indistinguibles que realizan diferentes acciones. Sin un análisis detallado, no puede comprender de inmediato cuál de estas dos funciones se llama en un lugar en particular.
Como medida de protección, se recomienda implementar en compiladores, intérpretes y herramientas de ensamblaje que admitan caracteres Unicode, mostrando un error o advertencia si hay caracteres de control no apareados en comentarios, literales de cadena o identificadores que cambian la dirección de salida. Estos caracteres también deben prohibirse explícitamente en las especificaciones de los lenguajes de programación y deben tenerse en cuenta en los editores de código y las interfaces para trabajar con repositorios.
(adsbygoogle = window.adsbygoogle || []).push({});
Ademas de que ya se han comenzado a solucionar las vulnerabilidades preparadas para GCC, LLVM/Clang, Rust, Go, Python y binutils. GitHub, Bitbucket y Jira y tambien ya están en preparación de una solución junto con GitLab.
Finalmente si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.
from Linux Adictos https://ift.tt/3q8fXb0
via IFTTT




RusBITech-Astra dio a conocer hace poco la liberación de la nueva versión de Astra Linux Special Edition 1.7, que tal y como muchos de ustedes sabrán, Astra Linux cuenta con diferentes versiones de las cuales algunas son utilizadas en dependencias del gobierno Ruso, pero para el uso de propósito general. Como tal la distribucion se ha vuelto bastante popular y cuenta con diversas soluciones tanto para dispositivos móviles como para el escritorio.
Teniendo en cuenta que la Raspberry Pi tiene un SoC ARM, encontrar el sistema operativo perfecto para ella no es una tarea sencilla. Está Raspberry Pi OS, antes Raspbian, pero está basado en Debian y el software no está muy al día. Otros sistemas como Manjaro se actualizan más pronto, pero, por ejemplo, para ver contenido DRM hay que instalar un contenedor especial de Chromium que no ofrece la mejor de las calidades. Twister OS se acerca a esa perfección, ya que tiene instalado RetroPie y WINE por defecto, pero PINN nos ofrece algo mejor: el multiboot.
