Está en la página 1de 25

Capítulo I

Footprinting

La utilización de estas herramientas de reconocimiento pertenece a la categoría de técnicas


pasivas ya que utilizan información pública y no interactúan directamente con el objetivo.

Estas evaluaciones son las que más se acercan al proceso que lleva adelante un atacante real, ya
que este no tiene conocimiento previo sobre la organización objetivo, más allá de su nombre. Por
esta razón, es fácil intuir que la fase de reconocimiento es la que más tiempo insume dentro de la
planificación de un ataque.

En esta etapa, el atacante busca definir al objetivo con el mayor nivel de detalle posible, y a partir
de eso, obtener la mayor cantidad de información.

Cuando nos centramos en las personas físicas, algunos ejemplos de información que podemos
obtener de ellas son direcciones de correo electrónico, direcciones postales, información personal,
etcétera. Desde la perspectiva corporativa, la información que se buscará obtener abarca
direcciones IP, resolución de nombres DNS, y otros datos. En esta etapa, también denominada
Information Gathering (recopilación de información), el atacante se basa en distintas técnicas para
llevarla a cabo; las más utilizadas son footprinting, ingeniería social y dumpster diving o trashing.

En el presente capítulo nos centraremos en el footprinting, en tanto que la ingeniería social será
analizada en detalle en un próximo video.

Una herramienta fundamental, y que se encuentra al alcance de cualquier persona con acceso a
Internet, son los buscadores de información online, como Google, Bing, DuckDuckGo, Yahoo o
cualquier otro más específico. En este caso, es imprescindible conocer en detalle las características
avanzadas de búsqueda. Por ejemplo, para Google, algunas de ellas son: site:, intitle:, allinurl:, y
otras.

Por otro lado, como veremos posteriormente, existe una gran cantidad de recursos con
herramientas online que permiten obtener información para usar en futuras fases del ataque. Por
ejemplo, a partir de la información publicada en el sitio web de una empresa, en general es posible
deducir el patrón de las direcciones de correo electrónico correspondiente (como
nombre.apellido@organizacion.com). También, en muchos casos, dependiendo de la política de la
organización, se puede encontrar el organigrama, con la clasificación de las áreas internas, los
nombres de los gerentes y diversa información que, luego de un proceso de correlación, permite
armar un mapa bastante rico con solo recorrer minuciosamente el sitio web corporativo.

Por otro lado, a partir de la masificación de las redes sociales y todo el potencial que ofrecen,
desde el punto de vista tanto de la comunicación interpersonal como de negocios, estas también
se han convertido en otro vector de relevamiento de información. Hoy en día, es muy común que
las personas tengan perfiles en Twitter, LinkedIn, Facebook o cualquier otra red social. Con esto, si
uno de nuestros objetivos es relevar información de empleados, ¿qué mejor fuente para hallarla
que las redes sociales?

Cuanta más información obtengamos, más posibilidades de lanzar un ataque exitoso tendremos.
Las fuentes más comunes para relevar la información relacionada con direcciones IP y datos
técnicos incluye el uso de herramientas propias, ofrecidas por el sistema operativo, por ejemplo,
whois, traceroute, dig y también nslookup. Adicionalmente, una de las técnicas más utilizadas es la
enumeración DNS (Domain Name System), la cual tiene por objetivo ubicar todos los servidores
DNS y sus registros dentro de una organización. Esta podría tener servidores DNS internos y
externos, los cuales brindarían distintos tipos de datos del objetivo. Recordemos que una
herramienta disponible en Parrot Security que nos permite llevar adelante esta técnica es la
llamada Fierce.

Fierce –dns nebrija.es

Veremos que fierce realiza diversas pruebas al dominio. En primer lugar, obtiene los servidores
DNS del sitio. Luego, intenta explotar una vulnerabilidad presente en algunos servidores DNS
denominada transferencia de zonas DNS o DNS Zone Transfer. Este ataque permite obtener una
lista completa de todos los hosts registrados en la zona de un servidor DNS. La transferencia de
zonas es necesaria solamente entre los servidores DNS y los clientes autorizados; en el resto de los
casos no debe estar permitida.

Si un servidor está mal configurado, un atacante, sin utilizar ninguna herramienta más que las
propias del sistema operativo (dig o nslookup), podría aprovechar esa configuración deficiente y
copiar la lista completa de hosts. Para conocer más sobre este ataque, el lector puede realizar una
búsqueda en Internet para profundizar sus conocimientos. Finalmente, Fierce aplica la técnica de
fuerza bruta para enumerar subdominios. Esto quiere decir que, a partir de una lista definida de
nombres comunes, empieza a consultar la existencia de cada uno de ellos en el dominio en
cuestión. Sabemos que algunos de los nombres más utilizados son www (www.dominio.com), mail
(mail.dominio. com) y ftp (ftp.dominio.com), entre otros.

Otra manera de relevar información relacionada son las consultas de whois. Whois es un protocolo
TCP que realiza consultas a un conjunto de bases de datos whois con el objeto de obtener
información de carácter administrativo disponible públicamente relacionada con los registros de
dominios de Internet. A partir de whois podemos recopilar información de registro de un
determinado dominio, como el nombre de la persona que realizó dicho registro, correo
electrónico, número telefónico y direcciones IP de sus principales servidores. Dependiendo del
caso, también es posible determinar cuál es el ISP (Internet Service Provider) de la organización.
Whois es una herramienta que ha evolucionado desde los comienzos de los sistemas UNIX hasta la
actualidad. Si bien suele usarse en modo consola, existen numerosos recursos online que realizan
consultas whois. En la próxima sección veremos algunos de ellos. Hasta ahora, hemos podido
relevar información sobre rangos de direcciones IP y subdominios asociados a una organización, e
información de registro de dominios. Si nos enfocamos en el objetivo de esta etapa, queremos
acercarnos lo más posible a armar un mapa de la red externa de una organización. Por lo tanto,
más allá de conocer la existencia de determinados dispositivos asociados a su dirección IP,
también sería interesante saber cuál es la disposición de estos. Por ejemplo, si la organización
dispone de un router o un firewall, seguramente dichos dispositivos estarán en un nivel anterior a
los servidores de correo, FTP, etc.

La herramienta que nos permite obtener esa información es traceroute. Esta nos permite
identificar el camino que sigue un paquete desde un equipo de referencia (que puede ser el del
atacante) hasta el objetivo. Así, en función del camino recorrido por el paquete, es posible obtener
información adicional acerca de la configuración de red de la organización, por ejemplo,
identificando routers, firewalls, etc. Si bien su funcionamiento está basado en el protocolo ICMP,
también existen implementaciones más modernas que utilizan el protocolo TCP.

Traceroute –T www.nebrija.es

También existen algunas herramientas gráficas, como Visual Route, que encontramos en
(www.visualroute.com/), las cuales, además, presentan la información de manera mucho más
intuitiva.

Desde el punto de vista de un atacante, éste siempre deberá conocer las direcciones IP, la
ubicación geográfica y el camino a través de Internet para llegar a su objetivo. Cada equipo
encontrado en la ruta hacia él puede ser fuente de gran cantidad de información para futuros
procesos.

La mayor parte de esta información puede obtenerse libremente y en forma completamente legal.

Si bien en Internet hay gran cantidad de información disponible, no toda es fácilmente accesible.
Esto hace que, como ya vimos, tengamos que apelar a nuestra creatividad y pericia al realizar
búsquedas avanzadas en los distintos buscadores. De esta forma nació el concepto de Google
Hacking, queh se basa en el uso de cadenas de búsqueda específicas tendientes a identificar
variada información, desde correos electrónicos y usuarios, hasta servidores con vulnerabilidades
conocidas e incluso cámaras de vigilancia que hayan sido publicadas en Internet. Sin embargo, hoy
en día Google no es el único motor que ofrece efectuar este tipo de búsquedas. Últimamente, Bing
también se ha posicionado como un buscador complementario para obtener información útil en la
etapa de recopilación. La posibilidad de aplicar el operador IP para buscar sitios dentro de una
dirección IP en particular, y el operador filetype –que a diferencia de Google identifica el
encabezado del archivo y no solo su extensión–, hace del buscador de Microsoft una fuente
complementaria a Google.

Mediante el Google Dork “Index of /” +passwd.txt

Una búsqueda realizada en Bing sobre la dirección IP correspondiente a www.nebrija.es .Vemos


que, a partir de esta simple consulta, complementamos la información recopilada mediante la
herramienta Fierce, e incorporamos nuevos subdominios que también podrían ser objetivo de
ataque.

Ip : XXXXXX de Nebrija

Mediante el BING Dork ip: 98.129.229.166, se obtienen todos los sitios web asociados a dicha
dirección IP.

A continuación, vemos un listado con distintos tipos de información que pueden obtenerse con
paciencia y ganas de experimentar:

•Detección de sistemas específicos.

•Servidores publicados en Internet con vulnerabilidades específicas.


•Usuarios, contraseñas y demás datos sensibles expuestos al público.

• Correos electrónicos e información sobre usuarios para el planeamiento exitoso de los ataques
de ingeniería social.

• Sitios de acceso a la administración de distintos dispositivos.

• Localización de exploits y objetivos.

Referencias sobre los dns:

https://blog.smaldone.com.ar/2006/12/05/como-funciona-el-dns/

https://digi.ninja/projects/zonetransferme.php

Definimos un Target

www.nebrija.es

Primera fase : Usando motores de búsqueda.

La mejor forma de obtener información pública de un servidor web es mediante los buscadores
más utilizados.

www.google.com

www.duckduckgo.com

www.bing.com

www.yahoo.com

Lo primero que se debe saber de una empresa es donde se encuentra ubicada para ello usaremos
servicios web de localización conocidos:

https://www.google.com/maps

http://wikimapia.org

https://www.bing.com/maps

Tambien tenemos a Shodan que es un buscador que no busca páginas Web, sino que encuentra
dispositivos conectados a Internet con configuraciones erróneas de seguridad.

A su vez también tenemos a Censys que de igual manera busca dispositivos conectados a internet.

https://www.shodan.io - ipv4

https://censys.io - ipv4
http://mrlooquer.com - ipv6

Google Hacking

Hacer uso de Dorks para posiblemente obtener:

- Productos vulnerables

- Ficheros que contienen claves

- Ficheros que contienen nombres de usuario

- Páginas con formularios de acceso

- Páginas que contienen datos relativos a vulnerabilidades

- Dispositivos hardware online

Haremos usos de algunas Google-Dorks básicas

Operadores de Búsqueda Avanzada

Info: Muestra información

Intitle: Mostrara sólo aquellas páginas que tienen el término indicado en su título.

Allintitle: Similar a intitle, pero busca todos los términos especificados en el título.

Inurl: Busca el término especificado en la url

Filetype: Busca tipos de archivos específicos

Ext: Similar al tipo de archivo. Ext

Intext: Busca el contenido de la página.

Related: Lista de webs que contienen contenido similar.

Más información de los Dorks.

La cantidad increíble de información continuamente filtrada en Internet, y por lo tanto accesible


por Google, es de gran utilidad para los crackers en todo el mundo. Llamadas Google-Dorks, que
exponen información confidencial, vulnerabilidades, contraseñas y mucho más.

http://www.googleguide.com/advanced_operators_reference.html

https://www.exploit-db.com/google-hacking-database

https://www.exploit-db.com/google-hacking-database-reborn

http://www.hackersforcharity.org/ghdb
http://www.onassol.org/2016/04/30/google-hacking-para-pentesters

Una vez realizado el reconocimiento con la dorks de google haremos uso de algunos servicios en
línea para buscar mayor información sobre los empleados.

https://www.linkedin.com

https://www.peoplesmart.com

http://www.ussearch.com

https://www.veromi.net

https://www.intelius.com

http://www.privateeye.com

http://www.411.com

https://www.peoplesearchnow.com

https://www.peoplefinders.com

http://backgroundchecks.org

https://pipl.com

http://www.yasni.com

http://com.lullar.com

Facebook :

https://stalkscan.com

https://stalkface.com

Reverse Image Search:

https://www.tineye.com
Obtener información sobre los dominios:

Existen servicios webs especializados en obtener

Consultas DNS.

Enumeración de dispositivos red.

Consultas de red.

Identificación de los sistemas operativos.

Consultas sobre la organización a la que pertenece el sistema.

Barridos ping.

Consultas de POC (punto de contacto administrativo).

Escaneo de puertos.

Consultas del registrador (consultas WHOIS).

Consultas SNMP.

Uso de arañas web

Algunos de estos servicios son:

www.netcraft.com

Entre la información obtenida se enumera; Información sobre la red, como dirección IP,
Propietario del Bloque de Red, Servidor de Nombre, Administrador de DNS, DNS Inverso,
Compañía de Hosting, Dominio de Nivel Superior y País de Hosting. Además un Historial de
Hosting. Tecnologías utilizadas en el Sitio en el lado del servidor y del cliente, Estadísticas Web,
Codificación de Caracteres, Tipo de Documento y Uso de CSS

www.whois.org

www.dnsstuff.com
WHOIS
Las bases de datos WHOIS mantienen detalles de direcciones IP registradas en 5 regiones del
Mundo. Estas bases de datos son manejadas por 5 organizaciones llamadas Regional Internet
Registry (RIR)

Las 5 bases de datos WHOIS están localizadas en:

América del Norte (ARIN)

América del Sur, América Central y el Caribe (LACNIC)

Europa, el medio Este y Asia Central (RIPE NCC)

Asia del Pacifico (APNIC)

Africa (AfriNIC)

Tipos de DNS Records:

A (address) – Dirección IP del Host

MX (mail exchange) – Dominio del mail exchanger

NS (name server) – Dominio del nombre del servidor

CNAME (canonical name) -- Provee nombres o alias adicionales para localizar una computadora

SOA ( start of authority) – Indica la autoridad para un dominio

TXT (text) – Record de texto genérico

7. HINFO (host info)– Información del Host con el tipo de CPU y OS

Otra contramedida es el archivo robots.txt, este archivo mantiene una lista de directorios y otros
recursos en el website donde el propietario no desea que data y áreas sensitivas sean indexadas
por los motores de búsqueda, como los scripts y localizaciones binarias. El archivo robots.txt está
localizado en el directorio raíz (root folder) y es compilado hacia todos los motores de búsqueda.

Ejemplo de un archivo robots.txt


User-agent: *

Disallow: /cgi-bin

Disallow: /cgi-perl

Disallow: /cgi-store

Otra opción es el “robots” “noindex, nofollow” de los meta tags, que le dice a los motores de
búsqueda no escanear o perseguir enlaces en una página especifica, pero los motores de
búsqueda no están obligados a obedecer la instrucción meta tag “robots”.

Se escribe así:

<meta name=”robots” content=”noindex, nofollow”>

thehavester: localizar emails

netcraft.com: informacion de dominio

whois/whois.net: informacion de dominio

nslookup: obtener IPs de un dominio. Dns.

dig: testear consultas DNS y reportes.

recon-ng: herramienta tipo metasploit, para busqueda de informacion del dominio

ACITVE – FINGERPRINTING

nmap: Busqueda de hosts y sus servicios en una red

Dnsrecon: permite la enumeración de DNS, puede verificar si el servidor dns tiene cacheada un
listado de dominios.

Sparta: es una aplicación GUI escrita en Python, con la cual nos simplifica las pruebas de
penetración en una determinada infraestructura de red y nos permite realizar diversas pruebas de
penetración en la fase de escaneo y enumeración. Estas cualidades permite al pentester ahorrar
tiempo en el momento de realizar una auditoria.SPARTA equivale a tener acceso a su caja de
herramientas en la cual nos muestra toda la producción de las herramientas de una manera
conveniente y ordenada. http://hackpuntes.com/sparta-la-caja-de-herramientas-del-pentester/

PROTOCOLO SMB
Nbtscan: busca servidores netbios (SMB) abiertos.

AccCheck: realizar conexiones con los recursos IPC$ y ADMIN$ (SMB) y probar combinaciones de
usuarios y contraseñas de un diccionario.

PROTOCOLO SMTP

Snmpcheck: enumerar información del servidor de correo.

SMTP–user–enum: enumerar usuarios de correo

Ncat: establecer conexión con el servidor SMTP

Swaks, medusa: enumerar correos

WEB

Whatweb, nikto: información del servidor web.

WPScan: wordpress

Joomlscan: joomla

Enumeración de directorios por fuerza bruta o diccionario: dirb, DirBuster


(https://www.owasp.org/index.php/Category:OWASP_DirBuster_Project) , wfuzz.

– SUITES

owasp: Suite para el analisis de paginas web. Contiene arañas, fuzzer, fuerza brurta de
directorios…
Burp Suite: http://www.sniferl4bs.com/p/guia-de-uso-de-burpsuite.html

BASES DE DATOS

sqlmap: ataques sqli.

jsql: busqueda de vulnerabilidad en una web, si la encuentra la explota en busca de la base de


datos.

Fingerprinting: Búsqueda de información de forma activa.

La serie de videos no pretenden ser una guía exhaustiva ni de las herramientas ni de los protocolos
nombrados.

DOXING

WayBackMachine
Wayback Machine es un servicio y una base de datos que contiene copias de una gran
cantidad de páginas o sitios de Internet
consultar la historia o modificaciones de las páginas a través del tiempo.
Sin embargo Wayback Machine está lejos de ser una copia completa de internet pues varios
sitios evitan su indexación y grabación de información, como por ejemplo usando el archivo
robots.txt con: User-agent: ia_archiver Disallow: /

¿Qué es Whois?
nos permitirán analizar ciertos datos del dominio objetivo como por ejemplo su dirección IP, los
subdominios que cuelgan del dominio principal, su registrador mediante consultas Whois, su
localización en mapas, trazas, servidores de DNS, etc.

Es una herramienta y un protocolo que identifica información de registración de un dominio. Esta


definido en el RFC 3912.

La organización ICANN requiere el registro de dominios para asegurar la unicidad de los mismos.
Las herramientas de whois recogen información sobre este registro oficial y obligatorio

En el caso de los dominios de alto nivel (.com, .org, .net, .biz, .mil, etc.) es usualmente el

ARIN (American Registry for Internet Numbers) quien guarda esta información en su base WhoIs;
pero en el caso de los dominios de países (.ve, .ec, .co, .us, .uk, etc.) quien guarda la información
normalmente es el NIC (Network Information Center) del país respectivo.

Esto nos demuestra la importancia de mantener esta información privada, porque si bien es cierto
que en el momento en que tenemos equipos dentro de la red perimetral que brindan un servicio
público, sus IP's también serán públicas, no hay por qué facilitarle tanto la vida al cracker dándole
a conocer fácilmente todos los rangos de direcciones que nos han sido asignados. Una
recomendación útil es pagarle al NIC respectivo para que mantenga nuestra información privada,
es decir, que no se publique en la base Who-IS. Este es un servicio que normalmente ofrecen los
NIC's por una suma anual bastante módica.

Whois es un protocolo TCP que permite realizar consultas a bases de datos y donde es posible
obtener información como el propietario de un dominio o dirección IP, el contacto administrativo,
el contacto técnico, etcétera. Tradicionalmente el acceso a las bases de datos de Whois se ha
realizado mediante línea de comandos en sistemas Unix. Hoy en día, existen además de estos
mecanismos, la posibilidad de realizarlo a través de servicios web y similares. A continuación,
puede verse cómo es posible obtener información de utilidad a través de estas bases de datos
para el proceso de Information Gathering:

La información que ofrece el protocolo Whois sobre un dominio es: - Información sobre el
registrador del dominio

Información sobre el contacto administrativo del dominio

Información sobre el contacto técnico

Información sobre servidores DNS asociados al dominio

DNS Cache Snooping

Mediante DNS cache Snooping53 podremos consultar a servidores DNS sobre determinados
dominios con el objetivo de saber si éstos ya han sido visitados desde la organización. Aunque
parezca algo inofensivo, puede ser realmente útil durante la labor de Information Gathering.
Conocer los bancos a los que se conectan los empleados de una organización resultará bastante
útil para planificar ataques de phishing posteriores. Lo mismo ocurre para vectores de ataques
tipo Spear Phishing, como el visto en el apartado 3, ya que, en determinadas ocasiones, será
posible deducir si utilizan determinado software consultando páginas de actualizaciones como las
de Adobe o Microsoft, acotando así el rango de exploits a utilizar.

Para llevar a cabo esta técnica existen dos posibles aproximaciones:

1. Por un lado, The Ecological Way (Non-Recursive Queries), que consiste en realizar
peticiones DNS deshabilitando la recursividad, de manera que si el resultado se encuentra
en la caché será devuelto. Con esto es posible determinar los dominios consultados en un
determinado servidor DNS y almacenados en la caché del mismo.
El siguiente ejemplo muestra una consulta a uno del los servidores DNS de Google
(8.8.8.8), para conocer si el dominio facebook.com está cacheado:
$dig @8.8.8.8 www.facebook.com A +norecurse

Del resultado de la consulta se obtiene el nombre de dominio así como la dirección con la
que lo resuelve. Este procedimiento se puede utilizar sobre cualquier caché DNS para
obtener un perfil de navegación de sus usuarios.

2. También es posible utilizar: The Polluting Way (Recursive Queries). En este caso, incluso
cuando se obliga a usar la recursividad, es posible «intuir» que el resultado de la petición
se encuentra cacheada. Para ello, se analizan los tiempos TTL tanto del servidor
autoritativo como del servidor DNS al que se pregunta. Cuando se obtiene la respuesta del
servidor DNS objetivo, el valor TTL que se recibe será el TTL original (prefijado por el
servidor autoritativo) menos el tiempo que dichos datos llevan cacheados. Por tanto,
obteniendo los valors TTL de ambos servidores, puede obtenerse el tiempo que ha
transcurrido desde que el servidor DNS objetivo preguntó al DNS autoritativo como
consecuencia de una consulta de algún cliente. Una desventaja principal de este método
es que por medio de las consultas se fuerza el cacheo de determinados dominios en el
servidor objetivo. Algunos servidores DNS devuelven valores TTL a 0 para evitar ofrecer
información sobre las queries cacheadas.

Algunas de las herramientas que utilizan ambos métodos para conseguir direcciones cacheadas
son cache_snoop.pl o el script NSE dns-cache-snoop

Nmap –PN –sU –p 53 –script dns-cache-snoop.nse –script-args “dns-cache-snoop.mode=time,dns-


cache-snoop.domains={facebook.com,cajaespana.es,bbva.es,meneame.net,exploit-db.com}” ns1.

Una alternativa a la línea de comandos es Foca. Ésta incluye un módulo DNS Cache Snooping54 al
que se le puede pasar un fichero con la lista de dominios que se quieren comprobar

Netcraft:
http://searchdns.netcraft.com/

Este servicio nos permitirá analizar los subdominios de un determinado dominio,


proporcionándonos datos como sus direcciones IP, Servidores Web, Sistemas Operativos, etc.

Cuwhois:
Entre los datos más interesantes que nos podrá aportar se encuentran la IP,

Servidores DNS, Registrador del dominio, País, Idioma, Lenguaje de programación del sitio Web,
codificación, modelo del Servidor Web, la posición en distintos rankings, feeds, incluso si comparte
servidor Web con otras páginas nos proporcionará un listado con sus vecinos.
DNS
A continuación se ofrece un listado de los registros y la información que éstos almacenan.

A continuación, revisaremos diferentes herramientas que nos permiten interrogar a los servidores
DNS para obtener información de estos registros.

Resolviendo nombres con nslookup - OBTENER INFORMACIÓN DE LOS DNS


En este ejemplo haremos una consulta de nombres usando el comando nslookup incluido en el CLI
de cualquier versión de Windows, Linux o Unix.

cuatro técnicas diferentes:

 Forzar transferencias de zona

 Resolución inversa (a partir de una IP) mediante la consulta a los registros PTR

Nslookup
set type = [ NS | MX | ALL ] permite establecer el tipo de consulta, NS servicio de nombres, MX
servicio de correo (mail exchanger) y ALL para mostrar todo.

Set type=NS

Nebrija.es
Set type=MX

ls [-a | -d] dominio permite enumerar las direcciones del dominio especificado (para ello el
servidor DNS de dicho dominio debe tener habilitada esta opción), -a nombres canónicos y aliases,
-d todos los registros de la zona DNS.

podemos observar que al establecer el tipo de consulta como NS, nos devuelve información
respecto a los servidores de nombres para el dominio en que se encuentra nuestro objetivo,
mientras que si la consulta es de tipo MX brinda además información acerca de quiénes son los
servidores de correo para dicho dominio. Cuando utilizamos la opción ALL obtenemos la
combinación de ambas consultas (NS + MX)

Que en realidad el dominio nmap.org está alojado en un servidor de hosting externo provisto por
la empresa Linode y, 2. Que el servicio de correo es provisto por el servidor mail.titan.net con IP
64.13.134.2, la cual está en un segmento de red diferente a la del servidor scanme.nmap.org.

Forzar transferencias de zona CON NSLOOKUP


Nslookup es una aplicación de línea de comandos que permite probar y solucionar problemas en
los servidores DNS.

Para comenzar os hemos dibujado un diagrama muy ilustrativo sobre cómo funcionan las zonas,
en él os mostramos nuestro dominio flu-project.com, con su nombre de dominio “flu-project”
dentro de la zona principal. Por otro lado tenemos tres subdominios “blog”, “www” y “ftp”
(hipotéticos), estos subdominios pueden configurarse dentro de la zona principal, o en otra
separada, como por ejemplo el caso del subdominio “ftp”, que estaría administrado por la zona
“prueba”.

Para que una zona nueva delegada de la principal, por ejemplo la zona prueba, funcione, es
necesario configurar algunos recursos, para que tenga información sobre la delegación a los otros
servidores de DNS autorizados. Es de extrema importancia que las zonas estén disponibles desde
varios servidores de DNS por temas de disponibilidad. Para que otros servidores además del
principal puedan alojar zonas, se crearon las transferencias de zona, que se encargan de hacer la
replicación de todas ellas y de sincronizarlas.

Ahora bien, ¿cuándo se realizan estas transferencias de zona? Tenemos cuatro posibilidades: 1. La
primera de ellas es que se instale o inicie un nuevo servidor DNS y se configure en una zona
existente. 2. La segunda, cuando finaliza el plazo de actualización de una zona. 3. La tercera,
cuando se produce algún cambio en una zona, y es necesario actualizar para replicar los cambios.
4. Y la última, cuando manualmente se solicita una transferencia de zona.

USO DE NSLOOKUP
Ahora vamos utilizar la instrucción SET TYPE para consultar datos de tipo DNS (NS), para ver otros
tipos de consultas podéis utilizar la ayuda poniendo una interrogación?

Set type=ns

Nebrija.es

Ahora buscaremos los servidores de DNS de nuestro objetivo:

Ya sabemos los servidores DNS de ese dominio, ahora procederemos a ponernos como uno de
ellos

Server XXXXX

Ejemplo fue server ns0.uam.es

Ahora ya nos queda tan solo para realizar la transferencia de zona ejecutar el comando LS contra
el dominio que queramos (ls dominio.com). Y disfrutar de todo el listado de máquinas que
contienen las zonas:

Ls Nebrija.es

La transferencia de zona la hemos realizado desde fuera de la red interna debido a una mala
configuración por parte de la organización. Esto no debería ocurrir, por motivos de seguridad
obvios, y es que cualquiera desde su casa puede hacerse con todas las IP y dominios internos de
una organización. Para que estuviese bien configurado, nos debería haber respondido al comando
LS con algo como lo siguiente:

Resolución inversa (a partir de una IP) mediante la consulta a los registros PTR
Lo más habitual es utilizar los DNS para obtener una IP, pero habrá ocasiones en la que nos
interese lo contrario, dada una IP averiguar el DNS. A este hecho se le conoce como resolución
inversa, y es utilizado normalmente para comprobar la identidad de un cliente.

Existe un dominio, el in-addr.arpa donde se encuentran las direcciones IP de todos los sistemas
pero colocados de manera invertida, es decir, para la IP 193.X.Y.Z, le correspondería el nombre
Z.Y.X.193.in-addr.arpa, y esto queda definido en los registros PTR, de donde intentaremos obtener
la información. La idea es hacer lo siguiente, sabemos una dirección IP, que hemos encontrado
mediante alguna de las búsquedas que aprendimos a realizar en los artículos 1 y 2 de esta cadena,
pero no sabemos el nombre del dominio DNS, por tanto buscaríamos la query:
Z.Y.X.193.in-addr.arpa -> pericoeldelospalotes.com

Y verificaríamos que:

pericoeldelospalotes.com -> 193.X.Y.Z

Para ello volveremos a utilizar la herramienta Nslookup. Configuraremos el DNS interno de la


organización y configuramos el type para preguntar por los registros PTR:

Nslookup

Set type=ns

Nebrija.es

Lo que esta abajo de respuesta no autoritativa colocamos alguno al lado de server

Server nebrijaa2.com.es

Set type=ptr

Y realizamos las búsquedas con algunas IP que habíamos encontrado:

MALTEGO
La herramienta Maltego se basa en entidades, que son objetos sobre los que se aplicarán
determinadas acciones que se conocen como transformadas.

Estas entidades se dividen en dos categorías. Por un lado, las entidades relacionadas con las
infraestructuras y, por otro, las relacionadas con personas. Las infraestructuras disponen, por
defecto de las siguientes entidades:

Nombre

DNS Dominio

Dirección Ipv4 L

Localización

Registros MX

Registros NS - servidores de nombres para el dominio

Bloques de red

URL

Sitios Web

Para la parte de personas dispone de las siguientes entidades:

Documentos

Dirección de correo
Persona

Número de teléfono

Frase

Bebo

Facebook

Flickr

Twitter

Linkedin

Myspace

Spock

Por ejemplo, en el caso de que se disponga de un nombre de dominio y se desee realizar un


primer análisis sobre todo lo relacionado con él. A partir de ese nombre de dominio mediante uno
de los juegos de transformaciones que se centran en el correo electrónico, se obtendrán
direcciones de correo electrónico relacionadas con el dominio, cuentas en servidores PGP,
información del dominio a partir del servicio Whois, etc. Esto dará una idea de personas, cuentas,
genéricas, etc. También permite, sobre ese mismo dominio buscar documentos, registros MX,
registros DNS, relacionados con esos dominios. Sobre los resultados que se muestran en forma de
árbol es posible volver a aplicar nuevas transformadas, como por ejemplo analizar los metadatos
de los documentos.

La herramienta, además, permite la creación de entidades y transformadas propias haciéndola


muy escalable. Un ejemplo de esta escalabilidad y flexibilidad lo proporcina el buscador Shodan
(http://www.shodanhq.com/), el cual dispone de una entidad con ese mismo nombre que admite
una serie de transformadas: ◦ searchShodan ◦ searchExploitDB ◦ getHostProfile ◦
searchShodanDomain ◦ searchShodanNetblock Estas transformadas permiten interactuar con este
buscador desde la herramienta, enriqueciendo el análisis con Maltego. A continuación, se muestra
un ejemplo del proceso de investigación de una determinada infraestructura. Suponiendo que
únicamente se conoce el nombre de dominio, se le aplicará la siguiente secuencia de
transformadas:

DNS from Domain > Other transforms > Domain using MX (mail server): Con esta transformada se
pueden obtener los servidores MX asociados con el dominio.

DNS from Domain > Other transforms > Domain using NS – (name server): Esta transformada
obtiene los servidores de nombres del dominio.

Sobre cada uno de los servidores obtenidos (MX,NS)

◦ Se ejecuta el conjunto entero: Resolve to IP.

Sobre la dirección IP de los servidores


◦ Resolve to IP > IP owner detail

Rapidamente se encuentra personal asociado al objetivo, así como direcciones de correo


electrónico que serían posibles objetivos de un ataque de ingeniería social.

Ahora, pueden aplicarse las siguientes transformadas sobre los hosts, ofrenciéndo más
información adicional:

Other transforms > To website where IP appear:

Con esta transformada se busca en los principales buscadores de sitios donde aparece esta
dirección IP. Esto puede ser de utilidad dado que, en ocasiones, estas direcciones pueden haber
estado en listas negras de spam, malware, etcétera.

Other transforms > getHostProfile: Esta transformada dará información sobre el perfil del host.

Sobre los servidores de nombres (NS) se ejecutará:

o Info from DNS > To domains [sharing this DNS]: Esta opción proporciona los dominios que
comparten este servidor DNS relacionado con el dominio objetivo. Ésta es quizás una de las
opciones a nivel de infraestructura más interesantes porque puede ofrecer objetivos indirectos
relacionados con el objetivo.

Sobre los servidores de correo (MX) se ejecutan:

o Other transforms > To domains [Sharing this MX]: Esta opción proporciona dominios que
comparten este servidor de correo relacionado con el dominio objetivo. Ésta es quizás una de las
opciones a nivel de infraestructura más interesantes porque puede ofrecer objetivos indirectos.

Si se realiza la búsqueda de dominios que utilizan los servidores DNS y MX del objetivo sería
posible realizar un mapa en forma de árbol como el que se muestra a continuación. En él se
observa claramente la infraestructura que soportan así como la lista de dominios que comparten
los servidores DNS y MX que son objeto de la investigación:

Por el momento, se ha ido obtenido información a partir de los servidores de nombres y de los
servidores de correo, que son una gran fuente de información que Maltego unifica y muestra con
varias transformadas. Ahora, se pasará a la parte web, una de las más importantes e interesantes
a la hora de obtener información. Para ello se aplicará la transformada sobre un dominio
mostrando las páginas web asociadas

A continuación, sobre cada una de las páginas web se puede profundizar y obtener:
ToServerTechnologiesWebsite: Tecnologías utilizadas por el servidor web

ToWebsiteTitle: Esto ofrecerá, en la mayoría de los casos, información semántica útil para saber
qué existe en esa página web.

A partir de la página web, es posible profundizar hasta el punto de saber si el servidor web es
vulnerable mediante entidades y transformadas con esta herramienta. Por ejemplo, un atacante
podría, a partir de la web, obtener la dirección IP y con ésta intentar obtener el banner del
servidor.
A partir de este banner, mediante la extensión de Shodan http://maltego.shodanhq.com/, se
buscará en la base de datos de exploits si existe alguno para esa versión.

A continuación se muestra un ejemplo: Se aplica la siguiente secuencia de transformadas: ―To IP


Address‖ y sobre la dirección > ―getHostProfile‖.

Se busca este banner en exploitdb. Para ello, se debe poner el texto del banner en una entidad de
tipo ―phrase‖ y lanzar la transformada Search exploitdb y Search metasploit. Esta transformada
buscará si existe algún módulo de metasploit que permita explotar alguna vulnerabilidad asociada
a este banner.

Con lo tratado hasta el momento se ha podido ver un pequeño ejemplo del potencial de Maltego
para obtener información sobre una determinada infraestructura. El siguiente ejemplo muestra la
presencia de un determinado objetivo en diferentes fuentes como Pastebin y Pastie. La frase que
se indicará será un nombre de dominio:

Estos resultados muestran enlaces donde aparece la cadena que se ha introducido. Después sobre
cada uno de los enlaces se pueden lanzar diferentes transformadas. Una de las más útiles para la
fase de Information Gathering es ―Find on webpage‖ > ―To mail address [find on web page]‖, la
cual proporcionará las direcciones de correo encontradas en ese enlace. Maltego es una
herramienta muy potente, flexible y escalable, con la que es posible construir scripts en python
para hacer determinadas transformadas sobre datos de entrada, lo que aporta una gran
personalización al proceso de Information Gathering. Un ejemplo de esto es el complemento (add-
on) de Shodan o el trabajo realizado por el blog holisticinfosec donde nos muestran58 cómo
analizar un fichero de captura ―.pcap‖ para el análisis de malware y donde se dibujan las
relaciones entre las direcciones IP. Posteriormente, gracias a la vista de Maltego ―Mining View‖,
se puede detectar rápidamente los nodos con más relaciones y que, en este caso, reflejarían los
Command and control (C&C).

----------

Una transformación es una operación que aplicada sobre un objeto genera información

adicional sobre el mismo, la cual es reflejada en forma gráfica en Maltego mediante una

estructura tipo árbol. Esto quizás suena un poco abstracto, conque mejor veamos un ejemplo.

Los objetos pueden ser de diferentes tipos: dispositivos, elementos de infraestructura,

ubicaciones, pruebas de intrusión, personales y sociales.

Los dispositivos pueden ser equipos como teléfonos o cámaras; los elementos de

infraestructura incluyen objetos como nombres de dominio, direcciones IP, entradas DNS y

similares. Las ubicaciones se refieren a sitios físicos como ciudades, oficinas, etc.

Los objetos de tipo pruebas de intrusión nos permiten agregar información obtenida acerca de
tecnologías utilizadas por la organización auditada. Los elementos personales se refieren a
información como nombres de personas, documentos, imágenes, números de teléfono y afines,
mientras que los objetos sociales involucran datos obtenidos de redes sociales como Facebook,
Twitter, entre otras.

-------------------------------

Acto seguido aplicaremos la primera transformación, esto lo haremos haciendo click

derecho con el mouse y ejecutando la opción "Run Transform -> DNS from Domain -> All in this
set" (Figura

15). Esto le indica a Maltego que debe ejecutar todas las transformaciones relacionadas con el

protocolo DNS para el objeto seleccionado, en este caso: el dominio google.com.

Como se ilustra en la Figura 16, el resultado es un árbol que contiene distintos hosts que

pertenecen al dominio google.com, el cual se muestra como nodo raíz. Las flechas indican que

existe una relación entre la raíz y cada nodo hijo. El símbolo de estrella ubicado junto al ícono de

un host indica que éste provee servicios de webserver.

TRACEROUTE

¿Por qué queremos conocer esto? Muy simple, si resulta que están alojados en un hosting
externo, en el hipotético evento de que lográramos ingresar a dichos equipos, en realidad
estaríamos vulnerando al proveedor de hosting, en cuyo caso nos podríamos enfrentar a una
posible demanda legal por parte del mismo. Debido a esto es conveniente realizar un trazado de
ruta que nos facilite conocer la ubicación geográfica de un nombre de host o de una dirección IP.
De ese modo sabremos si tiene sentido o no tratar de vulnerar dicho equipo. Existen en el
mercado diversas aplicaciones de traceroute visual, por mencionar algunas: Visual IP Trace, Visual
Route

METADATOS

los metadatos son una serie de datos que son almacenados junto con los documentos para ayudar
en su identificación. Su intención es representar el contenido del documento, por lo que suelen
almacenar bastantes datos, en ocasiones más de la que nos gustaría, lo que conlleva a que sea
más fácil, por ejemplo, identificar al usuario que ha creado cierto documento, las herramientas
con las que lo ha hecho, la situación física donde se encontraba, un path que puede darnos
información del sistema operativo, etc. Este hecho trae repercusiones que pueden llegar a ser muy
graves, pongamos por ejemplo que a través de un metadato se averigua que se ha generado un
documento con una versión de cierto programa para generar ficheros PDF que tiene un exploit
conocido; entonces se estaría poniendo en peligro un sistema.
Para extraer los metadatos de los documentos y hacerles un footprinting, existen multitud de
servicios online y herramientas que automatizan esta tarea, pero hay una destaca por encima de
todas, y esta es la FOCA.

Con éste servicio podremos buscar información sobre personas a partir de su nombre, nos será de
utilidad para saber información de una persona cuando hayamos conseguido su nombre a través
de metadatos, registro Whois, etc. Nos ayudará a encontrar sus posibles blogs, vídeos subidos a
youtube, publicaciones, etc. Analizaremos un poco de su vida para futuros ataques de ingeniería
social:
Medidas defensivas

Evitar ataques de reconocimiento en un 100% es virtualmente imposible, porque

precisamente el footprinting se basa en la búsqueda de información disponible públicamente


sobre

la organización víctima. Y si la información es pública es porque es preciso darla a conocer, por

ende ocultarla iría en contra de su razón de ser.

Por ejemplo, imaginemos que somos la organización ABC S.A. la cual se dedica a vender

productos para mascotas a través de su página web y de forma presencial a través de tiendas de

distribución minoristas.

¿Tendría sentido mantener secreta la dirección de su página web www.abc.com? Pues de

ningún modo, el mismo hecho de publicar el sitio web hace posible que los usuarios lo encuentren

a través de máquinas de búsqueda como Google, Altavista, Metacrawler, etc., aún sin invertir en

publicidad. ¿Y cómo podríamos vender los productos a través de nuestra página web si los

clientes no saben cómo llegar a ella?

Por tanto lo que podemos hacer es minimizar nuestra exposición, haciendo público sólo

aquello que por necesidad debe serlo. Les comento un caso particular, en una ocasión durante la

fase de reconocimiento me topé con que el administrador de redes de mi cliente tenía publicada
en

Internet la página web de la Intranet.

La misma palabra Intranet indica que se trata de un servidor de uso exclusivo interno. Este

es un ejemplo de un servicio que no debería estar publicado. Si fuese necesario accederlo desde

fuera por un motivo particular, la forma correcta de hacerlo es a través de la implementación de

redes privadas virtuales (VPN’s), pero no abriendo el puerto en el firewall para que cualquiera

desde Internet pueda encontrar a un servidor interno.

Aclarado este punto les sugiero algunas medidas preventivas:

Mantener oculta la información de la empresa en los servicios de directorios Who-Is a través del
pago anual por el servicio de

privacidad a la entidad competente.


Evitar publicar información detallada sobre sistemas operativos, aplicaciones, hardware y similares
en los anuncios de

búsqueda de personal.

Capacitar a todo el personal de la empresa sobre precauciones de seguridad informática y acerca


de cómo evitar ser víctima

de un ataque de ingeniería social.

Publicar en Internet sólo aquellos servicios de carácter público (web corporativo, servidor de
nombres, servidor de correo,

etc.) y confinar dichos servidores en una zona desmilitarizada (DMZ).

Instalar medidas de seguridad perimetral (firewalls, sistemas IDS/IPS, etc.).

Implementar medidas para protección de datos.