jueves, 30 de agosto de 2018


Escalada de privilegios en Windows gracias a una vulnerabilidad en el planificador de Tareas.

 

En una época en la que es raro no encontrarnos con vulnerabilidades anunciadas a bombo y platillo incluso con web propia y hasta logo personalizado, la publicación el pasado 27 de agosto de una vulnerabilidad grave en Windows ha causado revuelo entre la comunidad de investigadores y la propia Microsoft.

Full disclosure vía Twitter

La forma por la que supimos de la existencia de esta vulnerabilidad fue a través de un tweet publicado por la investigadora SandboxEscaper en su Twitter (al cual ya no se puede acceder). De repente, se hacía pública una vulnerabilidad 0-day bastante grave que afectaba a un buen número de sistemas Windows, y además se acompañaba de una prueba de concepto que permitía demostrar su funcionamiento.

Esta vulnerabilidad permitiría a un usuario local sin permisos suficientes en un sistema vulnerable realizar una escalada de privilegios mediante un fallo en el planificador de tareas de Windows hasta obtener permisos de SYSTEM. Concretamente, el problema se encuentra en la interfaz del sistema ALPC (Advanced Local Procedure Call).

La prueba de concepto mostrada tan solo funciona en sistemas operativos Windows de 64 bits como Windows 10 o Windows server 2016, aunque en teoría también se podría hacer funcionar en sistemas de 32 bits modificando el exploit. Esta vulnerabilidad consigue tener éxito por un fallo en la manera en la la función API del planificador de tareas SchRpcSetSecurity revisa los permisos.

Este exploit utiliza de forma maliciosa esta función SchRpcSetSecurity para modificar los permisos de forma local por cualquier otro usuario sin privilegios, incluyendo las cuentas de invitados, abriendo así muchas posibilidades para un atacante.



Debido a que la vulnerabilidad y la prueba de concepto se publicaron sin haber avisado previamente a Microsoft, no existe aún un parche de seguridad que la solucione. Se espera que esta vulnerabilidad sea debidamente solucionada en el próximo boletín de actualizaciones de seguridad, previsto para el martes 11 de septiembre. Hasta entonces, aquellos usuarios y empresas preocupados por posibles ataques que se aprovechen de este agujero de seguridad deberán aplicar medidas preventivas.

Los puntos clave y básicos que cualquier organización debería tener en cuenta para minimizar el impacto de este tipo de vulnerabilidades pasan por contar con una solución de seguridad que sea capaz de detectar cuándo se está intentando ejecutar un exploit en un sistema vulnerable, segmentar las redes para limitar el alcance de una infección o intrusión en la red corporativa y, obviamente, no permitir que aquellos usuarios que no sean de confianza ejecuten código en el sistema, aunque utilicen cuentas con permisos limitados.

Por otro lado, desde la publicación de la vulnerabilidad y de la prueba de concepto, varios investigadores han estado trabajando en posibles soluciones temporales. Por ejemplo, debido a que en la prueba de concepto se utilizaba el servicio spoolsv.exe como ejemplo para colgar de él otros procesos, es muy probable que algunos atacantes con pocas ganas de modificar el código lo utilicen también. Sabiendo esto, si monitorizamos el servicio spoolsv.exe con herramientas como Sysmon, podremos buscar procesos extraños que aparezcan colgando de él.

Otras formas más avanzadas requieren del análisis de registros y correlación de eventos para detectar cuándo se está abusando de esta vulnerabilidad. En el post de Kevin Beaumont donde se habla de este tema se proporciona un script en PowerShell para distribuir a través de las políticas de grupo y así poder detectar cualquier suceso que afecte a la carpeta Tasks, desde la cual se puede realizar la escalada de privilegios.


Conclusión

Esta vulnerabilidad ha sido una de las más importantes descubiertas recientemente, no solo por su posible impacto en sistemas Windows, sino también por cómo se ha hecho pública de forma directa y sin informar previamente a Microsoft. Lo ideal hubiera sido que se hubiese informado previamente al fabricante para que le diese tiempo a desarrollar un parche de seguridad, pero, tal y como están las cosas, deberemos esperar hasta el próximo 11 de septiembre para poder aplicar los boletines de seguridad correspondientes.

Hasta entonces, podemos aplicar las medidas de mitigación comentadas, teniendo en cuenta que, con la prueba de concepto ya publicada, es relativamente fácil para un atacante aprovechar esta vulnerabilidad, en principio solo de forma local, aunque no se descarta que se utilicen otros exploits para conseguir ataques remotos.

Fuente:  Josep Albors




sábado, 24 de junio de 2017

Auditando con Nmap y sus scripts para escanear vulnerabilidades


Auditando con Nmap y sus scripts para escanear vulnerabilidades






Actualmente existen diversas herramientas de seguridad que se encargan de ejecutar diferentes funcionalidades, y si hablamos de auditorías o pentesting, una de las que no falta nunca en el arsenal es Nmap, utilizada para reconocimiento de red y escaneo de puertos. Sin embargo, no todo el mundo conoce su gran potencial, por lo que en esta entrada nos centraremos en sus scripts y escaneo de vulnerabilidades.
Nmap es muy reconocida en el mundo de seguridad informática por su funcionalidad de escaneo de redes, puertos y servicios. No obstante, la herramienta ha ido mejorando con el correr de los años, ofreciendo cada vez más posibilidades que resultan muy interesantes. Actualmente incorpora el uso de scripts para comprobar algunas de las vulnerabilidades más conocidas, por ejemplo:
  • Auth: ejecuta todos sus scripts disponibles para autenticación
  • Default: ejecuta los scripts básicos por defecto de la herramienta
  • Discovery: recupera información del target o víctima
  • External: script para utilizar recursos externos
  • Intrusive: utiliza scripts que son considerados intrusivos para la víctima o target
  • Malware: revisa si hay conexiones abiertas por códigos maliciosos o backdoors (puertas traseras)
  • Safe: ejecuta scripts que no son intrusivos
  • Vuln: descubre las vulnerabilidades más conocidas
  • All: ejecuta absolutamente todos los scripts con extensión NSE disponibles
En principio ejecutamos Nmap con el script para autenticaciones (auth), que comprobará si existen usuarios con contraseñas vacías o la existencia de usuarios y contraseñas por defecto. La siguiente captura de pantalla grafica el ejemplo:
AuthScriptEn este primer ejemplo se muestra cómo a través de la herramienta se consigue información como el primer recuadro azul, el cual muestra el ingreso anónimo de usuarios (sin requerir usuario y contraseña). Del mismo modo, en el segundo recuadro azul (recuadro inferior) muestra el listado los usuarios de MySQL, el cual su usuario root (súper usuario) no posee contraseña.
En segunda instancia se ejecutó la herramienta con la opción por defecto (default) para hacer escaneo, justamente, con los scripts por defecto. Veamos el ejemplo:
DefaultScriptEn este caso, también se muestra en el recuadro superior azul -más precisamente el puerto 22 de SSH aparece como resultado- información de la llave (o key) para su conexión. En el recuadro azul inferior muestra información recolectada del puerto 80, tal como nombre de equipo y versión de sistema operativo, justo en la parte donde dice “Metasploitable2 – Linux”.
El script safe se podría utilizar cuando queremos ejecutar secuencias de comandos que son menos intrusivas para el target o víctima, de manera que será menos probable que causen la interrupción de algunas aplicaciones. Podemos ver en la próxima imagen, descubierta la dirección IP del router, el nombre de dominio de la red y más información:
SafeScriptOtro de los scripts interesantes que incorpora Nmap es vuln, el cual permite conocer si el equipo presenta alguna de las vulnerabilidades más conocidas. Veamos el ejemplo a continuación:
VulnScriptComo se muestra en el recuadro azul (superior), el análisis determinó que el puerto 25 (SMTP) no presenta vulnerabilidades, aunque podría validarse si es correcto de forma manual. Por otra parte, el recuadro verde (inferior), muestra las múltiples vulnerabilidades encontradas en el puerto 80 (HTTP). En el ejemplo se encontró una vulnerabilidad CSRF (Cross Site Request Forgery) y también se determinó la vulnerabilidad a ataques DoS (Denial of Service o denegación de servicio).
Uno de los menos recomendados tal vez para utilizar debido al “ruido” que generaría en los archivos de logs, es el script all. Este ejecuta todos los scripts disponibles, por lo que los archivos de registro de actividades comenzarían a llenarse rápidamente, alertando al administrador del equipo. Veamos el ejemplo en la siguiente captura de pantalla:
AllScriptAutomáticamente comenzará la ejecución de todo lo anteriormente mencionado y visto, brindando al auditor o pentester mucha información; esta será tenida en cuenta para la aplicación de correcciones y modificaciones en las respectivas aplicaciones, para no dejar al descubierto información sensible de red o un equipo.
Como conclusión, podemos remarcar que las herramientas libres como Nmap son muy útiles ya que mejoran año tras año. Si bien no es la funcionalidad principal la de hacer escaneo de vulnerabilidades, podemos valernos de esta potente herramienta para comenzar con la auditoría a nuestros equipos, permitiéndonos conocer en primera instancia el estado actual y su nivel de exposición con las vulnerabilidades más conocidas.
Por este motivo, nuestra recomendación es tener siempre presente la opción de llevar a cabo tareas como pruebas de intrusión o penetration testing por una empresa especializada; esto nos permitirá conocer el estado real de los equipos y la red para actuar rápidamente con un plan de corrección, minimizando los riesgos de intrusiones no deseadas.

Créditos imagen: ©Chris Costes/Flickr

domingo, 28 de mayo de 2017

I2P-Bote: Correo seguro y anónimo

 


En artículos anteriores, vimos un sistema de correo electrónico, basado en el protocolo de BitCoin, que no tenía un servidor central (ServerLess). Este tipo de servicios, pretenden resolver problemas de ataques a un servidor centralizado, así como preservar la privacidad de sus usuarios. Para ello, todos los usuarios del servicio, forman una red y comparten su ancho de banda y almacenamiento.
Hoy voy a hablaros de un servicio similar que, además de preservar la privacidad, intenta preservar el anonimato. El concepto es similar al de Bitmessage, en el sentido de que no existe un servidor central. Sin embargo, aborda el problema de una forma muy diferente.

En primer lugar, utiliza la red I2P para garantizar el anonimato de sus usuarios. El alojamiento y distribución de correos se realiza mediante una modificación del protocolo P2P Kademlia, para permitir el borrado. Todos los usuarios se unen a una red de tipo Kademlia (¿os acordáis del eMule? Pues es una modificación del protocolo) y, cuando envían un correo, va a parar a esta red.
El destinatario tiene un periodo de 100 días para recibir el correo. Una vez pasado ese periodo, o recibido el correo, se elimina de la red.
Como característica, se cifra todo el correo, menos el destinatario. Esto es una diferencia con Bitmessage, donde se cifraba todo, y con el correo tradicional, donde sólo se cifra el cuerpo y los adjuntos.

Cada identidad que se genera, se crea a partir la clave pública con la que se cifrarán los correos cuando nos los envíen. Como las identidades son las claves públicas, al enviar un correo, se cifra automáticamente con la del destinatario.

En cuanto al remitente, I2P-Bote tiene la opción de omitirlo, enviando un correo totalmente anónimo, tanto a nivel de direcciones IPs, como de identidad que envía.

Una ventaja que tiene I2P-Bote con respecto a Bitmessage, es que tiene un cliente para móvil. El cliente de Android no necesita que instalemos también el router I2P, tiene uno embebido. Si tenemos instalado el router, entonces utilizará ese, en caso contrario, utiliza en interno.

La aplicación permite generar códigos QR para las identidades, exportarlas/importarlas y tener una agenda con las identidades, asociándoles un nombre más descriptivo para nosotros.
Como desventaja, el protocolo es muy lento. Por un lado, hemos de conectarnos a I2P. Hecho esto, nos conectaremos a la red vía túneles de I2P. Una vez que estamos en la red, el cliente no permite un envío masivo de correos. Los va empujando poco a poco. Además, podemos establecer saltos entre nodos que componen la red, para no enviar nosotros el correo directamente, estableciendo un retardo de envío entre nodo y nodo. Esto permite que, una vez llegue el correo a red, nosotros ya no estemos conectados y los túneles utilizados hayan sido eliminados. Recordemos que los túneles en I2P tienen una vida de diez minutos, tras los cuales, se vuelven a crear, con otros nodos.
Sin embargo, el hecho de enfocarse tanto en el anonimato, hace que el correo enviado tarde un tiempo considerable. Pueden pasar varias horas hasta que recibamos nuestros correos (si se han establecido saltos). Además, dado que todo se hace a través de P2P sobre I2P, un correo pesado puede tardar bastante en descargarse, por lo que se recomienda no enviar correos pesados, aunque no haya límite en el protocolo.

En cualquier caso, se recomienda no estar constantemente buscando correos, ya que eso puede ayudar a una desanonimización. Dado que los correos tardan en llegar a la red y propagarse, es mejor establecer tiempos relativamente largos para consultar si tenemos o no mensajes pendientes de recibir. El cliente establece por defecto una búsqueda cada media hora.
La instalación en PC, se hace vía plugin para el router oficial. Para la versión del router I2Pd (realizado en C), aún no hay posibilidad de usar I2P-Bote.
La versión de PC, también permite establecer puertos smtp e imap, para poder acceder al correo con gestores de correo, como puede ser Thunderbird. Es conveniente revisar bien la configuración de los clientes de correo, porque suelen revelar información sobre nosotros, añadiendo cabeceras, etc. En todo caso, una vez vayamos a enviar un correo, I2P-Bote se encarga de “limpiar” los correos, para no incluir cabeceras que puedan revelar datos, antes de enviar el correo a la red.
La aplicación para Android, esá disponible en:
https://play.google.com/store/apps/details?id=i2p.bote.android
Para instalar en el router I2P, basta ir a http://127.0.0.1:7657/configplugins y poner el enlace de descarga del mismo, que sería:
http://bote.i2p/i2pbote.su3
O en b32:
http://bhjhc3lsdqzoyhxwzyrd63kvyg4br6n2337d74blyintae66mr2a.b32.i2p/i2pbote.su3













La descarga e instalación puede ser algo lenta, dependiendo de la integración de nuestro router en la red.













Una vez instalado, nos aparecerá el enlace “Correo Seguro”, que es la interfaz para gestionar las identidades y el correo electrónico.













Fuente:  https://hacking-etico.com/2017/04/30/i2p-bote-correo-seguro-anonimo/#more-5536

lunes, 13 de febrero de 2017

Kaspersky descubre un potente malware invisible que está infectando a bancos de todo el mundo


Los investigadores de Kaspersky Lab han vuelto a detectar un malware similar en apariencia al famoso Duqu 2.0 aparecido hace dos años. Según la investigación publicada las redes pertenecientes a 140 bancos y otras empresas han sido infectadas por este malware capaz de permanecer casi invisible.
En el año 2015 hacía su aparición Duqu 2.0, un virus que tenía la capacidad de infectar una red y permanecer únicamente en la memoria de las computadoras comprometidas. Como resultado de ello la infección permaneció sin ser detectada durante más de medio año.
El malware encontrado esta semana es muy similar. Según Kaspersky los hackers podrían tener una clara motivación financiera debido a los objetivos seleccionados. Además, podrían ser más de 140 bancos, ya que las infecciones son difíciles de detectar y los atacantes emplean herramientas legales para aprovechar alguna vulnerabilidad e inyectar el malware en la memoria del ordenador. Todo ello para finalmente sacar dinero de las cajeros… desde los propios bancos. Según la compañía de seguridad:
Lo que es interesante aquí es que estos ataques contra los bancos continúan en todo el mundo . En muchos casos los bancos no han sido adecuadamente preparados para lidiar con esto y las personas detrás de los ataques están sacando el dinero de los bancos... desde dentro de los propios bancos dirigiendo ordenadores que manejan los cajeros automáticos.
Las 140 organizaciones que han sido afectadas residen en 40 países diferentes, siendo Estados Unidos, Francia, Ecuador, Kenia y el Reino Unido los cinco países más afectados.
Un malware que se descubrió a finales del año pasado a través de un equipo de seguridad de un banco, en ese momento dieron con un controlador de dominio de Microsoft infectado aunque intacto, presumiblemente porque no se había reiniciado.
El análisis posterior encontró que los atacantes utilizaron herramientas para recopilar contraseñas de los administradores del sistema. Hoy los investigadores siguen sin saber la procedencia del ataque o incluso la manera en la que el malware se inicia, dudas que esperan resolver de aquí al mes de abril, momento en el que proporcionaran más detalles de la investigación en curso.

Fuente:  http://es.gizmodo.com/kaspersky-descubre-un-potente-malware-invisible-que-est-1792122617