miércoles, 16 de marzo de 2016

De Foundation a Fandation -Un error que aborto un robo de 1000M€-.

Un error ortográfico (typo)en la instrucción a la hora de ordenar la transferencia bancaria ayudó a las autoridades a evitar el robo de cerca de mil millones de dólares al Banco Central de Bangladesh el mes pasado.

Así lo reveló uno de los funcionarios de la banca, cuyo ataque se produjo desde su cuenta en la Fed, el Banco de la Reserva Federal de Nueva York.

El ciberdelincuente que debía ordenar la transferencia a la Fundación Shalika, que se escribe en inglés "Foundation Shalika", escribió "Fandation Shalika". A pesar del error, los ciberdelincuentes consiguieron robar cerca de 100 millones de dólares, lo que supone uno de los mayores robos bancarios de la historia.

Esta semana el Banco de Bangladesh denunció el hecho del que fue víctima el 5 de febrero.

Según las primeras investigaciones, el ataque posiblemente proviene de China y consistía en realizar varias transferencias a diferentes cuentas en distintos países asiáticos desde la cuenta en la Fed por valor de unos 100 millones de dólares.

Los ciberdelincuentes violaron los sistemas del Banco de Bangladesh y robaron sus credenciales para realizar las diferentes transferencias de pago. A continuación, bombardearon el Banco de la Reserva Federal de Nueva York con casi tres docenas de peticiones para mover el dinero de la cuenta del Banco de Bangladesh a Filipinas y Sri Lanka.

Tras cuatro órdenes, por un valor de 81 millones de dólares, llegó la quinta por valor de 20 millones.

En ese momento, el delincuente debía ordenarla el traspasado a la ONG "Foundation Shalika". Sin embargo se confundió al escribir mal el nombre de la supuesta organización sin ánimo de lucro de Sri Lanka. Fue cuando saltaron todas las alarmas.

A partir de ese momento, los piratas se dieron cuenta de que ya no podían ejecutar su plan al completo: aún les quedaba por ordenar transferencias por un monto de unos 870 millones de dólares. Todas ellas fueron abortadas.

El Banco de Bangladesh trabaja por recuperar parte del dinero robado aunque en realidad tiene pocas esperanzas de conseguirlo o de localizar a los delincuentes que se esconden tras este ataque.

Además, culpa a la Fed de no detectar el robo y detener, por tanto, las operaciones. La entidad de Nueva York, sin embargo, aseguró que sus sistemas no se rompieron.

Fuente: The hackers News.

viernes, 12 de febrero de 2016

Escalada de privilegios en Windows: Hot Potato

El equipo de Foxglovesecurity.com hace pocos días ha publicado en su blog un exploit el cual desde un usuario de nivel bajo puede elevar sus privilegios dentro de un sistema hasta el nivel más alto. Haciendo uso de una pequeña herramientas de comandos que estos denominaron como "Hot Potato".

Esto es posible a unos fallos de diseño de Windows bien gestionados en el que se realizan tres ataques en uno.NBNS Spoofing (NetBios sobre TCP/IP o NetBios Name Service), WPAP (Web Proxy Autodiscovery Protocol) y HTTP > SMB NTLM Relay (autenticación NTLM de HTTP a SMB).

Como ejemplo en una máquina virtual con Windows 7 PRO de 32bits el cual tiene las configuraciones por defecto. Haciendo uso de Potato intentaré escalar a un usuario raso y hacerlo formar parte del grupo Administradores del sistema en un Windows 7.
Nos descargamos a local Potato, abrimos una consola de comandos y comprobamos la dirección IP local y el usuario local de esa instancia el cual no tiene privilegios y es el usuario el cual queremos elevar sus permisos.

Figura 1: Comprobamos que el usuario no está como usuario administrador.

Dependiendo de ejecutar potato.exe en un sistema Windows 7/8/10/Server 2012 se aplicará de una u otra forma, dependiendo la técnica a aplicar.
Para más información consultar la web oficial del equipo de "Hot Potato"



Figura 2:  Sabiendo la dirección IP local y ejecutamos potato.exe para Windows 7.

Haciendo uso del modificador "-cmd" ejecutamos una cmd.exe y ejecutamos añadimos un usuario al grupo administradores (net localgroup administradores [user] /add).


Figura 3: Comprobamos que el usuario a sido agregado al grupo administradores.

¿Soluciones a estos tres ataques?

Lo que podemos hacer para solucionar esto sería revisar el tráfico NBNS de nuestra red, para WPAD detener el servicio de detección automática de proxy web WinHTTP, y para NTLM forzar la autenticación de Kerberos y NTLMv2 con esta solución de Microsoft y forzar la política para firmar comunicaciones SMB siempre.

Fuente: http://www.zonasystem.com/

jueves, 21 de mayo de 2015

Tunelizar conexiones de manera selectiva en Windows.

El trabajo de un auditor, administrador de seguridad, etc.., requiere que en su día a día tenga que estar conectado, y siempre hablando de determinados escenarios, a varias redes, establecer conexiones con un origen específico, uso de conexiones VPN, etc..

El otro día, hablando con Jose Selvi vía telefónica sobre cosas mundanas y terrenales, me comentaba que en su portátil con Windows había tenido que configurar este tipo de cosas.
Es interesante destacar que, como hemos comentado en anteriores párrafos, en determinados escenarios puede ser interesante encaminar cierta parte de nuestro tráfico a través de distintas redes. Como principal ejemplo Selvi me comentaba que esto lo hacía cuando no gestionaba el EndPoint – por ejemplo una VPN que no controlamos – y que no le gustaba que cierto tráfico de su propiedad se pudiese ver “comprometido” o dar facilidades de acceso al mismo a un tercero.
Hay muchas opciones y muchos escenarios en donde también es interesante habilitar este tipo de configuraciones, como por ejemplo si necesitamos utilizar la salida de una determinada herramienta para alimentar a otra y no queremos andar “parseando” tráfico local nuestro. Otro ejemplo se puede dar cuando en determinadas auditorías exigen que se entregue una bitácora de peticiones – por ejemplo en formato PCAP – a modo de auditoría.

En Linux esto es posible realizarlo a través de netfilter/iptables y con las opciones de PREROUTING. Para hacerlo en Windows necesitamos entender cómo se gestionan y se crean conexiones de tipo VPN para luego poder encaminar los datos que necesitemos.

 Cuando Windows genera una conexión VPN y nos conectamos a través de ella, el sistema operativo crea una ruta por defecto en la que se indica que todo nuestro tráfico lo encaminará a través de dicha conexión, y será el servidor final el que tendrá que realizar una acción de forwarding en caso de que se utilice también como conexión a Internet. Esto se puede verificar una vez conectados a la VPN con un simple route print.


En caso de que no queramos que todo el tráfico pase por la VPN, en Windows pasa por configurar la nueva conexión de acceso remoto y desmarcar las opciones de Default Gateway en IPv4 e IPv6. Para ello, y en tus conexiones de red, debes configurar esta opción en la pestaña Networking de tu conexión de acceso remoto.


Una vez desmarcada esta opción, usaremos la flexibilidad del comando route, y generaremos las entradas necesarias para encaminar el tráfico deseado por la conexión VPN. Para ello necesitamos conocer varios elementos:

    Dirección - Rango de direcciones – Redes completas a encaminar
    Número de interfaz

El número de interfaz se puede averiguar con el propio comando route print, o también a través del instrumental de administración de Windows.

 Una vez tengamos estos datos, podremos utilizar la flexibilidad que nos otorga la creación de rutas para generar la nuestra. En el caso de que necesitemos generar una ruta para una dirección IP concreta, se podrá utilizar el siguiente comando:



En caso de necesitar que la ruta fuese persistente, se puede hacer uso del flag –p. Una vez realizado este paso para cada una de las direcciones IP o redes concretas, la próxima vez que nos conectemos a través de esa red VPN, todas las conexiones realizadas desde nuestro equipo a esas direcciones IP, se encaminarán a través de la conexión remota. El resto de peticiones se realizará con nuestra conexión local.
Si se desea realizar esto de manera masiva – por ejemplo a través de Directorio Activo y a un número determinado de equipos – se puede realizar a través de PowerShell y políticas de grupo. Para los interesados Microsoft ha generado un documento con scripts de ejemplo, el cual puedes descargar desde la siguiente dirección:

http://www.microsoft.com/en-us/download/details.aspx?id=2555

Los servicios y aplicaciones Microsoft permiten determinados tipos de configuraciones y vías de fortificación con mucha flexibilidad y a través de múltiples vías. Para los que estéis interesados en este tipo de tips y escenarios de fortificación avanzados, Lorenzo Martínez, uno de los editores de SecurityByDefault, me ha invitado a dar unas sesiones en el curso de Hardening de Sistemas Windows, Linux e Infraestructuras, y del cual estoy encantado de participar junto a buenos ponentes y amigotes, como Pedro Sánchez o Yago Jesús. Si quieres más información, así como un índice del mismo, puedes consultar el siguiente enlace:

https://www.securizame.com/curso-online-de-hardening-de-sistemas-windows-y-linux-e-infraestructuras_jg/

Fuente: http://www.securitybydefault.com/2015/05/tunelizar-conexiones-de-manera.html

martes, 19 de mayo de 2015

Hardening, asegurar o morir.

Cuando uno trabaja en un equipo de respuestas ante incidentes (DFIR o CIR) se da cuenta de la cantidad de problemas que existen en las organizaciones cuando estas tienen un incidente grave. Por desgracia ‘los malos’ rompen el perímetro y se quedan a vivir en los servidores hasta que ocurre algo o el propio sysadmin se da cuenta de que la cosa no va bien.

Normalmente se soluciona revertiendo la situación aplicando remedios como los formateos, actualizaciones de seguridad y como no, bastionando el sistema que suele ser un puesto de trabajo, servidores o dispositivos de red.

El bastionado o ‘hardening’  es el proceso de reforzar la seguridad de estos sistemas con objeto de eliminar el mayor número de riesgos de seguridad. Esto permite, que con el paso de los tiempos las configuraciones de seguridad de muchos productos (realmente caros) han mejorado en los últimos años, pero alguna de estas opciones que el propio fabricante aconseja por defecto, dejan al descubierto vulnerabilidades que son aprovechadas por los atacantes de forma indiscriminada.

Cambiando de tercio, un ejemplo muy vistoso y lamentablemente muy activo son los ataques que utilizando ‘el arte del Phishing’ hacen que los usuarios ejecuten programas que dicen ser certificados o ficheros "pdf" para mostrarnos la cara real de los Ransomware, los cuales están haciendo un daño increíble a la industria y especialmente a la Pymes cuyo nivel de conciencia y protección (por desgracia)  es muy poco o casi nulo. Aprovechan la debilidad de los usuarios y la mal granularidad de privilegios en Windows, el cual se convierte en la victima perfecta.

También los anti-malware, antivirus y anti-todo se han demostrado innocuos ante semejante problema hasta que han dispuesto de las muestras para ofrecer una ajustada y tardía solución.
Por otro lado y como decía anteriormente las soluciones que defienden el perímetro no son efectivas con las configuraciones impuestas de fábrica, las cuales hay que ‘tunear’ para adaptarla a la empresa, así mismo tan importante es el perímetro como el punto final el cual hay que asegurar como último bastión de defensa.

Lo que quiero decir es que no hay que confiarse y dejar la responsabilidad a la tecnología (recordad, la tecnología es una herramienta) y por lo tanto hay que diseñar un plan empezando por concienciar (esa palabra tan desgastada), la formación y fortificación de los sistemas. Un sistema bastionado es complicado de atacar.

Pensando en estas cosas y comentando con Lorenzo de Securizame ha propuesto un entrenamiento basado en un curso para todos los sysadmin, administradores de Windows y técnicos especialistas para que tengan la habilidad necesaria para afrontar con éxito un ataque y poder bastionar sus sistemas.

Únase al curso de Hardening de Sistemas Windows y Linux e Infraestructuras y experimente una inmersión totalmente práctica. Aprenda las técnicas y habilidades de forma rápida y automática desde el primer día.