viernes, 27 de septiembre de 2013

Grupo de estudio. Sesion 2


Por fin tenemos el primer video de las sesiones.

Me vais a tener que perdonas pero solo se grabó mi voz :P No volverá a pasar, lección aprendida.
El video es la sesión práctica que dio Marcos sobre Information Gathering, no tiene sonido pero entre las diapositivas y el video podéis entender perfectamente las practicas.

Cualquier duda ya sabéis, comentad aquí mismo, mandadme un mail o.. Uniros al grupo¡¡

Estamos buscando ponentes que puedan y quieran venir a darnos alguna lección magistral, se han mandado alguna invitación a ver si hay suerte y pronto podemos anunciar alguna charla magistral :)

El Lunes, nueva sesión, por el momento os dejó con el video y diapositivas.

martes, 24 de septiembre de 2013

Aprendiendo Whois


El comando Whois es tan antiguo como Internet.
Este comando se usaba, y aún se usa, para saber quien esta detrás de una dirección o ip. Al comienzo, como ya sabéis, solo había unos pocos terminales que se conectaran a Internet, por lo que al pasarlas por Whois podías saber dónde estabas conectando y con quien tendrías que hablar en caso de necesitar una persona de carne y hueso.
Whois es la forma de personalizar internet, de hacernos ver, que tras la pantalla, alguien con nombre y apellidos regenta esa ip o dirección.
Esta es una forma muy romántica de definirlo, pasemos a una más técnica:
http://www.rfc-editor.org/rfc/rfc3912.txt
Este enlace se corresponde con la última versión vigente del protocolo WHOIS, en su primer punto podemos leer algo así como:
" WHOIS es un protocolo TCP basado en petición/respuesta que se utiliza para efectuar consultas en una base de datos que permite determinar el propietario de un nombre de dominio o una dirección IP en Internet."
Los servidores WHOIS escuchan el puerto 43 a la espera de recibir peticiones  de clientes WHOIS. El funcionamiento es tan sencillo como que:
- El cliente abre la conexión.
- El servidor Whois le responde.
- El cliente le indica que información quiere.
- Whois le proporciona la información y cierra la conexión.
- El cliente recibe la información con el cierre y ya comprende que la respuesta ha sido recibida correcta y completamente.
Se puede ver claramente en el sencillo esquema que adjunta el propio RFC:
   client                   server at whois.nic.mil

   open TCP   ---- (SYN) ------------------------------>
              <---- (SYN+ACK) -------------------------
   send query ---- "Smith<CR><LF>" -------------------->
   get answer <---- "Info about Smith<CR><LF>" ---------
              <---- "More info about Smith<CR><LF>" ----
   close      <---- (FIN) ------------------------------
              ----- (FIN) ----------------------------->

Como veis es uno de los protocolos mas sencillos que existen, pero para nosotros es el inicio de la recolección e información sobre un dominio o una máquina.
Para poder enviar una petición de Whois solo tenéis que teclear en la línea de comandos:
whois google.com
Pero esto solo te funcionará si estás trabajando desde una máquina Linux. Originalmente Whois es un comando Unix por lo que si estás trabajando bajo Windows tendrás que hacer unos pasos previos. 
Instalando Whois en Windows.
Whois no viene incluido en ningún SO Windows, os lo tendréis que descargar desde las herramientas de SysInternals aquí:
http://technet.microsoft.com/es-es/sysinternals/bb897435.aspx
Es un archivo comprimido y dentro del mismo está el programita Whois:

Lo único que tenéis que hacer es descomprimirlo y desde la linea de comandos ir a la carpeta donde lo hayáis descomprimido y ya podréis ejecutar vuestro
whois google.com
Trabajando con Whois
Como hemos explicado Whois lanza peticiones a servidores que estan escuchando por el puerto 43, estos servidores responden con lso datos que tienen en sus bases de datos sobre dicho dominio.
Esto, como podéis suponer, ha levantado mucho debate en algunos países con el tema de la protección de datos de ahí que si intentáis hacer Whois a una página o ip de España obtendréis una respuesta tal que así:
-----------------------------------------Inicio del Whois de ejemplo de dominio .es----------------------------
C:\>whois terra.es

Whois v1.11 - Domain information lookup utility
Sysinternals - www.sysinternals.com
Copyright (C) 2005-2012 Mark Russinovich

Connecting to ES.whois-servers.net...


    Conditions of use for the whois service via port 43 for .es domains

    Access will only be enabled for  IP addresses  authorised  by Red.es.  A max
imum of one  IP address per
    user/organisation is permitted.

    Red.es accepts  no responsibility  whatsoever  for  the availability  of acc
ess to WHOIS,  which may be
    suspended at any time and without prior warning at the discretion of the pub
lic entity.

    The service will be limited to the data established by Red.es.

    The user  promises  to make use of the service and to  carry out any action
derived  from the aforesaid
    use in accordance with  current applicable  regulations, in particular with
legislation on ÔÇ£.esÔÇØ domain
    names and personal data protection.

    In particular, the user undertakes not to use  the service  to carry out abu
sive  or speculative domain
    name registrations, pursuant to section 5 of the Sixth Additional Provision
of Law 34/2002, of 11 July,
    on Services of the  Information  Society and  Electronic Commerce. Likewise,
 the User undertakes not to
    use the service to  obtain data, the possession  of which may  contravene th
e provisions of Organic Law
    15/1999,  of  13 December,  on Personal Data Protection, and  its Regulation
s, or in Law 34/2002, of 11
    July, on Services of the Information Society and Electronic Commerce.

    Failure  to comply with these conditions will result in the immediate withdr
awal of the service and any
    registered domain name which breaches said conditions may be officially canc
elled by Red.es.
    ----------------------------------------------------------------------------
---------------------------

    The IP address used to perform the query  is not authorised  or  has exceede
d the established limit for
    queries.To request access to the service,complete the form located at https:
//,
    where you may also consult the service conditions.

    ----------------------------------------------------------------------------
---------------------------
    More information on each domain may be consulted at www.dominios.es.
-----------------------------------------Fin del Whois de ejemplo de dominio .es----------------------------
Lo que esta parrafada infernal quiere decirnos es que Red.es tiene el servicio del puerto 43 restringido y tienes que solicitar que te dejen ver esos datos rellenando un precioso formulario en la web que te indican: sede.red.gob.es/sede/whois.


Evidentemente ninguno de nosotros vamos a pedir dichos datos, por eso para este tipo de ejemplos, son muy útiles las herramientas que hay en Internet ya que ellos pedirán esas solicitudes al puerto 43 por nosotros.
Para poder seguir adelante viendo un poco mas como es una respuesta Whois probaremos con ejemplos de dominios .com, que os abren amablemente sus puertas a la información que necesitamos.
-----------------------------------------Inicio del Whois de ejemplo de dominio .com----------------------------
C:\>whois google.com

Whois v1.11 - Domain information lookup utility  //Datos del programador Whois
Sysinternals - www.sysinternals.com
Copyright (C) 2005-2012 Mark Russinovich

Connecting to COM.whois-servers.net...
Connecting to COM.whois-servers.net...
Connecting to whois.markmonitor.com...  //Servidor que nos dará los datos, el protocolo whois llama a este servidor que es quien tiene todos los datos sobre google
//Inicio de la información sobre google.com

MarkMonitor is the Global Leader in Online Brand Protection.

MarkMonitor Domain Management(TM)
MarkMonitor Brand Protection(TM)
MarkMonitor AntiPiracy(TM)
MarkMonitor AntiFraud(TM)
Professional and Managed Services

Visit MarkMonitor at www.markmonitor.com
Contact us at 1 (800) 745-9229
In Europe, at +44 (0) 203 206 2220

The Data in MarkMonitor.com's WHOIS database is provided by MarkMonitor.com
for information purposes, and to assist persons in obtaining information
about or related to a domain name registration record.  MarkMonitor.com
does not guarantee its accuracy.  By submitting a WHOIS query, you agree
that you will use this Data only for lawful purposes and that, under no
circumstances will you use this Data to: (1) allow, enable, or otherwise
support the transmission of mass unsolicited, commercial advertising or
solicitations via e-mail (spam); or  (2) enable high volume, automated,
electronic processes that apply to MarkMonitor.com (or its systems).
MarkMonitor.com reserves the right to modify these terms at any time.
By submitting this query, you agree to abide by this policy.

Registrant:
        Dns Admin
        Google Inc.
        Please contact contact-admin@google.com 1600 Amphitheatre Parkway
         Mountain View CA 94043
        US
        dns-admin@google.com +1.6502530000 Fax: +1.6506188571

    Domain Name: google.com
        Registrar Name: Markmonitor.com
        Registrar Whois: whois.markmonitor.com
        Registrar Homepage: http://www.markmonitor.com

    Administrative Contact:
        DNS Admin
        Google Inc.
        1600 Amphitheatre Parkway
         Mountain View CA 94043
        US
        dns-admin@google.com +1.6506234000 Fax: +1.6506188571
    Technical Contact, Zone Contact:
        DNS Admin
        Google Inc.
        2400 E. Bayshore Pkwy
         Mountain View CA 94043
        US
        dns-admin@google.com +1.6503300100 Fax: +1.6506181499

    Created on..............: 1997-09-15.
    Expires on..............: 2020-09-13. //Ya sabéis, ese día expira el dominio, podéis solicitarlo :)

    Record last updated on..: 2013-02-28.

    Domain servers in listed order:

    ns4.google.com  //Esta es información de interés, ya tenemos un punto donde comenzar
    ns1.google.com //unos cuantos servidores DNS de google y un patrón de nombres a seguir.
    ns3.google.com
    ns2.google.com

MarkMonitor is the Global Leader in Online Brand Protection.

MarkMonitor Domain Management(TM)
MarkMonitor Brand Protection(TM)
MarkMonitor AntiPiracy(TM)
MarkMonitor AntiFraud(TM)
Professional and Managed Services

Visit MarkMonitor at www.markmonitor.com
Contact us at 1 (800) 745-9229
In Europe, at +44 (0) 203 206 2220
//Fin de la información sobre google.com
--
-----------------------------------------Fin del Whois de ejemplo de dominio .com----------------------------

Como veis la compañía donde Google adquirió su dominio tiene muy bien controlada la información a devolver, no es el ejemplo más ilustrativo de lo que podemos encontrar (Por todo el texto que empaña lo que buscamos) con whois pero ya podeis haceros una idea.
Los datos de contacto de Google si están ahí accesibles y algunos nodos por lo menos es información que nos abre las puertas a ingeniería social o a seguir trabajando con esos nodos, a ver que encontramos en ellos.
Pero vamos a tratar de encontrar un ejemplo más "normal".
-----------------------------------------Inicio del Whois de ejemplo  2 de dominio .com----------------------
C:\>whois elevenpaths.com

Whois v1.11 - Domain information lookup utility
Sysinternals - www.sysinternals.com
Copyright (C) 2005-2012 Mark Russinovich

Connecting to COM.whois-servers.net...
Connecting to whois.nicline.com...

      Informatica 64, s.l.  (SROW-2473370)

   i64@informatica64.com
   C  Juan Ramon Jimenez, 8 bajo posterior local
   Mostoles   MADRID
   28932   ES
   +34 916659998

Administrative contact:
   Informatica 64, s.l.   (SRCO-3719196)
   i64@informatica64.com
   C  Juan Ramon Jimenez, 8 bajo posterior local
   Mostoles   MADRID
   28932   ES
   +34 916659998


Technical contact:
   Informatica 64, s.l.   (SRCO-3719197)
   i64@informatica64.com
   C  Juan Ramon Jimenez, 8 bajo posterior local
   Mostoles   MADRID
   28932   ES
   +34 916659998


Domain servers in listed order:
   dns15.servidoresdns.net  217.76.128.135
   dns16.servidoresdns.net  217.76.129.135


Created:       05 Apr 2013 10:36:49:070   UTC
Expires:       05 Apr 2014 10:36:58:000   UTC
Last updated:  05 Apr 2013 10:36:49:070   UTC
 -----------------------------------------Fin del Whois de ejemplo  2 de dominio .com----------------------

Me gusta más este ejemplo, es más corto y limpio. He realizado una petición whois a ElevenPaths, la web de los chicos anteriormente conocidos como Informatica64.
Como veis tiene la misma información que el anterior aunque menos sucio con tanta publicidad.
- Nos indica los datos de contacto de la empresa, vemos que elevenpath aunque es proyecto de telefónica ha sido dado de alta por Informatica64.
- Contacto del administrador de Informática 64
- Contacto técnico de Informática 64.
- Listado de los nodos DNS de de la empresa que les da el servicio DNS, en este caso Arsys.
- Datos de alta y caducidad del dominio.
¿Y para que nos sirve todo esto? Por el momento ya vamos haciendo un perfil de quien hay detrás de ese dominio que buscamos. Ya sabemos que es la gente de Informatica64 y que Arsys es su proveedor.
¿Como sabemos que es Arsys? Fácil, hemos realizado otro whois:



-----------------------------------------Inicio del Whois de ejemplo  3 de dominio .com----------------------
C:\>whois servidoresdns.net

Whois v1.11 - Domain information lookup utility
Sysinternals - www.sysinternals.com
Copyright (C) 2005-2012 Mark Russinovich

Connecting to NET.whois-servers.net...
Connecting to whois.nicline.com...

      Arsys Internet, S.L.  (SROW-128842)
   hostmaster@soloregistros.com
   Chile, 54
   Logro±o   La Rioja
   26005        ES
   +34 902115530   fax: +34 941204793

Administrative contact:
   Arsys Internet, SL   (SRCO-171433)
   Arsys Internet, SL
   hostmaster@arsys.es
   Chile, 54
   Logrono   LA RIOJA
   26005        ES
   +34 941620100

Technical contact:
   Arsys Internet, SL   (SRCO-171433)
   Arsys Internet, SL
   hostmaster@arsys.es
   Chile, 54
   Logrono   LA RIOJA
   26005        ES
   +34 941620100

Domain servers in listed order:
   atlante.servidoresdns.net  217.76.128.10
   prometeo.servidoresdns.net  82.223.191.10
   menecio.servidoresdns.net  82.223.218.4

Created:       02 Sep 2002 10:23:04:060   UTC
Expires:       13 Sep 2016 15:39:13:000   UTC
Last updated:  01 Sep 2010 13:41:35:000   UTC
-----------------------------------------Fin del Whois de ejemplo  3 de dominio .com----------------------
Creando nuestra propia aplicación Whois
Os he subido un ejemplo de Whois que encontre por la red, esta echo en PHP, lo malo que tenía este ejemplo es que ya tiene solera (unos cuantos años) y con PHP5 no funcionaba, por lo que me he permitido el lujo de actualizar el código respetando los créditos del autor.
Ahora podeis descargar el ejemplo, verlo y tener vuestro propio Whois web, se aprende bastante de ello. 
https://mega.co.nz/#!nBVXnZob!QSmlcg8DqC3jTWkaCIvmplxnvgpDohCD0Mt28Qpx3yc

Otro link de interés por si quereis profundizar aún más en el debate que suscitó WHOIS y la intimidad:
http://gnso.icann.org/en/issues/whois-privacy/whois-services-final-tf-report-12mar07.htm