Español | English
rss facebook linkedin Twitter

Audits de Nessus

Bandolier es un proyecto de investigación de Digital Bond que documenta las configuraciones óptimas de seguridad para los componentes de aplicación del sistema de control, y tras ello programa estas configuraciones en "audits" que se pueden usar por herramientas de seguridad como por ejemplo Nessus, que es un programa de escaneo de vulnerabilidades en diversos sistemas operativos.


El proyecto Bandolier básicamente permite verificar que el sistema tiene una configuración de seguridad óptima tanto para el sistema operativo como para la configuración de seguridad de las aplicaciones. Tenable Network Security con organizaciones como el NIST y el centro para la seguridad en internet (CIS) ha desarrollado los mejores "compliance checks" (cumplimiento de verificaciones) para distintos sistemas operativos (Windows 2003 y XP, Linux, Unix, Red Hat, Solaris...) y aplicaciones IT como bases de datos (SQL server 2005, MySQL, Oracle 9-10) y servidores web (recomendaciones OWASP para PHP). Bandolier utiliza el mismo concepto para desarrollar archivos, salvo que lo hace especialmente para aplicaciones (configuración de firewall), del sistema de control, que residen en plataformas *nix y Windows.

No debemos confundirnos entre los compliance checks y los escáneres de vulnerabilidades, para Nessus hay una diferencia importante entre ambas. Los escáneres de vulnerabilidades se basan en un conjunto de firmas de "sucesos malos" que hacen que cualquier equipo sea vulnerable a algún suceso, en cambio los "compliance checks" comparan un sistema con "sucesos buenos"
para que la configuración sea más segura. Un ejemplo de dicha diferencia es el método de determninar que servicios están en funcionamiento en un equipo de trabajo o servidor. El escaner de vulnerabilidades manda un paquete a cada puerto TCP y UDP y evalúa la respuesta para determinar que puerto está abierto. Este simple escaner de los puertos ha causado que numerosas aplicaciones del sistema de control fallen. El compliance check se conecta al equipo o servidor como administrador autenticado, logra un lista de servicios en funcionamiento y devuelve la información via la conexión de administrador. De esta manera no "cruje" la aplicación.

A continuación se muestran varios ejemplos de audits:

custom_item>
type: SERVICE_POLICY
description: "Verify that the SCADA Control service is set to automatic"
value_type: SERVICE_SET
value_data: "Automatic"
service_name: "SCADAControlService"
/item>


Este audit verifica si un servicio de control SCADA está configurado en automático. El siguiente audit chequea que la longitud mínima de una contraseña sea de 8 caracteres.

item>
name: "Minimum password length"
value: [8..MAX]
/item>


Existen varios tipos de audits, acabamos de ver dos ejemplos, pero hay muchísimos más como por ejemplo saber si un antivirus está instalado o no, comprobación de contraseñas y logs, comprobar historiales de los navegadores, documentos clasificados, audits basados en las plantillas de seguridad de Microsoft...
Estos audits para Nessus pueden ser muy útiles para nuestro laboratorio SCADA, como por ejemplo la comprobación de contraseñas y logs. Conociendo el lenguaje para programarlos podemos pensar en eventos que puedan ser interesantes para el estudio en nuestro laboratorio SCADA, desarrollarlos y ponerlos en prueba.

Además de todo ello, Digital Bond desarrolla constantemente para Tenable nuevos plugins y soporte que nos pueden ayudar en nuestra tarea.

Iker Berriozabal
S21Sec labs

(+34 902 222 521)


24 horas / 7 días a la semana



© Copyright S21sec 2013 - Todos los derechos reservados


login