Tag Archive | análisis

Empezando con el análisis de malware

Hola!

Muy buenas a todos/as!

Desde que entré a trabajar en el departamento de ecrime en S21Sec sabía que me acabaría tocando analizar malware. Es algo que me tenía bastante intrigado, pues pensaba que solo se basaría en hacer Ingeniería inversa. Y eso me daba pánico, porque es algo que no he echo en mi vida y ya os aseguro que viendo algún compañero de la empresa como lo realiza..da miedo… jeje.

Los primeros pasos que hice para analizar un  malware es hacer un análisis de comportamiento del mismo, esto se puede hacer por ejemplo desde una máquina virtual y con un Wireshark capturando el tráfico desde fuera, siempre y cuando el Malware en cuestión no tenga una protección de las que detecta que está siendo ejecutado en una máquina virtual. demás existen software que protegen el ejecutable los llamados packers que dificultan el análisis del binario mediante ingenría inversa, pero eso ya lo veremos mas adelante. En este blog ya he analizado algún que otro Malware viendo que conexiones hacía que ficheros de sistema cambiaba etc..

De eso se trata en parte un análisis de comportamiento de Malware. Yo para la gente que quiera empezar lo haría así:

  1. Tener una máquina virtual Windows en Host-Only, preferiblemente.
  2. Tener instalado InstallRite en la máquina virtual.
  3. Tener capturando la actividad de la tarjeta de red con Wireshark

Estos 3 pasos básicos ya nos pueden dar una idea de que hace el malware en cuestión.

Si recordamos el artículo de analizando morto, la cantidad de conexiones que hacía el troyano, vuelvo a poner la imagen que tenía en el artículo:

Y los cambios que hacía en sistema, por ejemplo con InstallRite

 

Este artículo de hoy es para comentar dos cosas, la primera es que para los que quieran empezar a hacer análisis de malware no os preocupéis si no sabéis hacer ingeniería inversa, aunque os animo a que aprendáis si os vais a querer dedicar, lo segundo es que analizando como se comporta el troyano en si ya sabemos cual es su modus operandi, si el malware se actualiza, de donde etc..

Así que ánimos

Saludos

 

Analizando un dominio malicioso

Hola!

Muy buenas a todos/as!

En el día de hoy, vamos a analizar un dominio malicioso, y ver como funcionan este tipos de dominios para cometer robos de cuentas de mensajería instantánea, envío de mensajes SPAM, estos fraudes ocurren normalmente por correo electrónico y suelen llevar mensajes llamativos del estilo, “Traidores del MSN” o “Descubre quien te ha eliminado del MSN”

Este tipo de estafas además vienen siempre de la invitación de uno de tus contactos y es, en ese momento cuando para el usuario final es fácil caer en este tipo de estafas.

A nuestro buzón de correo nos puede llegar un correo del tipo:

Este tipo de correos a mi no me suelen causar ninguna confianza…

Si copiamos el contenido del enlace, nos lleva a:

http://zeppelinbv.nl/redir.html?inv=email@hotmail.com

Si observamos la URL le pasa como parámetro la URL del correo desde el que te llego la invitación.

Si nos bajamos el archivo redir.html, esto contiene:

seifreed$ more redir.html\?inv\=email\@hotmail.com
<meta http-equiv=”refresh” content=”0;url=http://www.tu-msn.info/index.html”>

Podemos ver que en cuando la víctima visite la página enHTML redir.html será reenviado a tu-msn.info.

Si nos centramos en el primer dominio zeppelinbv.nl, podemos ver el whois asociado al dominio:

whois zeppelinbv.nl
Domain name: zeppelinbv.nl
Status: active

Registrar:
Qweb Internet Services B.V.
Piet Heinstraat 7
3115JC SCHIEDAM
Netherlands

Domain nameservers:
ns1.qweb.nl 217.18.64.241
ns1.qweb.nl 2a00:19c0:445:2::2
ns2.qweb.nl 217.18.68.241
ns2.qweb.nl 2a00:19c0:1255:2::2

Si miramos que servicios tiene asociados

PORT STATE SERVICE REASON
21/tcp open ftp syn-ack
53/tcp open domain syn-ack
80/tcp open http syn-ack
110/tcp open pop3 syn-ack
143/tcp open imap syn-ack
995/tcp closed pop3s conn-refused
3306/tcp open mysql syn-ack
3389/tcp open ms-term-serv syn-ack

Servicio de email de  base de datos y hasta escritorio remoto!

Este es el servidor que se usa para los emailings y luego otro para cometer el fraude.

Si miramos la web de Robtex sólo nos cataloga 1 como web maliciosa

http://www.robtex.com/dns/zeppelinbv.nl.html?tab=blacklists

Si miramos que directorios tienen en el servidor podemos ver:

http://zeppelinbv.nl/Stats/
==> DIRECTORY
+ http://zeppelinbv.nl/cgi-bin/
==> DIRECTORY
+ http://zeppelinbv.nl/cgi-bin/
(FOUND: 403 [Forbidden] – Size: 218)
+ http://zeppelinbv.nl/images/
==> DIRECTORY
+ http://zeppelinbv.nl/stats/
==> DIRECTORY

Encima que te envían SPAM, generan estadísticas….

Ahora nos dirigimos al otro dominio tu-msn.info

Este dominio es al que el usuario accedería una vez visitado el enlace que llega por correo.

Tiene  varios servicios abiertos

PORT STATE SERVICE REASON
22/tcp open ssh syn-ack
80/tcp open http syn-ack
111/tcp open rpcbind syn-ack

Este dominio además el servidor está alojado en rusia y eso no me da muy buena espina :P

Si introducimos nuestro correo electrónico y el password conectará con Hotmail para enviar un correo a todos nuestros contactos.

Si miramos el whois

Domain ID:D44217103-LRMS
Domain Name:TU-MSN.INFO
Created On:23-Nov-2011 13:21:10 UTC
Last Updated On:23-Nov-2011 13:24:17 UTC
Expiration Date:23-Nov-2012 13:21:10 UTC
Sponsoring Registrar:Key-Systems GmbH (R124-LRMS)
Status:TRANSFER PROHIBITED
Status:ADDPERIOD
Registrant ID:JUM2383034204
Registrant Name:Juan Manuel Martinez
Registrant Organization:
Registrant Street1:Av. Mayo 217
Registrant Street2:
Registrant Street3:
Registrant City:Capital Federal
Registrant State/Province:
Registrant Postal Code:1581
Registrant Country:AR
Registrant Phone:+54.91145681112
Registrant Phone Ext.:
Registrant FAX:
Registrant FAX Ext.:
Registrant Email:analizadorcontactos@gmail.com
Admin ID:JUM2383034204
Admin Name:Juan Manuel Martinez
Admin Organization:
Admin Street1:Av. Mayo 217
Admin Street2:
Admin Street3:
Admin City:Capital Federal
Admin State/Province:
Admin Postal Code:1581
Admin Country:AR
Admin Phone:+54.91145681112
Admin Phone Ext.:
Admin FAX:
Admin FAX Ext.:
Admin Email:analizadorcontactos@gmail.com
Billing ID:JUM2383034204
Billing Name:Juan Manuel Martinez
Billing Organization:
Billing Street1:Av. Mayo 217
Billing Street2:
Billing Street3:
Billing City:Capital Federal
Billing State/Province:
Billing Postal Code:1581
Billing Country:AR
Billing Phone:+54.91145681112
Billing Phone Ext.:
Billing FAX:
Billing FAX Ext.:
Billing Email:analizadorcontactos@gmail.com
Tech ID:JUM2383034204
Tech Name:Juan Manuel Martinez
Tech Organization:
Tech Street1:Av. Mayo 217
Tech Street2:
Tech Street3:
Tech City:Capital Federal
Tech State/Province:
Tech Postal Code:1581
Tech Country:AR
Tech Phone:+54.91145681112
Tech Phone Ext.:
Tech FAX:
Tech FAX Ext.:
Tech Email:analizadorcontactos@gmail.com
Name Server:NS3.GRATISDNS.DK
Name Server:NS2.GRATISDNS.DK
Name Server:NS1.GRATISDNS.DK
Name Server:NS4.GRATISDNS.DK
Name Server:NS5.GRATISDNS.DK
Name Server:
Name Server:
Name Server:
Name Server:
Name Server:
Name Server:
Name Server:
Name Server:

Si buscamos un poco de información este registrador de dominio ha registrado otros dominios para el mismo fin, generando así una red de SPAM muy grande

 

Hemos visto que hay web que, pareciendo legítimas usan nuestros datos para cometer SPAM a nuestros contactos

 

 

a

Analizando Morto

Hola

Muy buenas a todos/as!

Hace ya días que se tuvo la noticia del gusano Morto, este gusano tiene la característica poder atacar a aquellos sistemas que tienen una contraseña demasiado débil.

Podemos ver el resumen de lo que hace el virus en la web de Microsoft.

Conseguí una muestra del malware para ver como trabajaba y pude aprender un poco mas de las cosas que hacía, para hacer el análisis usé VMWare, Wireshark, virus total, ping, install rite.

Ejecutamos el malware en la máquina virtual y con Wireshark podemos ver las conexiones que realiza el gusano en cuestión.

Aquí podemos ver las diferentes conexiones que hace Morto. Ahora también gracias a Install rite podremos ver los cambios que ha echo a nivel de sistema operativo.

Podemos ver los diferentes cambios que ha echo Morto en el sistema operativo.

Aquí vemos los cambios respecto al registro.

Aquí vemos mas cambios del registro

Respecto a las modificaciones a nivel de sistema de archivo y registro no hace falta explicar nada mas.

En cuanto a las conexiones podemos ver que Morto intenta conectarse con el dominio

qsfl.net, si intentamos acceder no responde. Si miramos el whois del dominio, podemos ver que el dominio es de origen chino.

Datos del Whois

Ya que el dominio no resuelve, miramos directamente la primera IP que aparece en Wireshark a la que intenta acceder.

La primera IP tiene apartado web accesible:

Podemos ver dos archivos para bajar, uno de 10MB y otro de 100MB.

Si miramos el Whois del sitio podemos ver que es de origen Panameño.

Whois 190.211.253.2

Si miramos los servicios que hay en esa dirección podemos ver que tiene asociados varios servicios

Starting Nmap 5.51 ( http://nmap.org ) at 2011-10-02 01:24 CEST
Nmap scan report for dns01.privatelayer.com (190.211.253.2)
Host is up (0.25s latency).
Not shown: 990 filtered ports
PORT      STATE SERVICE
53/tcp    open  domain
80/tcp    open  http
139/tcp   open  netbios-ssn
3389/tcp  open  ms-term-serv
49152/tcp open  unknown
49153/tcp open  unknown
49154/tcp open  unknown
49156/tcp open  unknown
49157/tcp open  unknown
49158/tcp open  unknown

Podemos ver que hay un servicio de terminal server escuchando en esa dirección IP

El archivo descargado de la anterior web no sabemos lo que, es por lo tanto lo hemos pasado por un analizador de malware online, en esto caso Virus Total.

Report Virus Total

No hemos sacado nada en claro de lo que es ese archivo.

La segunda IP que encontrábamos era 198.153.194.1, esta IP pertenece a Symantec es una DNS pública para que la gente la use.

La siguiente Ip que teníamos registradas que había aparecido en el análisis de la red era 203.128.7.10, si miramos de donde viene vemos que pertenece a un service provider de Pakistan

Whois 203.128.7.10

La siguiente Ip que nos aparecía 203.172.246.41, esta ip si miramos el whois pertenece al Ministerio de Educación, podemos ver los datos aquí.

Whois 203.172.246.41

Los servicios habilitados en esta IP són:

Starting Nmap 5.51 ( http://nmap.org ) at 2011-10-02 09:25 CEST
Nmap scan report for 203.172.246.41
Host is up (0.48s latency).
Not shown: 997 filtered ports
PORT    STATE  SERVICE
22/tcp  open   ssh
53/tcp  open   domain
631/tcp closed pip

La siguiente Ip es 203.236.43.5, si volvemos ha seguir el rol de antes, miramos el whois de la IP, en este caso vemos que pertenece a Korea.

Whois 203.236.43.5

La IP no tiene puertos abiertos

La siguiente IP es 205.171.2.65 esta IP pertenece a la empresa Qwest de origen estadounidense.

Whois 205.171.2.65

No tiene servicios asociados tampoco.

La siguiente Ip a analizar es 205.171.3.65

Whois 205.171.3.65

Esta IP también pertenece a la empresa americana Qwest.

Tiene los siguientes servicios

Starting Nmap 5.51 ( http://nmap.org ) at 2011-10-02 16:29 CEST
Nmap scan report for resolver1.qwest.net (205.171.3.65)
Host is up (0.12s latency).
Not shown: 997 closed ports
PORT    STATE    SERVICE
53/tcp  open     domain
135/tcp filtered msrpc
445/tcp filtered microsoft-ds

Ya tenemos los servicios asociados.

Ahora seguiremos mirando la siguiente dirección IP se trata de 205.210.42.205 se trata de un SecureDNS y nos resuelve en DNSresolvers. La información del Whois lo podemos ver en:

Whois 205.210.42.205

Los servicios asociados són:

Starting Nmap 5.51 ( http://nmap.org ) at 2011-10-02 17:09 CEST
Nmap scan report for cache1.dnsresolvers.com (205.210.42.205)
Host is up (0.20s latency).
Not shown: 995 filtered ports
PORT    STATE  SERVICE
22/tcp  open   ssh
25/tcp  open   smtp
53/tcp  open   domain
80/tcp  closed http
443/tcp closed https

Seguimos con la siguiente dirección IP.

La siguiente dirección IP es 206.141.192.60, esta IP pertenece a Ameritech Electronic Commerce.

Whois 206.141.192.60

Los servicios asociados son:

Starting Nmap 5.51 ( http://nmap.org ) at 2011-10-02 17:11 CEST
Nmap scan report for dns1.chcgil.sbcglobal.net (206.141.192.60)
Host is up (0.18s latency).
Not shown: 999 filtered ports
PORT   STATE SERVICE
53/tcp open  domain

Ahora miramos la siguiente dirección IP, se trata de 208.67.220.220. Se trata de otra IP de resolución de DNS.

Whois 208.67.220.220

Los servicio que hay corriendo :

Starting Nmap 5.51 ( http://nmap.org ) at 2011-10-02 17:16 CEST
Nmap scan report for resolver2.opendns.com (208.67.220.220)
Host is up (0.11s latency).
Not shown: 999 filtered ports
PORT   STATE SERVICE
53/tcp open  domain

Vamos a mirar el siguiente dominio, la IP es 210.141.112.163. Si miramos la procedencia, podemos ver que es Japonés, además parece ser que es un servicio de free address que ofrecen.

Whois 210.141.112.163

Los servicios asociados son:

Starting Nmap 5.51 ( http://nmap.org ) at 2011-10-02 17:26 CEST
Nmap scan report for bind1.dion.ne.jp (210.141.112.163)
Host is up (0.33s latency).
Not shown: 999 filtered ports
PORT   STATE SERVICE
53/tcp open  domain

La siguiente IP también pertenece al servicio Free Address japonés.

Whois 210.196.3.183

Los servicios asociados son:

Starting Nmap 5.51 ( http://nmap.org ) at 2011-10-02 17:33 CEST
Nmap scan report for bind.dion.ne.jp (210.196.3.183)
Host is up (0.37s latency).
Not shown: 999 filtered ports
PORT   STATE SERVICE
53/tcp open  domain

La siguiente IP con la que vamos a tratar es de Georgia, y echando un vistazo tiene mas servicios asociados.

Whois 213.131.34.2

Si miramos lo servicios nos encontramos:

Starting Nmap 5.51 ( http://nmap.org ) at 2011-10-02 17:35 CEST
Nmap scan report for acc.wanex.net (213.131.34.2)
Host is up (0.16s latency).
Not shown: 993 filtered ports
PORT     STATE  SERVICE
53/tcp   open   domain
2323/tcp closed 3d-nfsd
4662/tcp closed edonkey
6346/tcp closed gnutella
6699/tcp closed napster
6881/tcp closed bittorrent-tracker
7778/tcp closed interwise

Parece ser que esta máquina hace mas funciones que las máquinas que nos hemos encontrado antes.

Miramos la siguiente dirección IP, se trata de 4.2.2.1. Esta IP pertenece a

Si miramos en robtex esta IP aparece que está en una blacklist. La IP pertenece a un ISP.

Whois 4.2.2.1

También tiene varios servicios asociados a esa IP

Starting Nmap 5.51 ( http://nmap.org ) at 2011-10-02 17:49 CEST
Nmap scan report for vnsc-pri.sys.gtei.net (4.2.2.1)
Host is up (0.053s latency).
Not shown: 984 closed ports
PORT      STATE    SERVICE
22/tcp    open     ssh
53/tcp    open     domain
111/tcp   open     rpcbind
135/tcp   filtered msrpc
179/tcp   open     bgp
445/tcp   filtered microsoft-ds
1002/tcp  open     windows-icfw
1121/tcp  filtered rmpp
2001/tcp  open     dc
2042/tcp  filtered isis
3000/tcp  filtered ppp
3006/tcp  filtered deslogind
5030/tcp  filtered surfpass
5730/tcp  filtered unieng
7100/tcp  open     font-service
32771/tcp open     sometimes-rpc5

Y miramos la última IP que obteníamos con Wireshark

La IP en cuestión es 64.68.200.200, los datos del Whois son:

Whois 64.68.200.200

Y os servicios asociados son:

Starting Nmap 5.51 ( http://nmap.org ) at 2011-10-02 18:00 CEST
Nmap scan report for cache2.dnsresolvers.com (64.68.200.200)
Host is up (0.15s latency).
Not shown: 970 closed ports, 28 filtered ports
PORT   STATE SERVICE
22/tcp open  ssh
53/tcp open  domain

Es una IP que vuelve a pertenecer a DNSresolvers de Canada.

Seguimos con la lista de Ip’s a las que Morto va intentando conectarse.

En este caso se trata de una IP de Hong Kong

Whois 111.68.13.250

Si miramos los servicios levantados

Nmap done: 1 IP address (1 host up) scanned in 52.37 seconds
darkforest:Downloads seifreed$ nmap -P0 111.68.13.250

Starting Nmap 5.51 ( http://nmap.org ) at 2011-10-02 18:12 CEST
Nmap scan report for 111.68.13.250
Host is up (0.40s latency).
Not shown: 988 closed ports
PORT     STATE    SERVICE
21/tcp   open     ftp
135/tcp  filtered msrpc
443/tcp  filtered https
445/tcp  filtered microsoft-ds
1026/tcp open     LSA-or-nterm
1031/tcp filtered iad2
1123/tcp filtered murray
1723/tcp open     pptp
3389/tcp open     ms-term-serv
8080/tcp filtered http-proxy
8081/tcp filtered blackice-icecap
8082/tcp filtered blackice-alerts

La siguiente IP pertenece a Taiwan

Whois 168.95.1.1

Los servicios levantados son

Starting Nmap 5.51 ( http://nmap.org ) at 2011-10-02 18:18 CEST
Nmap scan report for dns.hinet.net (168.95.1.1)
Host is up (0.40s latency).
Not shown: 999 filtered ports
PORT   STATE SERVICE
53/tcp open  domain

Ya tenemos todas las Ip analizadas y los servicios que corren en cada una de ellas.

Parece ser que Morto intenta contactar con diferentes localizaciones , además de usar DNS gratuítos para hacer la resolución de nombres que necesita. Algunos de los servidores con los que contacta Morto, tienen el servicio RDP activado, además de tener mas servicios como el Bitorrent o el Emule. En la siguiente entrega se intentara buscar mas información relacionada con estas IP, además de intentar averiguar que es ese archivo que nos encontramos en la primera IP que estábamos analizando.

Espero que os haya gustado

PeePDF análisis de PDF

Hola!

Muy buenas a todos/as!

En la rooted-con se presentó PeePDF una herramienta para en análisis de PDF. Con esta herramienta tenemos todas las opciones posible de las que se necesitaría en un análisis de seguridad, además sin tener que usar distintas herramientas para llevarlo a cabo.

PeePDF podemos descargarlo de aquí

Yo he generado un PDF con Metasploit para hacer reverse_tcp y lo he analizado con PeePDF

root@backtrack:~/peepdf-read-only# python peepdf.py -f pocseifreed.pdf
Warning: Spidermonkey is not installed!!

File: pocseifreed.pdf
MD5: b8359e89a57a24f8e4f2b9512767a9e4
Size: 6577 bytes
Version: 1.5
Binary: True
Linearized: False
Encrypted: False
Updates: 0
Objects: 5
Streams: 0
Comments: 0
Errors: 1

Version 0:
Catalog: 1
Info: No
Objects (5): [1, 2, 3, 4, 5]
Streams (0): []
Suspicious elements:
/OpenAction: [1]
/JS: [5]
/JavaScript: [5]

Esto es símplemente una vista rápida del documento.

PeePDF tienes muchas mas opciones, por ejemplo:

./peepdf.py -i

PPDF> help

Documented commands (type help <topic>):
========================================
bytes           errors   js_unescape  object     references    search
changelog       exit     jsanalyze    offsets    replace       set
create          filters  jscode       open       reset         show
decode          info     log          quit       save          stream
encode          js       metadata     rawobject  save_version  tree
encode_strings  js_join  modify       rawstream  sctest

No dejéis de probar esta herramienta.

Un saludo a todos