viernes, 24 de agosto de 2012

Un informático en el lado del mal. Entrevista a John Matherly, creador de Shodan

Un informático en el lado del mal. Entrevista a John Matherly, creador de Shodan

Entrevista a John Matherly, creador de Shodan

Posted: 23 Aug 2012 09:11 PM PDT

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 ( 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 ( 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 ( + 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 ( + 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 :)

No hay comentarios:

Publicar un comentario

Sigue todas las entradas por email