Webcast: Análisis de Malware con Sysinternals

Estándar

Hola a tod@s!

La semana que viene, más concretamente el martes 24 de Julio a las 16:00, tendré el gusto de dar otro Webcast sobre análisis de Malware orientado principalmente a Administradores de Sistemas.

Como en el otro Webcast, se verán las capacidades de las herramientas de SysInternals así como sus novedades añadidas y funcionalidades que ayudarán a un administrador TI en la búsqueda y análisis de Malware. El guión completo más la URL de conexión lo tenéis en el siguiente párrafo.

En este Webcast se mostrará una primera aproximación sobre cómo los administradores de sistemas e investigadores de seguridad se pueden enfrentar a amenazas de tipo APT utilizando para ello las herramientas de Microsoft SysInternals.
Para esta sesión, se utilizará como demostración la reciente aparición de un Malware que ha dado mucho que hablar dentro de la comunidad de seguridad, así como en equipos de gobierno y fuerzas de seguridad del Estado: el Malware FLAME.
Con la información obtenida en esta sesión se podrá comprobar cómo los analistas de sistemas, así como administradores de seguridad, pueden utilizar estos datos para mitigar la amenaza utilizando para ello una arquitectura basada en Microsoft.

URL de conexión: https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032521432&Culture=es-ES&community=0 

Os espero por allí!

Salu2 a tod@s!!

 

Información de Malware. ¿A través de DNS?

Estándar

Hola a tod@s!

Hoy día, y debido a que cada año crece más todo lo relativo a vías de infección, han proliferado muchos servicios de consulta de Malware, y todo lo relacionado con la muestra.

Servicios como VirusTotal y ThreatExpert son buenas referencias a tener en cuenta, en tanto y cuanto a un auditor, le caiga el «marrón» de analizar un «bicho».

A la hora de analizarlo, y viendo como está el mercado, en cuanto a horas reales y cuantificables que se dedican a un proyecto, a un auditor le puede solucionar la papeleta el consultar este tipo de servicios, a día de hoy imprescindibles y para mi gusto perfectos, para que le den una visión global sobre qué dicen las principales casas de antivirus sobre el mismo.

Buscando proyectos relacionados con el análisis dinámiso de muestras de manera online, y habiéndome leído la gran entrada de HackPlayers sobre análisis de Malware, me encontré con un proyecto en OWASP bastante interesante. Consulta de Malware en base a un MD5 o SHA1. Si miramos esta última frase con ojo crítico, pensaremos, nada nuevo no?

La solución que se aloja en OWASP, la cual puede consultarse de manera ONLINE, permite que puedas realizar consultas en base a un MD5 o SHA1 de algún fichero «sospechoso», pero en vez de consultar a una Web, las consultas las realizas a través de peticiones DNS, adjuntando al final del MD5 o SHA1 un sufijo DNS.

La idea en sí es simple. Tener un repositorio de HASHES relacionados con ficheros maliciosos. Pero la ejecución cambia totalmente al ser consultas a través de DNS.

Desde un punto de vista «corporativo», las consultas DNS se permitirán, casi por obligación. Como segundo punto es la información que obtenemos al realizar las consultas. Esta información va desde el supuesto tamaño de fichero que coincide con el HASH, así como información relativa al estatus de este. Si es Malware, desconocido, bueno, etc… Una de las respuestas más curiosas, es la relativa a la certeza. En la respuesta, dan un grado, en tanto por ciento, de lo cierto de que ese HASH sea Malware o no, en función del estatus, y de lo analizado.

Según el servicio, esta base de datos es mantenida con regularidad, y analizan bastantes muestras de ficheros maliciosos.

Para realizar una consulta, lo único que necesitamos es un cliente nslookup o dig.

Si lo que necesitamos es consultar si el HASH se encuentra incluido en la base de datos, se puede realizar una consulta de tipo A. La respuesta que obtendremos, en el caso de que el HASH se encuentre en la BBDD, es de 127.0.0.11.

En el caso de que se necesite extraer la información relativa al HASH, habrá que realizar la consulta, pero esta vez de tipo TXT, y añadiendo un sufijo específico, hash.sapao.net.

Imagen 1.- Consulta de HASH malicioso a través de DNS

Aunque desconocía por completo que se pudiesen realizar consultas de HASH a través de DNS, en la página del proyecto, existen enlaces a sitios y comunidades que ofrecen lo mismo. En el caso de Team Cymru’s, ofrecen el mismo servicio de consultas de HASH a través de DNS, operando de la misma manera que la anterior.

SANS, por su parte, tiene otro servicio muy similar, que, aunque no tan potente como los anteriores, tienen algo que lo hace bueno, y es que mantienen una base de datos de ficheros catalogados en WhiteList, por lo que, si se realizan consultas, se puede cotejar si un fichero es malicioso, o por el contrario se encuentra en una lista blanca.

Realizando una prueba con el MD5 un fichero, SANS me informa de que se encuentra listado en varias ocasiones. ¿Colisión? Por la pinta del tamaño, y viendo que son ficheros en texto plano, no sé, no sé…..

Imagen 2.- Consulta realizada en NIST Hash Database

Si realizamos esta consulta, pero a través de NSLOOKUP, la respuesta que obtendríamos sería la siguiente:

Imagen 3.- Consulta de HASH a través de NSLOOKUP en SANS

Curiosa forma de consultar por ficheros maliciosos no?

No sólo de la password vive el HASH!

Saludos a tod@S!

 

 

virtualAPP con Mark Russinovich en SpringBoard

Estándar

Hola a tod@s!

Buscando información sobre la virtualización de aplicaciones, tanto en local como en remoto, y de las posibilidades de hacerlo con Windows 7, me he topado con dos vídeos muy interesantes de Mark Russinovich sobre cómo la virtualización de aplicaciones antiguas puede ayudar en procesos de migración a otros sistemas operativos.

Las sesiones (2), las podéis encontrar en los siguientes enlaces:

Windows 7 Application Compatibility Part 1

http://technet.microsoft.com/es-es/windows/dd981014.aspx?ITPID=stepcon 

El vídeo se puede descargar completito desde esta dirección  

Windows 7 Application Compatibility Part 2. Virtualization

http://technet.microsoft.com/es-es/windows/ee532933

El vídeo de esta sesión se puede descargar completito desde esta dirección

Saludos!



Google Hacking Database Offline

Estándar

Hola a tod@s!

A veces nos encontramos con que en una auditoría de seguridad necesitamos realizar búsquedas en Google sobre una determinada Web, o sobre un trabajador de una empresa por ejemplo.

La base de datos de GHDB (Google Hacking Database) de Johnny Long nos puede servir de gran ayuda en esa tarea, y numerosas herramientas utilizan esta base de datos como valor añadido a la aplicación. La herramienta de análisis Acunetix, y herramientas  como Nikto o Wikto en su versión de Windows, utilizan esta base de datos como añadido.

Esta tarde, realizando unas pruebas, me he encontrado con que la Web de Johnny Long está caida, y por consiguiente, la base de datos de GHDB también arroja un bonito error 404.

La falta de esta clase de recursos para nuestras auditorías puede ocasionar que haya pruebas de seguridad que no se realicen o que se realicen de forma incorrecta. Para solucionar este problema (No tengo idea de si estará de nuevo Online en un futuro) hay personas que han realizado una labor de mirroring sobre la base de datos de Johnny Long.

En el caso de la Base de datos de GHDB, el mirror es el siguiente: http://ghdb-mirror.freehostia.com/index.HTM

Si se quiere acceder a todos los Google Dorks, la URL es la siguiente: http://ghdb-mirror.freehostia.com/_0toc.html

Y por último, si se necesita descargar toda la BBDD, la URL es la siguiente: http://ghdb.mirror.googlepages.com/ghdb.jar

Si alguien conoce algún otro mirror o tiene algún enlace más actualizado de los que yo utilizo, que no tarde en ponerlo!

Espero que os sirva de ayuda.

Salu2 a tod@s!

Volcados de memoria. De W2k3 SP1 en adelante

Estándar

En anteriores artículos, hemos dado un repaso a las herramientas de software que hay para realizar volcados de memoria en sistemas basados en Windows.

Este tipo de técnicas, hasta ahora sólo valían para equipos anteriores a Windows 2003 SP1, ya que en el Service Pack 1 de Windows 2003 se introdujo una medida por la cual el objeto \Device\PhysicalMemory no es accesible en modo usuario.

Este cambió se debió, principalmente, porque en anteriores versiones de Windows, este objeto estaba protegido únicamente con una ACL. Un exploit podría utilizar capacidades como WMI o incluso la herramienta CACLS para cambiar las propiedades de ese objeto en segundo plano o bajo línea de comandos.

Matthieu Suiche desarrolló una herramienta hace meses, llamada Win32DD, la cual accede a la memoria en modo kernel, saltándose así la protección y provocar con éxito un volcado de memoria. Lo mejor de esta aplicación es la no limitación de sistema operativo, lo que abre un gran abanico de posibilidades en el ámbito forense. Con esta herramienta podremos obtener volcados de memoria a partir de sistemas Windows 2003 SP1en adelante.

La herramienta es gratuita, el código fuente se publica con ella, y podéis hacer uso de ella en el siguiente link.

http://www.msuiche.net/countcount/click.php?id=2

Referencias: http://technet.microsoft.com/en-us/library/cc787565.aspx

Saludos!

Tip: Renombrar el nombre de conexión por línea de comandos

Estándar

Salam Malicum hermanos…

El otro día estuve montando una red de unos 50 equipitos. Si todo marcha bien y las máquinas son parecidas, lo tienes todo montado en un par de días. Clonar la mayoría de máquinas, cambiarles el SID para que las máquinas no se peleen entre ellas, configurar permisos en el dominio y montar un ISA Server  como firewall  y proxy caché. Me creé un script sencillito para cambios de IP por si algún empleado interno necesitaba cambiar de dirección al cambiar de oficina. Y me encontré con un problema. Las tíldes. No me había dado cuenta, pero al crear el script en batch con la aplicación netsh, éste no acepta las tíldes ni los acentos, aunque vayan entre «». Menos mal que los chicos del Scripting lo tienen todo bien documentadito..

http://www.microsoft.com/technet/scriptcenter/resources/qanda/may05/hey0511.mspx

Así que el script se queda así:

Const NETWORK_CONNECTIONS = &H31&
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(NETWORK_CONNECTIONS)
Set colItems = objFolder.Items
For Each objItem in colItems
   If objItem.Name = "Conexión de área local" Then
      objItem.Name = "Red"
   End If
  
Next

Como el dominio se creó con el principio del mínimo privilegio, los usuarios no pueden cambiar el nombre de red ni los parámetros TCP/IP. Así que lo único que había que hacer es alojar el script de inicio en el dominio, y crear una política de equipo que se encargase de cambiar el interface name. Para crear la regla hice lo siguiente:

En Windows 2003

Inicio –> Ejecutar –> dsa.msc

Se abre automáticamente la consola de usuarios y equipos del directorio activo.

Pincháis en el árbol de vuestro dominio tal y como aparece en la imagen:

Propiedades directorio activo

Se os abrirá una nueva ventana con las propiedades. Pincháis en la pestaña directiva de grupo y editáis la que tengáis existente. Y automáticamente es como trabajar en local con la herramienta de políticas de usuario gpedit.msc.

Configuración de equipo –> Configuración de Windows –> Archivos de comandos –> Inicio

Cambio nombre

Lo mejor es que no tienes que tocar ninguna máquina cliente. Más seguro para tí y menos trabajoso para los empleados. No hay acentos, no hay problemas. Recordad que esta regla la podéis aplicar a todas las políticas que implementéis en un dominio (en grupo de trabajo también es válida). Tan solo tenéis que tener claro los cambios para los que se necesita tener privilegios de administrador y no, para colocar la directiva en equipo o en usuario.

Espero que os sirva

Saludos!

Vista Tip Básico: Exportar configuración de Windows Firewall

Estándar

Una vez configurado nuestro Firewall para bloquear el puerto TCP 1214 y aceptar comunicaciones procedentes de la aplicación Office Communicator, procederemos a exportar la configuración del Firewall, para después poder importarla a cuantas máquinas queramos.

Estando en la consola de administración del Firewall de Windows Vista, procederemos a exportar la configuración, pulsando en Export Policy, tal y como aparece en la imagen

ExportPolicy

Podemos salvar las políticas en nuestro servidor, para tener un mayor control sobre ellas.

ExportPolicy2

Acto seguido podemos ir máquina por máquina e importar la configuración. Lo único que tendremos que hacer es pulsar en Import Policy, tal y como viene en la imagen

ImportPolicy

Una vez importadas las directivas del Firewall, el asistente nos avisará de que las políticas han sido importadas correctamente

ImportedPolicy2

Y lo único que nos queda por hacer, es comprobar que las políticas están ahí

Test

Test2

Recordad que todo esto también se puede realizar si estuviésemos bajo un controlador de dominio, pero esto ya lo veremos más adelante…

Vista Tip Básico: Configurar Windows Firewall

Estándar

En este pequeño tip podréis ver lo dificilísimo que es configurar un par de reglas en el nuevo firewall de Windows Vista.

Escenario: Tienes a tu cargo una red de unos 20 equipos, todos ellos bajo un controlador de dominio. Necesitas instalar una aplicación llamada Microsoft Office Communicator en uno de los equipos, y para ello también debes asignarle una regla de acceso al firewall. La aplicación está alojada en el controlador de dominio, y su ruta es \\DC1\Sources\communicator.msi También te han pedido que debes bloquear el puerto TCP 1214, correspondiente a una aplicación P2P, la cual está terminando con el ancho de banda de tu red.

Como primer paso vamos a ir a una de las máquinas cliente, y en la caja de texto de búsqueda escribimos la ruta de instalación de la aplicación Office Communicator, tal y como está en la imagen:

Start Search

Acto seguido nos saldrá el asistente de instalación de la aplicación. Como buen msi que es, no tiene mayor dificultad que ir siguiendo los pantallazos que nos va indicando.

Office Communicator

Una vez que esté la aplicación instalada, salimos de la sesión y nos logueamos como administrador local de la máquina.

LogOnVista

Y buscamos una consola de administración (Microsoft Management Console) para poder cargar nuestro Firewall.

SearchMMC

Al querer abrir una consola de administración, el UAC (Control de cuentas de usuario) salta diciéndonos que para toda acción que pueda cambiar el sistema. Esta es una de las nuevas funcionalidades de Windows Vista. El sistema cumple el principio del menor número de privilegios posibles al lanzar una aplicación, sea el perfil que sea.

UAC

Pulsamos en Aceptar (Continue) y acto seguido se nos abrirá una bonita consola de administración, en la cual podremos añadir o quitar funcionalidades. Nosotros agregaremos la consola de administración de Firewall. Pulsamos en Archivo –> Agregar o quitar complemento y añadimos la consola de Firewall, tal y como viene en la imagen.

snap-ins Firewall

Firewall Vista

Con la consola de Firewall funcionando, crearemos una regla de acceso de entrada (Inbound Rule), y lo haremos de la siguiente manera:

Pulsaremos en Inbound Rule, y en la parte de la derecha de la consola, pulsaremos en New Rule (Añadir regla). Nos saldrá un asistente de creación de reglas de entrada.

Inbound Rule

Como vamos a crear una regla para una aplicación específica, crearemos la regla para un programa, tal y como aparece en la imagen superior. Pulsamos en Next.

Inbound Rule 2

Esta parte del asistente nos preguntará a qué aplicación le va a afectar esta regla. Tan sólo tendremos que poner la ruta en donde se encuentra la aplicación. Pulsamos Next.

Inbound Rule 3

Nos pregunta qué deseamos hacer con esta regla. Permitir, denegar, permitir bajo unas condiciones seguras, etc.. Nosotros marcaremos permitir todas las conexiones. Pulsamos Next.

Inbound Rule 4

A qué tipo de escenario va a afectar la regla? Como es un portátil, y sabemos que el que lo va a utilizar va a tener cierta movilidad, marcaremos los 3 escenarios posibles, dominio, red privada y red pública. Pulsamos Next.

Inbound Rule 5

Nos pide un nombre para la regla. En este caso he puesto Office Communicator, para no perderme. Pulsamos en Finish y tendremos nuestra regla creada!

Segunda parte

Tenemos que bloquear un determinado puerto TCP, por lo que crearemos una regla de salida para un puerto determinado. Esta vez pulsaremos con el ratón el apartado Outbound Rules y en la parte de la derecha pulsaremos New Rule. Nos saldrá un asistente parecido al anterior, pero esta vez de salida.

Outbound Rule

Como es un determinado puerto el que vamos a «capar», marcaremos la opción Port. Pulsamos Next.

OutBound Rule 2

El asistente nos preguntará si el puerto es TCP o UDP, si la regla se aplica a todos los puertos o a alguno en específico. Sabemos que el número de puerto es el 1214 y es un puerto TCP. Marcamos las opciones y pulsamos Next.

Outbound Rule 3

La siguiente parte es para preguntarnos qué debemos hacer. Como queremos bloquear ese puerto, pulsamos Block. Acto seguido pulsamos Next.

OutBound Rule 4

Esta parte del asistente nos preguntará a qué tipo de escenario se le va a aplicar la regla. Marcaremos los 3 posibles y pulsaremos Next.

OutBound Rule 5

Definimos un nombre para la regla listo! Tenemos nuestra regla de salida configurada!!

OutBound Rule 6

How To: Bloquear lista de Webs en ISA 2006

Estándar

En esta ocasión veremos lo difícil y complicado que resulta bloquear una lista de Webs a los usuarios de nuestro dominio con ISA Server 2006.

En primer lugar, accederemos al administrador del servidor ISA Server, tal y como aparece en la imagen

Administrador del Servidor

 

Una vez que accedamos a la consola de administración, nos situaremos en la pestaña directiva de firewall. Una vez que accedamos a dicha pestaña, nos debe de aparecer en la parte derecha de nuestra consola, tres pestañas más, las cuales son Herramientas, Tareas y Ayuda. Tipearemos sobre la pestaña Herramientas, buscaremos el folder Conjunto de direcciones URL, y con el botón derecho del ratón, marcaremos la opción Importar todos, tal y como se muestra en la imagen siguiente

 ImportUrlsISA

Acto seguido nos saldrá el asistente para importación que nos ofrece ISA Server. 

 Asistente Importación ISA Server

Para que vayáis probando, he modificado la lista de Webs que ofrece el artículo escrito por Greg Mulholland y publicado en la Web isaserver.org. El artículo original, escrito y diseñado para ser utilizado en ISA Server 2004 está aquí:

http://www.isaserver.org/articles/2004firewallblocklist.html

Este archivo XML está modificado para ser utilizado en ISA Server 2006

BlackList (Guardar destino como…)

Una vez importada nuestra lista maligna de URLS, procederemos a crear la regla pertinente. Para ello, nos dirigiremos nuevamente sobre directiva de firewall, y con el botón derecho del ratón pulsaremos Nuevo -> Regla de acceso

Regla de Acceso

El funcionamiento de una regla de acceso es muy sencillo, y podremos «complicarlo» tanto como queramos.

El primer paso del asistente es crear un nuevo nombre para esa regla de acceso. Yo por ejemplo la he llamado DenyUrlList.

La segunda acción de la regla nos permite elegir entre si queremos permitir o denegar dicha función. Como no queremos que estas Webs sean accesibles desde nuestro domain, pulsaremos en denegar.

Protolos seleccionados. Aquí cada maestrillo tiene su librillo :). Depende de lo que tengamos en esta lista de Webs, podremos elegir uno u otro. En esta regla he elegido tanto HTTP, como HTTPS como FTP. Tan solo tendremos que agregar los protocolos que consideremos necesarios y que afecten directamente a la lista de URLS que tengamos.

 Protocolos Seleccionados

La siguiente pregunta que nos formulará el asistente es cómo se va a aplicar la regla. La regla tiene un origen y un destino. Como no queremos que ningún usuario de nuestro domain pueda accesar lícita o ilícitamente a ninguna de estas direcciones, el origen de nuestra regla es Toda la red interna (englobando tanto el host local como la red VPN si tuviésemos alguna), así que nos quedaría de la siguiente forma:

 Origen de la regla

Y la regla la aplicamos cuando nuestras peticiones internas sean enviadas a las direcciones que tengamos en nuestra lista negra. Con lo que nos quedaría:

 BlackList

Para quién es válida esta regla? Depende de cómo tengamos configurado nuestro ISA pondremos una lista de usuarios, todos los usuarios, todos los autenticados, etc..

En mi caso, ya que mi ISA está bajo un dominio, y quiero que todos los usuarios del dominio no accedan a este tipo de URLS, he puesto, todos los usuarios autenticados.

Finalizaremos el asistente, actualizaremos nuestras reglas de acceso y acto seguido podréis comprobar y hacer las pruebas pertinentes con la regla de acceso.

Con este tip pretendo también que comprobéis lo fácil que le resultaría a un administrador de ISA 2004, migrar a ISA 2006. El funcionamiento es básicamente idéntico al anterior, como podréis comprobar leyendo el artículo de isaserver y este conjuntamente.

Y dicho lo dicho… Todavía os parece difícil securizar vuestra red? La tecnología está ahí.. Y ya no puedes decir que no sabes hacerlo… 🙂

1Saludo!

Cambiar permisos desde línea de comandos

Estándar

Imaginemos esta situación.
Hemos iniciado una sesión en Windows bajo una cuenta con permisos mínimos, llamada User10, y necesitamos cambiar los permisos del archivo C:\Conta\Conta2007.xls para poder escribir en él.
Lo primero que se nos ocurre es tener que cerrar la sesión, iniciar con una cuenta administrativa, cambiar los permisos en modo gráfico, cerrar la sesión, iniciarla de nuevo con la cuenta sin privilegios y poder escribir en el archivo, no? Qué rollo verdad??
Seguro que hay alguno de por aquí que me esté leyendo que lo quiere hacer al estilo Unix y hacerlo desde línea de comandos ehh? Estaría chulo verdad? Pues se puede! 😉
Windows incorpora un comando nativo llamado CACLS, y no es más que una herramienta que muestra o modifica la lista de control de acceso DACL.
Para realizar esta acción, tan sólo tendríamos que realizar dos pasos:

1) Iniciar una consola de comandos en modo administrador
2) Ejecutar la sintaxis del comando CACLS

Para el primer paso ejecutaremos una consola de comandos (cmd.exe) con credenciales administrativas, utilizando la herramienta nativa de Windows RunAs, con lo que nos quedaría:

runas /user:administrador cmd

Tipeamos la password de administrador y…. Vualá!! Tenemos shell con credenciales administrativas!

El siguiente paso es muy sencillo también, y para añadir a nuestro usuario (user10) a la lista de control de acceso, y con permiso de escritura, utilizaremos la siguiente sintaxis:

cacls «C:\Conta\Conta2007.xls» /E /G user10:W

Acto seguido, Windows procesará el comando y el archivo, y tendremos nuestro archivo listo para escribir en él y modificar cambios.
Una vez hayamos terminado, podemos utilizar el mismo método a la inversa, y dejar los cambios tal y como estaban.

1Saludete!