miércoles, abril 27, 2016

Seguridad SCADA: Mapeador de red pasivo de entornos SCADA/ICS.

El riesgo cibernético de los sistemas SCADA/ICS que controlan las infraestructuras críticas, es significativo y crece día a día. Hay una posibilidad cada vez mayor de ataques cibernéticos con consecuencias perjudiciales o físicamente destructivos. El estado de las vulnerabilidad de los sistemas y dispositivos ICS/SCADA (Por ejemplo, PLC, HMI) se ha documentado públicamente en los informes de vulnerabilidad en Internet y discutido en múltiples conferencias. Para entender el riesgo asociado, debemos entender lo que estamos tratando de proteger, esto comienza con un buen conocimiento de la situación.


GRASSMARLIN es un mapeador de red pasivo, dedicado a las redes industriales y desarrollado por la Agencia Nacional de Seguridad (NSA). La herramienta se ha liberado recientemente a código abierto y está disponible directamente en GitHub. GRASSMARLIN muestra una instantánea de una red de un entorno SCADA incluyendo:

  • Dispositivos que forman parte de la red.
  • Las comunicaciones entre los dispositivos.
  • Metadatos que extrae de estas comunicaciones.

El mantenimiento de la disponibilidad de los sistemas de control industrial es una necesidad primordial. De hecho, cualquier fallo puede llevar a consecuencias importantes que van desde la pérdida del servicio a la pérdida de vidas. Por lo tanto, a fin de no perturbar la disponibilidad de dispositivos industriales, todas las operaciones que realiza GRASSMARLIN se realizan de forma pasiva. De hecho, analiza de forma pasiva las comunicaciones a diferencia de las herramientas de mapeo activas, tales como nmap o plcscan, que envían paquetes a través de la red y analizan las respuestas posibles.

GRASSMARLIN muestra dos tipos de vistas:

  • La vista lógica: muestra todos los dispositivos y las comunicaciones entre ellos.
  • La vista física: lista los enlaces físicos entre los dispositivos industriales y los dispositivos de red.

Vista lógica.


La topología se genera a partir de una captura de paquetes de dispositivos industriales que utilizan el protocolos de comunicación. El mapa principal muestra los dispositivos de la red y la comunicación entre los dispositivos y subredes, cada dispositivo se identifica por su dirección IP. Por otra parte, puede reconocer dispositivos y protocolos industriales gracias a las firmas de protocolos integradas. Se detalla el rol de los dispositivos: el maestro (Human Machine Interface - HMI) da órdenes mientras que el esclavo (Controlador Lógico Programable - PLC) las ejecuta. El nombre del proveedor de los dispositivos también se muestra para ayudar a los gestores de ICS/SCADA a localizar los dispositivos. Si las direcciones IP son públicas también se muestran los países al que pertenecen, con sus respectivas banderas. Toda esta información se genera después de la confrontación entre los paquetes capturados y firmas de GRASSMARLIN. También es posible aislar las comunicaciones vinculadas a un dispositivo en particular y obtener en un primer análisis: tamaño de paquetes, instante de emisión, origen del paquete...


Vista física.


Esta vista proporciona los enlaces físicos existentes entre los dispositivos, más centrado en el aspecto de la red, este punto de vista informa de la conexión física entre los dispositivos industriales y equipos de red. En V3 de GRASSMARLIN sólo los routers de Cisco son compatibles y la vista física se generan a partir de la salida de estos comandos:

  • "show running-config"
  • "show ip arp"
  • "show mac address-table"
  • "show interfaces"

Una vez que los resultados de estos comandos se guardan en un archivo de texto simple, GRASSMARLIN puede generar la vista física.

El objetivo de esta herramienta es concienciar la situación de las redes  SCADA/ICS y ampliar la base de conocimiento a través de la identificación y colaboración con la comunidad de usuarios. Proporcionando conocimiento de la situación de los sistemas de control industrial (ICS) y de Supervisión redes de adquisición de datos (SCADA), para apoyar la seguridad de las redes. Generando pasivamente y visualmente una topología de red mientras se realizan de forma segura: la detección de dispositivos, el conteo de los mismos y informar sobre estos sistemas críticos. Actualmente GRASSMARLIN está disponible en: Windows 7 64 bits y en Linux (Fedora, Ubuntu).

Más información y descarga de  GRASSMARLIN:
https://github.com/iadgov/GRASSMARLIN


Seguridad SCADA: Herramienta para chequear la seguridad de un entorno SCADA.
http://www.gurudelainformatica.es/2016/02/seguridad-scada-herramienta-para.html

Seguridad SCADA:
Honeypot para simular redes SCADA II:
http://www.gurudelainformatica.es/2015/01/seguridad-scada-honeypot-para-simular.html

Seguridad SCADA: Honeypot para simular redes SCADA I:
http://vtroger.blogspot.com/2010/10/seguridad-scada-honeypot-para-simular.html

Seguridad SCADA: Simular tráfico para probar eficacia IDS en redes industriales:
http://vtroger.blogspot.com.es/2014/01/seguridad-scada-simular-trafico-para.html

Seguridad SCADA:
Auditar la configuración de seguridad de sistemas de control industrial:
http://vtroger.blogspot.com.es/2013/10/seguridad-scada-auditar-la.html

Seguridad SCADA:
Herramientas de seguridad para WINCC y PLC´s S7:
http://vtroger.blogspot.com.es/2013/05/seguridad-scada-herramientas-de.html

Seguridad SCADA:
Implementar IDS:
http://vtroger.blogspot.com.es/2012/05/seguridad-sada-implementar-ids.html

Seguridad SCADA: Disponibilidad en servicios OPC:
http://vtroger.blogspot.com.es/2011/05/seguridad-scada-disponibilidad-en.html

Seguridad SCADA: Fingerprinting de dispositivos que trabajan sobre MODBUS/TCP:
http://vtroger.blogspot.com/2010/08/seguridad-scada-fingerprinting-de.html

Seguridad SCADA: Firewall para MODBUS/TCP:
http://vtroger.blogspot.com/2010/08/seguridad-scada-firewall-para-modbustcp.html

Seguridad SCADA:
Vulnerabilidades en OPC:
http://vtroger.blogspot.com/2010/09/seguridad-scada-vulnerabilidades-en-opc.html

Seguridad SCADA: Utilizar técnicas de fuzzing en sistemas de control industrial:
http://www.gurudelainformatica.es/2014/08/seguridad-scada-utilizar-tecnicas-de.html

jueves, abril 21, 2016

Herramienta para balanceo de carga de servidores Web mediante DNS.

Dentro de la seguridad informática la disponibilidad es un factor muy importante que normalmente se le suele menospreciar. Entendemos por disponibilidad a la garantía de que los usuarios autorizados puedan acceder a la información y recursos de red cuando los necesiten. La disponibilidad es un factor imprescindible en servidores Web. 


Edgemanage es una herramienta para la gestión de la disponibilidad de servidores Web a nivel HTTP  a través de DNS. Su funcionamiento se basa en definir unas máquinas que puedan estar en riesgo de grandes volúmenes de tráfico, ataque tipo DDoS o otra inestabilidad potencial. Cuando el trafico elevado o un ataque se envía a la maquina, si no se encuentra una máquina disponible o tiene un bajo rendimiento, es reemplazada por un anfitrión con más prestaciones para garantizar la máxima disponibilidad. Es un script simple y con una biblioteca de Python diseñado para ejecutarse a intervalos regulares, generalmente a través de crontab. Diseñada para trabajar cada 60 segundos pero las cifras más grandes se puede utilizar [^ 1]. 


Edgemanage obtiene un objeto de una lista de hosts a través de HTTP y utiliza el tiempo necesario para recuperar el objeto como baremo para tomar decisiones sobre qué máquinas son las que tiene mejor rendimiento para asumir el trafico . Estos anfitriones se escriben en un archivo de zona como registros A para el vértice de un dominio, además de la inserción de los archivos almacenados en la zona incluye directorio. Los archivos de zona que escriba Edgemanage se crean a través de plantillas Jinja, con los datos de SOA y NS que se definen en el archivo de configuración y se unen al formato de salida bind-compliant. Los registros para cada dominio que se incluyen son reglas de estilo de Bind.

Su modo de operación mas detallado consiste en que: un huésped se considera que está en un estado saludable cuando el objeto se devuelve bajo un valor establecido en el archivo de configuración. Anfitriones que devuelven el objeto bajo el tiempo especificado siempre serán elegidos por primera vez en caso de que surja la necesidad de reemplazar a un anfitrión que no está sobrecargado.  Hay que tener cuidado que los cambios de DNS no se hacen cuando no se necesitan, esto significa que si el último conjunto de host saludables disponibles se encuentran en buen estado, no habrá ningún cambio en el DNS.

Mantiene histórico de recuperaciones por host y puede tomar decisiones basadas en estos datos. Por defecto, si no hay suficientes anfitriones, añadirá sistemas basados en su promedio, durante una ventana de tiempo, y en su defecto, de su promedio general.

Edgemanage debe ejecutarse periódicamente para ser de utilidad. Se recomienda ejecutarlo a través de crontab. En su puesta en marcha por primera vez, es recomendable ejecutarlo en modo verbose (-v) y en el modo de ejecución (-n) escribiendo  en un lugar que no contenga la información de producción.

Mantiene un archivo de estado que se utiliza para obtener información histórica sobre los hosts en activos y los tiempos de última rotación. Si se deniega una conexión a un host, se le asignará el máximo tiempo permisible para un host (garantizando así tanto su retirada de la rotación en vivo y también una ventana de retroceso a través de sus promedios).

Más información y descarga de Edgemanage:
https://github.com/equalitie/edgemanage

jueves, abril 14, 2016

Navegador basado en Mozilla Firefox ideal para realizar test de penetración.

PenQ es un navegador para Linux ideal para realizar test de penetración, construido sobre la base del navegador Mozilla Firefox. Viene pre-configurado con herramientas de seguridad para: rastreo, búsquedas avanzadas, fingerprinting, navegación anónima, escaneo de servidor web, fuzzing y generación de informes. PenQ no es sólo una mezcla de complementos para el navegador Mozilla Firefox viene pre-configurado con algunas herramientas muy potentes de código abierto en Java/Python y línea de comandos. 


PenQ está configurado para ejecutarse en distribuciones basadas en Debian, incluyendo Ubuntu y distribuciones derivadas, también en los sistemas operativos de test de penetración tales como BackTrack y Kali. PenQ permite a los pentesters el acceso a los servicios y las herramientas del sistema necesarias directamente desde el navegador, el ahorro de tiempo al realizar pruebas es mucho más rápido. Las herramientas incorporadas en el rango de navegación anónima y supervisión del sistema, permiten tomar notas y programar tareas. 

También proporciona documentación mediante la vinculación de guía de pruebas de OWASP, una vasta fuente de conocimientos relacionados con los test de penetración. PenQ puede ser utilizado para probar los OWASP Top 10 de los riesgos, para proteger las aplicaciones web contra vulnerabilidades.

Las herramientas incluidas son: OWASP ZAP, OWASP WebScarab, OWASP WebSlayer, Nikto Web Server Scanner, Wfuzz Web Application Fuzzer, Tor, OWASP Penetration Testing Checklist. 

Y también estés Add-ons de Mozilla: anonymoX, Awesome Screenshot, ChatZilla, CipherFox, Clear Console, Cookies Manager+, Cookie Monster, CryptoFox, Email Extractor, Firebug, FireFlow, FireFTP, FireSSH, Greasemonkey, Groundspeed, HackBar, HackSearch, Header Spy, HttpFox, HttpRequester, Java Deobfuscator, Library Detector, LinkSidebar, Proxy Selector, Proxy Tool, RefControl, RESTClient, Session Manager, SQL Inject Me, SQLite Manager, TrashMail.net, User Agent Switcher, Wappalyzer, Web Developer, Xinha Here! y XSS Me.

Más información y descarga de PenQs:
https://github.com/QBurst/PenQs