Shodan es un motor de búsqueda para dispositivos conectados a Internet. Los motores de búsqueda web, como Google y Bing, son excelentes para encontrar sitios web. Pero ¿qué sucede si está interesado en encontrar equipos que ejecuten cierto tipo de software específico (como Apache o Nginx)? ¿O si desea saber qué versión de Microsoft IIS es la más popular? ¿O qué sistemas operativos viejos aún están conectados a internet?, quizás surgió una nueva vulnerabilidad y desea ver cuántos hosts podrían ser vulnerables. Los motores de búsqueda web tradicionales no le permiten responder esas preguntas. Pero shodan si, ya que éste recopila datos principalmente en servidores web (HTTP/HTTPS: puertos 80, 8080, 443, 8443), así como FTP (puerto 21), SSH (puerto 22), Telnet (puerto 23), SNMP (puerto 161), IMAP (puertos 143, o (cifrado) 993), SMTP (puerto 25), SIP (puerto 5060), y Protocolo de transmisión en tiempo real (RTSP, puerto 554). Este último se puede utilizar para acceder a las cámaras web y su transmisión de video.
Y bien, te preguntarás: ¿Cómo es que este buscador puede hacer esto?
¿Cómo funciona?
La unidad básica de datos que recopila Shodan es el banner. El banner es información textual que describe un servicio en un dispositivo. Para los servidores web, estos serían los encabezados que se devuelven o para Telnet sería la pantalla de inicio de sesión.
El contenido del banner varía mucho según el tipo de servicio. Por ejemplo, aquí hay un banner HTTP típico:
HTTP/1.1 200 OK
Server: nginx/1.1.19
Date: Sat, 03 Oct 2015 06:09:24 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 6466
Connection: keep-alive
El banner anterior muestra que el dispositivo está ejecutando el software del servidor web nginx con una versión de 1.1.19. Para mostrar qué tan diferentes pueden verse los banners, aquí hay un banner para el protocolo del sistema de control industrial Siemens S7
Copyright: Original Siemens Equipment
PLC name: S7_Turbine
Module type: CPU 313C
Unknown (129): Boot Loader A
Module: 6ES7 313-5BG04-0AB0 v.0.3
Basic Firmware: v.3.3.8
Module name: CPU 313C
Serial number of module: S Q-D9U083642013
Plant identification:
Basic Hardware: 6ES7 313-5BG04-0AB0 v.0.3
El protocolo Siemens S7 devuelve un banner completamente diferente, esta vez brindando información sobre el firmware, su número de serie y muchos datos detallados para describir el dispositivo.
Tienes que decidir qué tipo de servicio te interesa cuando buscas en Shodan porque los banners varían mucho.
Metadatos del dispositivo
Además del banner, Shodan también captura metadatos sobre el dispositivo, como su ubicación geográfica, nombre de host, sistema operativo y más. La mayoría de los metadatos se pueden buscar a través del sitio web principal de Shodan, sin embargo, algunos campos sólo están disponibles para los usuarios de la API de desarrollador.
USO
Puedes acceder al sitio web de shodan en el siguiente enlace shodan.io.
(Aunque en este artículo nos enfocaremos en la versión web, también puede usarse por medio de la línea de comandos, en la cual podremos realizar distintos tipos de funcionalidades, por ejemplo, personalizar nuestros scripts)
Así se vería la página principal:
Si vamos a la pestaña de “Explore” veremos unas recomendaciones para hacer búsquedas, ya sea por categoría, lo más buscado recientemente y el top de búsquedas más populares, así como una diversa cantidad de filtros para personalizar tu búsqueda. No te preocupes si no entiendes bien cómo funciona en otro artículo profundizaremos más en los filtros de búsqueda y cómo usarlos para encontrar cosas más específicas.
Realizaremos una búsqueda del top más votado para que veas como funciona, en este caso elegimos webcam, lo que nos arrojará las webcams expuestas a internet, como podemos ver la siguiente imagen nos muestra el número de resultados, los países donde encontró más resultados, los puertos abiertos y las organizaciones.
Daremos clic al primer resultado solo para ver qué más información nos despliega, como se puede apreciar nos da información general como el país, la ciudad, el ISP etc. Los puertos que tiene abierto y una parte muy interesante que es las vulnerabilidades, esto no quiere decir que el servicio sea vulnerable solo son posibles vulnerabilidades que puede o no tener, las tecnologías web como los frameworks que se utilizaron:
**Nota Shodan actualmente devuelve 10 resultados a los usuarios sin una cuenta y 50 a los que tienen una. Si los usuarios desean eliminar la restricción, deben proporcionar una razón y pagar una tarifa.
Conclusión
Esto sería una demostración muy básica del uso de Shodan, pero creo que te puedes dar una idea del alcance que puede tener este buscador, por lo que en una siguiente publicación profundizaremos más en el uso de esta grandiosa herramienta.
Escrito Por:
David Islas
Security Engineer