herramienta detecta vulnerabilidades en Linux

Un investigador australiano, Silvio Cesare, ha desarrollado una herramienta que es capaz de encontrar vulnerabilidades en Linux de forma automática.


De acuerdo a sus estudios, los problemas y defectos que tienen las aplicaciones se deben en gran parte en la inseguridad de Internet. Él plantea que si se incorpora la detección de errores de forma temprana, desde la etapa de QA por ejemplo, se podría hacer que el software sea más seguro desde el comienzo.

En el modelo tradicional, para encontrar paquetes con fallos, es necesario señalar la reflexión de Hoare. Sumado a eso, se realiza un comprobación de modelado y un análisis estático. A su vez, actualmente, los desarrolladores normalmente hacen uso de código embebido de otros proyectos utilizando enlaces estáticos en vez de librerías externas. Eso significa que se mantiene una copia interna del código de la librería.

El problema, es que este comportamiento no es fomentado por las políticas de utilización de paquetes de Linux, ya que más de dos versiones de una librería necesitan subsistir mantenidas de forma adecuada. Las librerías viejas además, suelen tener fallos de seguridad.

Este problema afecta a más de 10 mil paquetes en varias distribuciones de Linux. De forma manual, en Debian por ejemplo, se puede localizar más de 400 paquetes, sin embargo en otras distribuciones no se rastrean paquetes en absoluto.

Entonces, se propone localizar estos paquetes embebidos en forma automática y de paso, crear un algoritmo que pueda inferir vulnerabilidades en el sistema. Para eso, se divide la problemática en tres partes:

    * Determinar si un paquete A está embebido en un paquete B.
    * Encontrar partes de los paquetes que compartan código.
    * A través de las relaciones entre los paquetes, inferir posibles vulnerabilidades.

El enfoque planteado para solucionarlo consta de las siguientes premisas:

    * Si un paquete tiene el nombre de otros paquetes como subconjunto, entonces se puede invadir que está embebido.
    * Paquetes que comparten archivos están vinculados.
    * Paquetes que comparten código también comparten sus vulnerabilidades y, además, paquetes equivalentes en varias distros, también comparten vulnerabilidades.

Para aquellos que les interese el proceso en mayor detalle, pueden recurrir a la página web de Silvio Cesare, en donde se encuentran sus publicaciones para desembocar libremente.

Es importante resaltar que, a pesar de que su herramienta produce algunos resultados incorrectos, la prontitud con que automatiza la búsqueda es a nivel de segundos lo que hace que esta aplicación sea aún mucho más efectiva que los métodos manuales.

un saludo

Fuentes de Información

El contenido del post es de mi autoría, y/o, es un recopilación de distintas fuentes.

foocodechu | State-of-the-art security

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *