viernes, agosto 24, 2012

Entrevista a John Matherly, creador de Shodan

Cuando apareció Shodan, muchos de los que nos dedicamos a enredar con la seguridad informática, descubrimos un mundo nuevo. La posibilidad de quitar una fase, la de búsqueda de un entorno concreto, de nuestros procesos de investigación. Shodan revolucionó este mundo, y a todos nos parece hoy en día tan evidente que no sabemos porque a nadie se le ocurrió antes.

Con John Matherly en la Defcon 18

Cuando tuve la suerte de conocer a John Matherly, el veinteañero Suizo que creó Shodan, flipé. Desde entonces, año tras año en Defcon, coincidimos para charlar un buen rato, tomar cervezas y hablar de FOCA, Shodan, y nuevas ideas. Y este año no se escapó de responderme a una entrevista. Disfrutad de John, que en las respuestas descubriréis a un amante de la tecnología auténtico.

Saludos Malignos!

1) How did you figure out to create Shodan? What was the idea at the begin?

I wanted to apply the idea of peer-to-peer file sharing to port scanning. Although I got a basic prototype working, it soon became clear that it would be hard to validate results etc. So for the first version I would do all the work myself and make it publicly available. Then it developed into a potential product that would compete with Netcraft for market research, though it eventually took off as a security tool.

1) ¿Cómo se te ocurrió crear Shodan? ¿Cuál fue la idea al principio?

Quería aplicar la idea de compartición de ficheros P2P a escaneo de puertos. Aunque tenía un prototipo basico funcionando, pronto quedó claro que iba a ser difícil validar los resultados, etcétera. Así que para la primera versión haría yo mismo todo el trabajo y lo podría a disposición pública. Entonces evolucionó como un producto potencial que podría competir con Netcraft para hacer estudios de mercado, aunque eventualmente despegase como una herramienta de seguridad.

2) Ok, tell us, Who is John Matherly? What have you been studing?

I grew up in Switzerland (Zurich) and graduated from University of California San Diego with a bachelors in Bioinformatics! I did alright in school, but I'm not a very academic person and prefer to create stuff (I tried lab research, not my thing).

2) Ok, dinos, ¿Quién es John Matherly? ¿Que has estado estudiando?

Crecí en Suiza (Zuirch) y me gradué en la Universidad de California en San Diego ¡con un diploma en Bioinformática! Hice bien mi trabajo en la escuela, pero no soy una persona muy académica y prefiero crear coas (Intenté hacer investigación de laboratorio, pero no es para mí).

3) Now you are mantaining Shodan, but... did you were working in other jobs?

At the time I was a freelancer that was doing general web development stuff (company websites etc.). I had worked on some of my own products (IM Feeds was sort of successful), but nothing major had developed yet. Eventually, I decided to revive my old Shodan project and just put something out there to see whether other people would find it as interesting as me. I was lucky that FX of phenoelit on Twitter picked it up somehow and from there it took off rapidly :)

3) Ahora mantienes Shodan, pero.. ¿has estado trabajando en otras cosas?

En un tiempo fui un freelances que hacía trabajos genéricos de desarrollo web (páginas webs de empresas, etcétera. Trabajé también en algunos de mis propios productos (IM Feeds tuvo algo de éxito), pero nada más importante había desarrollado aún. Eventualmente, decidí revivir mi viejo proyecto Shodan y poner algo fuera para ver si la gente lo encontraba tan interesante como yo. Tuve suerte que FX de phenoelit en Twitter lo recogió de algún modo y desde ese momento despegó rápidamente :)

4) How many servers are running right now behind Shodan?

I have 2 main servers that form the backend, and about 50 servers hosted in various countries that do the crawling for me.

4) ¿Cuántos servidores están corriendo ahora detrás de Shodan?

Tengo 2 servidores principales que forman el backend, y alrededor de 50 servidores en hosting en varios países que me hacen el crawling.

5) Did you have any legal problem in any country spidering servers?

This was obviously something I was worried about, as nobody else had done such a project before (at least publicly). Since I live in the US most of my focus was on the legality of it, and nmap actually has a great page on that subject.

5) ¿Tuviste algún problema legal en algún país haciendo el spidering de servers?

Esto fue obviamente algo de lo que estaba preocupado, ya que nadie más había hecho un proyecto así (al menos públicamente). Desde que vivo en los USA, en lo que presto más atención es en legalidad del proyecto, y nmap tiene de hecho una gran página sobre este asunto.

6) What is the most weird that have been discovered in Shodan?

Lots of stuff was surprising at first (water treatment facilites were online?), but the most bizarre/ morbid find was a visual interface for managing the burner in a crematorium. I think it was covered in Dan Tentler's recent talk.

6) ¿Qué es lo más raro que ha sido descubierto en Shodan?

Montones de cosas fueron sorprendentes al principio (¿las plantas de tratamiento de agua estaban online?), pero lo más bizarrdo/morboso fue un interfaz para gestionar el encendedor de un crematorio. Creo que fue publicado en la última charla de Dan Tentler.

7) How many users are registered in Shodan?

More than 50,000 registered users at the moment!

7) ¿Cuántos usuarios están registrados en Shodan?

¡Más de 50.000 usuarios registrados por ahora!

8) How is built Shodan? I mean, how is the infrastructure and technology in which Shodan is running on?

The crawler is a custom, distributed scanner/ daemon written in libpcap, libdnet, zeromq and uses Python plugins for doing the actual banner grabbing. The website is powered by MongoDB and a highly modified Pylons installation (it's a minimalistic framework to begin with). I'm a big Python fan, so I try to use it whenever it makes sense.

8) ¿Cómo está construido Shodan? Es decir, ¿cómo es la infraestructura y la tecnología en la que Shodan está corriendo?

El crawler es un scanner/daemon personalizado escrito en libpcap, libdnet, zeromq y usa plugins de Python para realizar la captura actual de banners. El sitio web está soportado por MongoDB y una instalación de Pylons altamente modificada (es un framework minimalista con el que empezar). Soy un gran fan de Python así que intento usarlo siempre que tiene sentido.

9) How an european guy end up in San Diego?

I dropped out of high school and my aunt lived in San Diego at the time. Didn't seem like a bad place to be, so I moved there and haven't looked back since!

9) ¿Cómo un tipo europeo acaba en San Diego?

Salí el instituto y mi tía vivía en San Diego por aquel entonces. No parecía un mal lugar en el que estar, así que me trasladé allí y ¡no he mirado atrás desde entonces!

10) San Diego has ToorCON, ComicCON and the guy who created Shodan. What is the most you like of San Diego?

The weather is without a doubt the best thing about San Diego; never too hot or too cold and always a blue sky. The people here also seem to be more laid-back and relaxed, which makes for a friendly environment to live in. I'm actually not a huge beach person, fortunately there's so much other outdoor stuff you can do in San Diego that you're not limited to the ocean (lots of mountains for hiking/ mountain bikes etc.).

10) San Diego tiene la ToorCON, la ComicCON y el tipo que creo Shodan. ¿Qué es lo que más te gusta de San Diego?

El tiempo es sin ninguna duda lo mejor en San Diego; nuca demasiado caluroso o demasiado frio y siempre un cielo azul. La gente aquí siempre parece estar más tranquila y relajada, lo que es bueno para crear un entorno amigable en el que vivir. Actualmente no soy una persona muy playera, pero afortunadamente hay otro montón de cosas que puedes hacer al aire libre en San Diego que no te limitan al oceano (montones de montañas para hacer excursiones a pie o en mountain bike, etcétera).

11) Are you planning to increase the number of ports in Shodan scanning?

Absolutely! Shodan started with just the basic services, but over the past year I've ramped up the list of services by a lot. A lot of people might not be aware of how much Shodan has grown with regards to data diversity. Here's a list of the services I currently scan for:

HTTP, HTTP Alternate (8080), HTTPS, RDP, SNMP, MySQL, MongoDB, Oracle Web, Synology, NetBIOS, UPnP, Telnet, SSH and Redis

And there's also some data on SIP and FTP, though I've yet to re-active those surveys for now. As always, if there's anything somebody wants to see added to Shodan just send me an email (jmath@shodanhq.com) or tweet at me (@achillean)! A lot of things in the list above were added after people asked for them.

11) ¿Estás planeando aumentar el número de puertos a escanear con Shodan?

¡Absolutamente! Shodan comenzó con solo los servicios básicos, pero en el último años he incrementado la lista de los servicios un montón. Mucha gente quizá no está enterada de lo mucho que Shodan ha crecido en diversidad de datos. Aquí hay una lista de servicios que actualmente estoy escaneando:

HTTP, HTTP Alternate (8080), HTTPS, RDP, SNMP, MySQL, MongoDB, Oracle Web, Synology, NetBIOS, UPnP, Telnet, SSH y Redis

Y hay algo de datos SIP y FTP, aunque no he activado esos servicios por ahora. Como siempre, si hay algo que cualquiera quiera ver añadido en Shodan, ¡solo tiene que enviarme un email a (jmath@shodanhq.com) o un tweet a a @achillean! Muchas de las cosas en la lista anterior fueron añadidas después de que la gente preguntara por ellas.

12) And scan for domain names in addition to IPs? What about IPv6? HTML Code? Robots.txt?

I'm not yet very good about handling virtual hosts, which is something I need to improve upon. I've gotten better about doing reverse lookups, but that leaves out a lot of potential names. But, I am going to figure out how to add it.

Ipv6 yes! Brute-forcing the entire space will obviously be a much much harder problem, but there are measures / techniques to reduce the search space to a more tolerable level. This is still an area I'm working on, it's definitely something that's on my radar though.

Respect to HTML, it is already done! Use the 'title' and 'html' filters :). I know the "title" filter is on the live website for sure, the "html" might still be on the beta site.

Robots.txt:  Wow, that's a really good idea actually. I'll need to add that immediately.

12) ¿Y escanear nombres de dominio además de direcciones IP? ¿Qué hay sobre iPV6? ¿Y buscar en el código HTML? ¿Robots.txt?

No soy muy bueno manejando los virtual hosts, que es algo que necesito mejorar. He sido mejor haciendo búsquedas inversas, pero eso deja fuera un montón de potenciales nombres de dominio. Pero sé que tengo que averiguar cómo hacerlo y añadirlo.

IPv6 Sí! Hacer fuerza bruta a todo el espacio de direcciones será obviamente un problema mucho, mucho más difícil, pero ha medidas / técnicas para reducir el espacio de búsquedas a un nivel mucho más tolerable, aunque es algo que está definitivamente en mi radar.

Respecto a HTML, ¡ya está hecho!. Usa los filtros 'title' y 'html' :). Sé que 'title' está disponible en la web seguro, y 'html' quizá est´aún en el sitio beta.

Robots.txt: Wow, de hecho es realmente una buena idea. Añadiré eso inmediatamente.

13) What do you like to do as a hobby?

When I have free time I play video games and otherwise mess around with new technology (socket.io + nodejs at the moment). I spend a lot of time w/ administrative/ non-technical things at the moment, so getting to do a bit of programming is awesome.

13) ¿Qué te gusta hacer como hobby?

Cuando tengo tiempo libre juego video-games y con otro tipo de cosas alrededor de la tecnología (socket.io + nodejs en este momento). Paso un montón de tiempo con tareas administrativas que no tienen que ver con la tecnología por el momento, así que poder programar un poco es fantastico.

14) Have you been to Spain anytime?

I went there once as a young kid (since it's so close to Switzerland), but haven't been there as an adult :( I'm a terrible person :(

14) ¿Has estado en España alguna vez?

Fui allí una vez, cuando era un niño (ya que Suiza está muy cerca), pero he ido como adulto :( Soy una mala persona :(

15) What is the security work that impressed you the most?

Even though I come from a software background, I like to hear about hardware hacks the most (since I don't get to work with hardware much). As such, I really enjoyed Charlie Miller's talk on how he reverse engineered the Apple laptop battery and discovered vulnerabilities in it. As an honorable mention that's not security related, I think the Linux emulator written in Javascript was very impressive.

15) ¿Qué trabajo de seguridad te ha impresiona más?

Aunque vengo el mundo del software, lo que más me gusta escuchar son charlas sobre hacking de hardware (ya que no tengo que trabajar mucho con el hardware). Debido a eso, disfrute mucho la charla de Charlie Miller sobre cómo hizo ingeniería inversa a las baterías de los portátiles de Apple y descubrió vulnerabilidades en ellos. Como mención honorable ya que no es de seguridad,  creo que el emulador de Linux escrito es Javascript fue muy impresionante.

16) Tell us three books we need to read to understand better John Matherly

Richard Feynman's "The Pleasure of Finding Things Out", Tolkien's "The Hobbit" and Pevzner's "An introduction to Bioinformatics Algorithms"

16) Dinos tres libros que debamos leer para entender mejor a John Matherly

El placer de descubrir las cosas, de Richard Feynman, "El Hobbit" de Tolkien' y "An introduction to Bioinformatics Algorithms" de Pevzner.

17) How much money did you need to run Shodan at start?

The first year I ran it on 2 refurbished Dell Vostro machines, which set me back about $500 and then another few hundred a month for the crawlers and related costs.

17) ¿Cuánto dinero necesitaste para echar a andar Shodan al principio?

El primer año lo eché a andar con 2 máquinas Dell Vost remodeladas, que me quitaron unos $500 y luego otros pocos cientos de dólares para crawlers y costes relacionados.

18) Let´s suppose data from a company is indexed in Shodan and they want you to remove the data. Is it possible?

I don't remove data from the active Shodan index.

18) Supongamos que datos de una empresa están indexados en Shodan y ellos quieren que los quites. ¿Es posible?

No borro datos del índice activo de Shodan.

19) Are you ready to deliver a talk with me?

Yes :) I really wanted to submit a talk to the Ekoparty this year, but I couldn't get my act together to make the deadline. I'm already working on a few ideas so hopefully I can present something next year!

19) ¿Estás listo para dar una charla conmigo?

Sí :) Realmente quería enviar una charla para la Ekoparty de este año, pero no pude preparar todo a tiempo para cumplir el deadline. Actualmente estoy trabajando en unas pocas ideas ¡con lo que espero que pueda presentar algo el año que viene!

20) Tell hackers the TOP 3 reasons to use Shodan.

It's fun, free and addictive :)

20) Dile a los hackers el TOP 3 de razones para usar Shodan

Es divertido, gratis y adictivo :)

17 comentarios:

Cristina - 99 dijo...

muy buena entrevista Chema!!

Aitor Iriarte dijo...

Sí, realmente muy interesante.

speech thief chema alonso dijo...

Le preguntas en la entrevista si esta preparado para dar una charla con el gran chema alonso? Chemita chemita... Espero que jonh no sea tan tonto como para dejarse robar la charla

miguel dijo...

Muy divertida!

Chema Alonso dijo...

@luser ¿te molesta que la gente haga amistad? ¿tú no tienes amigos? ¿Crees que necesito robarle una charla a John para dar una conferencia en Troopers?

Saludos!

speech thief chema alonso dijo...

@chema alonso speech thief, si, a jonh o a otro.cuantas charlas has dado que sean tuyas?enumeramelas porfavor

Chema Alonso dijo...

@luser, leete los whitepapers que están publicados y lo sabrás. Es fácil.

Es una lástima que en tu vida lo único que publiques tú sean comentarios troll en anónimo delante de todo el mundo.

Saludos!

Eduardo dijo...

Oye Chema, hoy día 24 de Agosto he intentado acceder a la pagina de Shodan y no se puede, también he hecho un ping y no responde, ¿Sabes ha que se debe? Un Saludo y Happy Hacking!!!

P.D:No soy Jean Paul xd

yonosoyjhon dijo...

@Chema Alonso Maligno Speech Thief,he leido "tus" whitepapers y no veo ninguno que sea tuyo.En todos apareces con un John,un becario o alguien a quien engañaste.

¿Me he dejado algun whitepaper que sea tuyo y no haya leido?Escribelo aqui para que todo podamos conocer tu trabajo,pero porfavor no te molestes en escribir si no sale unicamente tu nombre.

Chema Alonso dijo...

@luser, con sinceridad, creo que necesitas tener novia otra vez o buscar ayuda profesional, que lo tuyo de imaginar e inventarte cosas ya es patológico.

Aprovechando que he tenido un día genial en la Campus Party Europa, te voy a invitar a lectura de mi doctorado, que la hago este Otoño. En él se incluyen los papers que llevo publicando desde el año 2006 en congresos ACM e IEEE - que dudo que te hayas leído - con mis compañeros, amigos, tutores de doctorado, etcétera.

Allí estarán casi todos, así que prometo invitarte a una Coca-Cola y dejarte que les preguntes a ellos o que me preguntes a mí delante del tribunal, para que te quedes contento.

Como cuando inventaste lo de Luís Delgado y la LaCON que te lo dijeron ellos mismos, para que puedas seguir con tus quehaceres "hanónimos" tranquilo.

Saludos!

Anónimo dijo...

chema el gusto de responder a estos troll's , la gente que aprecia tu trabajo sabe quien eres, sabe que eres grande en lo que haces ;) .

por cierto estarás en 8.8 chile ??, si vas voy sino para que ??, en chile no hay grandes exponentes asique ni por broma me gasto 80 dolares, por ir a ver exponentes chilenos :p .

saludos.

Chema Alonso dijo...

@anónimo, gracias por el comentario. Últimamente tengo la agenda difícil, por lo que no sé si pasaré aún por Ekoparty o 8.8. En cualquier caso, dad por seguro que lo anunciaré en el blog...

Saludos!

luser dijo...

@Maligno speech thief: Insisto.Muestrame tus whitepapers donde solo salgas tu,no tu doctorado,que no se de que es pero apuesto que tampoco ha sido idea tuya.¿No tienes whitepapers a tu nombre?.FAIL por tu parte.

Lo de los de la LaCON que crees,¿que no se que los llamaestes lloriqueandole a todos por telefono porque habia un troll en tu blog?,a llorar a tu casa

Chema Alonso dijo...

@troll

Como no has publicado un paper nunca, te voy a explicar como funciona esto. Cuando alguien publica un paper que va a usar en su doctorado siempre tiene que ir firmado por sus tutores de doctorado, y por él. Si alguien le ha ayudado con alguna herramienta o prueba, puede optar por citarlo en los agradecimientos o invitarle a firmar en sus publicaciones.

Después, estos papers se envían a congresos ACM o IEEE, entre otros, donde se valida el trabajo por iguales, que deciden su publicación o no publicación.

Mi doctorado es relativo a las técnicas de inyección ciega en aplicaciones web, que es de lo que he estado trabajando desde antes de abrir este blog (2005) y he publicado todos los papers en los que he trabajado, incluido mi PFC donde hablé por primera vez de hacer una consulta pesada para retardar el tiempo de respuesta en el 2007, con el placer de invitar a mis tutores, y amigos o colaboradores en todos ellos.

Después, he seguido investigando en otras areas, de las que he ido publicando en este blog y puedes leer aquí totalmente, en los papers publicados, artículos o en las conferencias que he dado. Solo o con colaboradores.

Si hubieras leído algún paper académico, descubrirías que la mayoría de los investigadores trabaja con amigos y compañeros, como Alex Sotirov y Mark Dowd, o Juliano Rizzo y Thai Dong, por no citar a la famosa R,S y A.

A parte de investigar y publicar papers, soy revisor de congresos de seguridad, y he tenido por ejemplo el honor de revisar los papers académicos del RECSI, y créeme, los investigadores de verdad trabajamos así.

Sé que cuando una persona llega a un estado de fijación metal como la tuya hacía mí, en la que llegas a inventarte odios hacia mía, intrigas palaciegas o maldad suprema, es porque tu situación metal y posición en la vida te está tratando mal y proyectas en mí todo tu odio, pero de verdad, no es la solución.

Yo ya estoy un poco harto de ti, que tengo bastante claro quién eres, y sé que te han dicho que hablé con mis amigos de la LaCON, porque estás cerca de ellos, pero ellos mismos te dijeron que estabas mintiendo, tanto en lo de la lista, como en lo de Luís Delgado.

Supongo que eres consciente que hacer las cosas en anónimo es una forma muy cobarde de actuar, y que los comentarios que levanta tu actitud son bastante negativos entre todos los que conocemos.

Como forma de ayuda, para que te relajes y pienses bien lo que estas haciendo, voy a dejar de generar estos flames, baneando todos los comentarios que no tengan que ver con el tema.

No soy amigo de hacer esto, pero ya me lo han pedido muchos otros lectores del blog y amigos, y creo que en el fondo te va a venir bien que te deje de hacer caso un poco.

Saludos Malignos!

Anónimo dijo...

Como es una estupidez, lo escribo en modo ninja. Revisa la pregunta 14, ya que dice que NO estuvo en España.

PD: Suerte con los troll. Usa Raid! contra ellos :)

DAN dijo...

aca tenes que inventar otra vez la rueda sino no te ganas la corona de estos o aquellos,mientras te cuestionan sin siquiera ellos ser cuestionados, les da miedo sacar su nick? por lo menos creen uno falso no? chema ya puso su labor que papers que bla bla bla, ya lo puso, le toca al troll bueno si se atreve a dar la cara... salu2! CHEMA desde MEXICO ud un colega muy majo nada mas pero millones de veces mejor que estos trolls se ve a petaz y petaz... de distancia XD!!

Anónimo dijo...

@Chema

Ese "Anonymo" creo que es una muela que nunca te quitaras hasta que no cambies los permisos de los comentarios, a día de hoy el tío sigue dando por culo, es duro he... y tu que paciencia macho de verdad, no es nada agradable ver como una hijo se carga una entrada intentado enseñar a su padre a hacer hijos con comentarios estúpidos y encima eso si fuera verdad lo que dice...

Saludos!

Entrada destacada

10 maneras de sacarle el jugo a tu cuenta de @MyPublicInbox si eres un Perfil Público

Cuando doy una charla a algún amigo, conocido, o a un grupo de personas que quieren conocer MyPublicInbox , siempre se acaban sorprendiendo ...

Entradas populares