martes, enero 26, 2010

Digi-evolucionando una FOCA

Hace tiempo os conté la experiencia que era para un padre criar una FOCA y el por qué de ella. Hoy os vengo a mostrar como nuestra querida niña se va haciendo mayor.

El objetivo con la nueva versión de la FOCA es conseguir sacar más información de la red de la organización a través de la información publicada, así que nada, lo primero de lo primero es buscar todos los servidores que están indexados en los buscadores Google y Bing. Para ello, lo único que hace es una búsqueda, lo más intensiva posible para extraer todos los servidores que aparecen en alguna URL.

De todos esos servidores se obtiene la lista de todas las direcciones IP y se busca, dentro del mismo rango IP, equipos del mismo dominio. Una sencilla búsqueda que ya implementa la FOCA actualmente en la opción de "Tirando del Hilo".

Después se buscan los dominios relacionados en usando la capacidad de buscar en Bing por IP para realizar otra vez el mismo proceso de búsqueda de servidores relacionados.

Por último, se consulta el DNS para hacer un PTR Scanning con las direcciones IP descubiertas y para buscar servidores en registros conocidos: NS, MX, SPF, etc...

Actualmente se está puliendo el algoritmo para poder integrarlo definitivamente en la FOCA pues el objetivo es retroalimentar el conocimiento de los Metadatos en los ficheros ofimáticos con los servidores descubiertos con los buscadores y el DNS. Debido a esto se encuentra todo el algoritmo en un módulo aparte que podéis ver en la siguiente imagen.


Foca 2 alpha. Módulo de búsqueda de servidores por Buscadores y DNS

Pero... para que nuestra "niña" crezca bien, decidí que tenía que probarla alguien que le buscara todos los defectos y ayudara a potenciarla y se la pasamos a "dab" que nos ha pasado una lista de TO-DOs iniciales con ella, como escanear no por un ns interno sino por todos, buscar los nombres predecibles mediante un fichero de diccionario o tirar a por los registros DNS del Active Directory o IPv6. Vamos que la FOCA 2 tiene aun que aprender a exprimir mejor el DNS. Dab se ha convertido para mi en una referencia en estas cosas, y siempre que le digo algo me pasa las idéas mejoradas, así que habrá que hacerle caso en todo.

Aun así, actualmente es bastante funcional, y muy descriptiva. En el siguiente ejemplo, con la URJC se puede ver como funciona a base de seguir el caminio. En el caso del servidor hector.urjc.es se puede ver el camino lógico.


Camino para descubrir la información de un servidor

Primero se busca en Google en el dominio urjc.es y aparece un www.urjc.es. De ese nombre se saca su IP y sale la dirección pública. De esa dirección se buscan dominios viviendo en ella en Bing y sale que urjc.es también es un dominio que está en esa IP. Se hace una resolución de urjc.es en el DNS y sale una dirección IP interna. De esa dirección IP interna se hace una resolución inversa y sale hector.urjc.es.

Sencillo y funcional.

Para que os hagáis una idea, el algoritmo ahora tarda en ejecutarse entre 10 minutos y 1 hora, dependiendo del tamaño de la red del dominio a escanear y la información disponible de la misma. Todo ello sin hacer un ping a un servidor.

Para probarlo, lo he pasado a mi universidad y éste es un 10% de la información que es capaz de descubrir la FOCA sin tocar los equipos. Es un 10% porque me aburrí de copiar y pegar en el Paint Brush. Tampoco se ve en la imagen los dominios asociados y el mapa de direcciones IP, pero seguro que os hacéis una idea.

Ya os dejaremos jugar con ella, pero los primero que la tendrán será todos los que se hayan apuntado a los RootedLabs del Dab o míos y luego, en la RootedCon será liberada para que nade por esos océnaos de Internet... ¡Que bonito ver crecer a los animalitos!

Saludos Malignos!

12 comentarios:

  1. Vaya locura! Esto ya no es una foca, esto es un tiburón!!

    Ya tengo ganas de probarla en la Rooted ;)

    Saludos y continuad así!

    Newlog

    P.D.: Qué diferencia hay entre usar google web o google api?

    ResponderEliminar
  2. La foca va subida en una bola de nieve, cada vez es más grande y el resto de "animales" debería tenerle miedo...

    Debe ser magnífico estar en un proyecto con tanto potencial, enhorabuena por la parte que te toca.

    saludos

    ResponderEliminar
  3. Que ganas de probarla! Está desarrollandose un montón, no sabia que quisierais (no que no pudierais) llegar hasta este punto con este proyecto.

    Suerte! Un saludo ;-)

    ResponderEliminar
  4. @Newlog de este modo se puede elegir si obtener los resultados mediante la web de google o con la API. Los resultados no siempre son los mismos y la API sabes que siempre va a funcionar igual, mientras que la web en cuanto cambien el formato dejará de funcionar.

    ResponderEliminar
  5. que ilusion y pensar que era una foquita chiquitina...

    desde que la probé voy probando servidores para pasar el rato a modo de hobby pero aun no me encontré nada tan interesante como el video del Asegura IT Camp...
    bueno algunos tienen suerte...

    :p

    ResponderEliminar
  6. Gracias Thor!

    Newlog

    ResponderEliminar
  7. http://www.youtube.com/watch?v=N8AX2CKbPlU
    Buen trabajo :-)

    ResponderEliminar
  8. Increible como va la nueva FOCA, sobre todo después de verla actuar en directo (gracias Chema!).

    Saludos ;-)

    PD: Soy Benlloch, el quería conocerte. Las charlas han estado muy bien, felicidades, aunque si me tengo que quedar con algo me quedo con César y sus trucos con los micrófonos xDD

    ResponderEliminar
  9. Que root nos coja confesados llega la nueva versión de FOCA: FOLLA

    Lo siguiente ¿qué es? poner un botón que diga : REVELAR SECRETOS DE ESTADO...

    Buen trabajo!

    ResponderEliminar
  10. Te has pasado Chema, apenas he comentado alguna cosilla tonta que seguro hubierais añadido en dos semanas, además la aplicación ya e más que funcional!!

    Un abrazo

    ResponderEliminar
  11. Vaya, parece que a la foca le están creciendo los colmillos...
    Estáis creando un monstruo, váis a ir al infiennno:)

    Espero verla en acción en la rooted

    Un saludo.
    Manolo.

    ResponderEliminar