Nimrod’s Sons

Siguiendo el rastro a las organizaciones: parte 2

by darkslaker on Dec.04, 2006, under Articulos, Hacking

Siguiendo el rastro a las organizaciones:
Por darkslaker.
Continuación…

Nombres de Dominio de la organización:
Para un hacker, el conocer la mayor información relacionada con la organización antes de lanzar un ataque es indispensable. Dentro de la información que es necesaria recopilar encontramos:

  • Nombres de dominio de la organización.
  • Bloques de red y direccionamiento IP de la organización.
  • Proveedores de servicio de Internet de la organización.

A continuación se muestran algunas maneras de localizar dicha información.
Primeramente es importante mencionar que el ICANN es responsable de la coordinación y de la administración de los elementos técnicos de DNS’s para garantizar una resolución unívoca de los nombres, de manera que los usuarios de Internet puedan encontrar todas las direcciones válidas. Para ello, se encarga de supervisar la distribución de los identificadores técnicos únicos usados en las operaciones de Internet, y delegar los nombres de dominios de primer nivel (como .com, .info, etc.).
ICANN se encarga de administrar los nombres de dominio y direccionamiento IP mediante organizaciones alrededor de mundo. Las siguientes ligas corresponden a la representación de ICANN por regiones:

Ahora debemos buscar todos los dominios y subdominios que podamos encontrar. Podemos buscar tanto en Google como en la base de datos de whois para localizar los dominios así como el servidor de nombres al que esta asociado.

Lo primero que podemos hacer es identificar el responsable del dominio y su servidor de nombres asociado, esto nos sirve para comenzar a identificar segmentos de red, proveedores de servicios externos, redundancia en equipos, etc.

Desde una Terminal de un sistema *NIX podemos ejecutar la siguiente búsqueda:

slax ~ # whois itam.mx

DOMINIO: itam.mx

FECHA DE CREACION: 02-JAN-95
FECHA DE ULTIMA MODIFICACION: 05-JAN-05

ORGANIZACION: ITAM [itam1]
DOMICILIO: Mexico, D.F., Mexico

CONTACTO ADMINISTRATIVO: Uciel Fragoso Rodriguez [uciel]
DOMICILIO: Mexico, D.F., Mexico

CONTACTO TECNICO: Uciel Fragoso Rodriguez [uciel]
DOMICILIO: Mexico, D.F., Mexico

CONTACTO DE PAGO: Uciel Fragoso Rodriguez [uciel]
DOMICILIO: Mexico, D.F., Mexico

SERVIDOR PRIMARIO: turing2.itam.mx
IP PRIMARIO: 148.205.228.11

SERVIDOR SECUNDARIO: remo.itam.mx
IP SECUNDARIO: 148.205.228.17

SERVIDOR SECUNDARIO: name.roc.gblx.net

SERVIDOR SECUNDARIO: name.phx.gblx.net

Con la información obtenida en el ejemplo anterior, podemos apreciar lo siguiente:

  • Nombre del contacto.
  • Fecha de creación de dominio.
  • DNS, de los cuales 2 son administrados por la organización y 2 por externos.

Cuando ya contamos con los servidores DNS de la organización podemos realizar peticiones directas a los mismos. A continuación muestro las diferentes tipos de consultas que podemos realizar:

  • SOA (State of authority)- Muestra quien es el servidor DNS primario.
  • NS (Name Server) Muestra quienes son los servidores DNS de un dominio.
  • MX (Mail Exchanger) Muestra quien se encarga de entregar correo para un dominio.
  • ANY (Any Query) Busca cualquier registro contenido en la zona.
  • TXT (Text Query) Busca registros de texto.
  • AXFR- (Zone transfer) Trae todos los registros almacenados en una zona DNS.
  • A (Address). Muestra el registro para traducir nombre de host a direcciones IP.
  • CNAME (Canonical Name). Se usa para crear nombres de hosts adicionales, o alias, para los hosts de un dominio.

Existen dos consultas claves que debemos realizar siempre, la ANY y la AXFR. Es importante mencionar que no todos los servidores DNS permiten búsquedas del tipo AXFR ya que es considerada una mala practica, este tipo de búsquedas deben ser restringidas solamente entre un servidor primario y uno secundario. ¿Que herramientas nos permiten realizar estas búsquedas?

  • SamSpace
  • Dig
  • Host
  • Nslookup
  • Dsnwalk
  • Etc.

En este caso utilizaremos dig para realizar las búsquedas.

- La búsqueda any nos permite conocer todos los equipos NS,MX,SOA, A de un dominio:

slax ~ # dig any @148.205.228.11 itam.mx

; <<>> DiG 9.3.1 <<>> any @148.205.228.11 itam.mx
; (1 server found)
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59063
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 18, AUTHORITY: 0, ADDITIONAL: 7

;; QUESTION SECTION:
;itam.mx. IN ANY

;; ANSWER SECTION:
itam.mx. 600 IN A 148.205.228.219
itam.mx. 3600 IN A 148.205.148.5
itam.mx. 600 IN A 148.205.36.229
itam.mx. 600 IN A 148.205.133.22
itam.mx. 600 IN A 148.205.228.17
itam.mx. 600 IN A 148.205.52.10
itam.mx. 600 IN A 148.205.228.11
itam.mx. 600 IN A 148.205.40.4
itam.mx. 600 IN A 148.205.40.11
itam.mx. 600 IN A 148.205.228.27
itam.mx. 3600 IN NS artemisa2.itam.mx.
itam.mx. 3600 IN NS turing2.itam.mx.
itam.mx. 3600 IN NS remo.itam.mx.
itam.mx. 3600 IN NS name.phx.gblx.net.
itam.mx. 3600 IN NS name.roc.gblx.net.
itam.mx. 3600 IN SOA turing2.itam.mx. uciel.itam.mx. 2002068227 3600 600 1209600 3600
itam.mx. 3600 IN MX 10 stockton.itam.mx.
itam.mx. 3600 IN MX 10 malone.itam.mx.

;; ADDITIONAL SECTION:
artemisa2.itam.mx. 3600 IN A 148.205.40.11
turing2.itam.mx. 3600 IN A 148.205.228.11
remo.itam.mx. 3600 IN A 148.205.228.17
name.phx.gblx.net. 39355 IN A 206.165.6.10
name.roc.gblx.net. 56775 IN A 209.130.187.10
stockton.itam.mx. 3600 IN A 148.205.228.32
malone.itam.mx. 3600 IN A 148.205.228.6

;; Query time: 193 msec
;; SERVER: 148.205.228.11#53(148.205.228.11)
;; WHEN: Mon Aug 7 14:28:11 2006
;; MSG SIZE rcvd: 506

- La búsqueda axfr es un poco diferente a la any ya que no permite hacer un intercambio de Zonas de transferencia. Esto quiere decir que nos enviara toda su zona con la cual podremos tener todos los nombres de los equipos registrados en el dominio.

slax ~ # dig axfr @148.205.228.11 itam.mx

; <<>> DiG 9.3.1 <<>> axfr @148.205.228.11 itam.mx
; (1 server found)
;; global options: printcmd
itam.mx. 3600 IN SOA turing2.itam.mx. uciel.itam.mx. 2002068242 3600 600 1209600 3600
itam.mx. 3600 IN NS artemisa2.itam.mx.
itam.mx. 3600 IN NS turing2.itam.mx.
itam.mx. 3600 IN NS remo.itam.mx.
itam.mx. 3600 IN NS name.phx.gblx.net.
itam.mx. 3600 IN NS name.roc.gblx.net.
itam.mx. 3600 IN MX 10 stockton.itam.mx.
itam.mx. 3600 IN MX 10 malone.itam.mx.
0r3dac14d.itam.mx. 1200 IN A 148.205.197.15
eventos.itam.mx. 3600 IN CNAME ddip.itam.mx.
www.eventos.itam.mx. 3600 IN CNAME ddip.itam.mx.
exalumnos.itam.mx. 3600 IN CNAME ddip.itam.mx.
www.exalumnos.itam.mx. 3600 IN CNAME ddip.itam.mx.
exalumnos_conta.itam.mx. 3600 IN CNAME phobos.itam.mx.
executivemba.itam.mx. 3600 IN CNAME phobos.itam.mx.
www.executivemba.itam.mx. 3600 IN CNAME phobos.itam.mx.
expo-itam.itam.mx. 1200 IN A 148.205.220.21
extension.itam.mx. 3600 IN CNAME titan2.itam.mx.
edit.extension.itam.mx. 3600 IN CNAME titan2.itam.mx.
etc
etc
etc

Los resultados anteriores nos permiten determinar muchas cosas relativas al direccionamiento así como los subdominios de la organización de quien estamos recopilando información.

En el caso del dominio ITAM, se puede determinar que su bloque de red es 148.205.228.X y además la identificación del tipo de nombres que utilizan para sus equipos.

Otra forma es hacer la búsqueda es mediante google:

inurl:itam.mx

20061204172829289_1

La búsqueda anterior nos permite conocer subdominios del itam.mx

Bloques de red

Con la información encontrada anteriormente ya es posible determinar los bloques de red que tiene una organización, y conocer si algunos servicios están hosteados.

Sigamos el rastro del dominio iss.net

slax ~ # whois iss.net

Registrant:
Internet Security Systems, Inc.
6303 Barfield Rd
Atlanta, GA 30328
US

Domain Name: ISS.NET

Administrative Contact, Technical Contact:
Internet Security Systems Inc. iss-dnsadmin@ISS.NET
6303 BARFIELD RD NE
ATLANTA, GA 30328-4233
US
(404) 236-2600 fax: (404) 236-2614

Record expires on 29-Jun-2012.
Record created on 30-Jun-1994.
Database last updated on 10-Aug-2006 12:17:24 EDT.

Domain servers in listed order:

EHECATL.ISS.NET 209.134.161.10
SFLD-NS1.NETREX.COM 207.231.129.132

Con la información anterior podemos determinar que el servidor primario de DNS es administrado por la organización. Ahora realizaremos una búsqueda ANY.

slax ~ # dig any @209.134.161.10 iss.net

; <<>> DiG 9.3.1 <<>> any @209.134.161.10 iss.net
; (1 server found)
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 65516
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 7, AUTHORITY: 0, ADDITIONAL: 5

;; QUESTION SECTION:
;iss.net. IN ANY

;; ANSWER SECTION:
iss.net. 60 IN SOA ehecatl.iss.net. iss-dnsadmin.is s.net. 2006080802 3600 1800 604800 3600
iss.net. 60 IN NS sfld-ns1.netrex.com.
iss.net. 60 IN NS ehecatl.iss.net.
iss.net. 60 IN MX 10 colo-mx1.iss.net.
iss.net. 60 IN MX 10 sfld-mx1.iss.net.
iss.net. 60 IN MX 5 atla-mx1.iss.net.
iss.net. 60 IN A 209.134.161.35

;; ADDITIONAL SECTION:
ehecatl.iss.net. 60 IN A 209.134.161.10
sfld-ns1.netrex.com. 3600 IN A 207.231.129.132
atla-mx1.iss.net. 60 IN A 209.134.161.6
colo-mx1.iss.net. 60 IN A 12.129.100.18
sfld-mx1.iss.net. 60 IN A 207.231.129.133

;; Query time: 353 msec
;; SERVER: 209.134.161.10#53(209.134.161.10)
;; WHEN: Mon Aug 7 15:55:37 2006
;; MSG SIZE rcvd: 300

De la información de la búsqueda podemos determinar que existen dos bloques diferentes de red que responden a equipos tipo A del dominio principal los cuales son:

  • 209.134.161.X
  • 207.231.129.X

Cada uno de ellos de diferentes ISP, con lo cual podemos comenzar a realizar un mapa de la arquitectura de Red de la organización.

Lo que se hará a continuación es resolver cada unos de los equipos en los diferentes bloques de red, para de esta manera identificar los equipos de la organización.

¿Qué herramientas pueden ayudarnos a esto?

  • Nmap
  • Host
  • Nslookup
  • Etc.

Si deseamos realizar la tarea con nmap, el comando que se sugiere utilizar es el siguiente:

‘nmap -sL -P0 –dns-server DNS Red –R’

>>nmap -sL -P0 –dns-servers 209.134.161.10 209.134.161.1/24

Starting Nmap 4.01 ( http://www.insecure.org/nmap ) at 2006-12-04 16
Failed to resolve given hostname/IP: ûR. Note that you can’t use ‘/
e IP ranges
Host 209.134.161.0 not scanned
Host 209.134.161.1 not scanned
Host atla-ngw5-a-ext.iss.net (209.134.161.2) not scanned
Host atla-ngw5-b-ext.iss.net (209.134.161.3) not scanned
Host 209.134.161.4 not scanned
Host 209.134.161.5 not scanned
Host atla-mx1.iss.net (209.134.161.6) not scanned
Host lists.it-isac.org (209.134.161.7) not scanned

También es posible realizar la resolución de nombres utilizando ‘host’ y ‘perl’:

perl -e ‘for ($x=1;$x<=254;$x++){system “host 209.134.161.$x 209.134.161.10″}’

Using domain server:
Name: 209.134.161.10
Address: 209.134.161.10#53
Aliases:

Host 1.161.134.209.in-addr.arpa not found: 3(NXDOMAIN)
Using domain server:
Name: 209.134.161.10
Address: 209.134.161.10#53
Aliases:

2.161.134.209.in-addr.arpa domain name pointer atla-ngw5-a-ext.iss.net.
Using domain server:
Name: 209.134.161.10
Address: 209.134.161.10#53
Aliases:

3.161.134.209.in-addr.arpa domain name pointer atla-ngw5-b-ext.iss.net.
Using domain server:
Name: 209.134.161.10
Address: 209.134.161.10#53
Aliases:

6.161.134.209.in-addr.arpa domain name pointer atla-mx1.iss.net.
Using domain server:
Name: 209.134.161.10
Address: 209.134.161.10#53
Aliases:

Realizando la misma búsqueda sobre el otro servidor de dominio y el otro segmento de red nos da el siguiente resultado:

perl -e ‘for ($x=1;$x<=254;$x++){system “host 207.231.129.$x 207.231.129.132″}’ | grep iss.net

5.129.231.207.in-addr.arpa domain name pointer sfld-ngw1a.iss.net.
6.129.231.207.in-addr.arpa domain name pointer sfld-ngw1.iss.net.
7.129.231.207.in-addr.arpa domain name pointer sfld-ngw1b.iss.net.
9.129.231.207.in-addr.arpa domain name pointer sfld-mss-fw1.iss.net.
11.129.231.207.in-addr.arpa domain name pointer sfld-mss-fw1.mss.iss.net.
12.129.231.207.in-addr.arpa domain name pointer sfld-mss-fw2.mss.iss.net.
18.129.231.207.in-addr.arpa domain name pointer sfld-perim1.iss.net.
19.129.231.207.in-addr.arpa domain name pointer sfld-perim2.iss.net.
24.129.231.207.in-addr.arpa domain name pointer sfld-raw1.iss.net.
25.129.231.207.in-addr.arpa domain name pointer sfld-raw2.iss.net.
68.129.231.207.in-addr.arpa domain name pointer sfld-netrwww.mss.iss.net.129.231.207.in-addr.arpa.
133.129.231.207.in-addr.arpa domain name pointer sfld-mx1.iss.net.
134.129.231.207.in-addr.arpa domain name pointer sfld-mx2.iss.net.
196.129.231.207.in-addr.arpa domain name pointer soudom001.iss.net.
197.129.231.207.in-addr.arpa domain name pointer soumaiexcp01.iss.net.
198.129.231.207.in-addr.arpa domain name pointer soumaiwebp01.iss.net.
199.129.231.207.in-addr.arpa domain name pointer bkup-sfld01.iss.net.
200.129.231.207.in-addr.arpa domain name pointer soufil002.iss.net.
201.129.231.207.in-addr.arpa domain name pointer souprn001.iss.net.
202.129.231.207.in-addr.arpa domain name pointer soubacnbup01.iss.net.
203.129.231.207.in-addr.arpa domain name pointer sfld-rad2.iss.net.
204.129.231.207.in-addr.arpa domain name pointer sfld-remedy1.mss.iss.net.
205.129.231.207.in-addr.arpa domain name pointer sfld-fax1.iss.net.
211.129.231.207.in-addr.arpa domain name pointer sfld-ccur.iss.net.
212.129.231.207.in-addr.arpa domain name pointer soudom002.iss.net.
213.129.231.207.in-addr.arpa domain name pointer soumaipmfp01.iss.net.

De esta manera podemos identificar los segmentos de red de una organización así como los equipos que cuentan con un registro en el servidor de dominio.

Para aquellas personas a las que no les guste trabajar en línea de comandos, BiDiBlAH de Sensepost es una herramienta que nos permite realizar estas búsquedas de manera automatizada. A continuación se muestran una serie de pantallas utilizando la herramienta mencionada anteriormente.

20061204172829289_3

20061204172829289_31

La información de nombres de dominio y bloques de red brinda a los hackers (o penetrations testers) mucha información para la creación de la arquitectura de red de la organización, además de que constituye el preámbulo para la detección de servicios públicos de la misma.

La siguiente parte del artículo, se enfocara a la detección ser servicios Públicos donde se trataran cosas desde nombres de host hasta escaneos de puertos, así como la obtención de versiones de servicios.

Bookmark and Share
:, ,
No comments for this entry yet...

Leave a Reply

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Búsqueda personalizada

Visit our friends!

A few highly recommended friends...