Cómo sacar el máximo provecho de las búsquedas de Shodan

 Resultado de imagen para SHODAN
Shodan es un motor de búsqueda que se distingue claramente de la mayoría de los motores de búsqueda de Internet. En lugar de buscar a través de contenido intencionalmente servido y entregado a los navegadores web, Shodan nos permite buscar dispositivos conectados a Internet. Creado por John Matherly, Shodan utiliza escáneres distribuidos en todo el mundo para seleccionar aleatoriamente direcciones IP de destino e identificar los puertos TCP y UDP que escuchan. Los puertos de escucha se enumeran adicionalmente para recopilar banners de protocolo, páginas web y otros datos de servicio. Todos estos datos se añaden a una enorme base de datos que describe el "qué" de los dispositivos de Internet.
La función de búsqueda de Shodan es potente, lo que nos permite especificar términos genéricos como "cámara" o incluso un número de parte específica como "WVC80N" e identificar rápidamente los dispositivos que coinciden.



Más allá de la interfaz web, Shodan ofrece una API completa y herramientas de línea de comandos para buscar y analizar los resultados de los dispositivos de Internet. En este artículo nos centraremos en el uso de la interfaz web para buscar dispositivos eficaces, así como consejos para usar Shodan en su próxima prueba de penetración.

Comportamiento de búsqueda predeterminado

De forma predeterminada, la función de búsqueda del sitio web de Shodan usará un término de búsqueda como una expresión exacta en una coincidencia de cadenas. Shodan no hace coincidencia de palabras incompleta (por ejemplo, "WVC80" no devolverá coincidencias con "WVC80N") y tratará varias palabras como una expresión AND lógica. Las palabras comunes (a, and, by, the, is, on, it) son ignoradas.

La búsqueda básica realizará la comparación de cadenas con la información de banner del servidor sin buscar a través de metadatos adicionales de protocolo que también se recopilen sobre los dispositivos descubiertos. La documentación de Shodan no revela exactamente qué datos de protocolo se usan en la búsqueda predeterminada, pero el análisis empírico indica que incluye al menos lo siguiente:

Información del encabezado HTTP
Información de cabecera y certificado de HTTPS
Varias banderas del servidor del juego (A2S de vapor, Minecraft, y más)
Banners FTP
Bandera del servidor NetBIOS
Encabezado SSH y datos de clave del servidor
Telnet banner
Banner SMTP
Banner de NTP
Banner SIP / VoIP
Configuración de configuración del servidor DNS
¡Y más!




Los metadatos sobre un servicio no se buscan de forma predeterminada. Esta lista incluye:

Contenido de la etiqueta de título HTML
Encabezado HTML y contenido corporal
Ubicación física (a través de la geolocalización IP)
Número de sistema autónomo (ASN)
Proveedor de servicios de Internet (por nombre, como "Verizon Wireless")
Operadores de búsqueda de Shodan

Para realizar búsquedas más avanzadas usando Shodan, podemos aplicar operadores de búsqueda. Los operadores de búsqueda sólo están disponibles para usuarios registrados. Es gratis crear una cuenta, que también le dará una clave de API para su uso con la herramienta de línea de comandos de Shodan.

Una vez que haya iniciado sesión, puede aplicar modificadores de búsqueda adicionales para enfocar su búsqueda. Los o

  • title: Buscar el contenido raspado de la etiqueta HTML
  • html: Buscar el contenido HTML completo de la página devuelta
  • product: Buscar el nombre del software o producto identificado en el banner
  • net: Buscar un determinado netblock (ejemplo: 204.51.94.79/18)
  • version: Buscar la versión del producto
  • port: Buscar un puerto o puertos específicos
  • os: Buscar un nombre de sistema operativo específico
  • country: Búsqueda de resultados en un país determinado (código de 2 letras)
  • city: Buscar resultados en una ciudad determinada
Algunos filtros permiten varios valores, como "postal: 97201,97202".
De forma predeterminada, varios términos de búsqueda se tratan como expresiones booleanas AND. También puede negar un prefijo particular con el "!" Al principio del operador de búsqueda. Por ejemplo, para buscar máquinas que ejecutan Outlook Web Access en puertos que no sean 80 y 443, puede combinar el título y los operadores de puerto de la siguiente manera:




Aplicando Shodan en su prueba de la pluma

Search query: title:"Outlook Web Access" !port:443,80
Es fácil despreciar a Shodan como una funcionalidad para encontrar dispositivos vulnerables: una herramienta de ataque oportunista. Sin embargo, hacerlo es pasar por alto los beneficios que Shodan puede ofrecer a usted ya sus clientes en una prueba de penetración.
Responder preguntas sobre vulnerabilidades similares
Al preparar un informe para un cliente, intento responder a la inevitable pregunta: "¿Cuántos otros son igualmente vulnerables?" A veces esta pregunta intenta justificar una configuración vulnerable como estándar común o de la industria o como un mecanismo defensivo para explicar por qué continúan ejecutando Outlook Web Access en un servidor IIS 5.0.
Utilizando Shodan, puede utilizar rápidamente los criterios de búsqueda descritos en este artículo para responder a esa pregunta. Al momento de escribir este documento, parece haber no menos de 18 servidores de IIS / 5.0 publicamente accesibles que ejecutan Outlook Web Access. Agregar este nivel de detalle a un informe de prueba de penetración puede ayudar a su cliente a comprender mejor la naturaleza del riesgo en el contexto de otras configuraciones similares.




Search query: Microsoft-IIS/4.0 title:"outlook web"
Metas de alcance por red
Shodan puede revelar rápidamente información sobre los dispositivos de destino con alcance a un rango específico de direcciones IP. Esto puede ser útil para ayudar a obtener una rápida comprensión de los activos de su cliente y los servicios en esos activos como es conocido por Shodan.

Por ejemplo, el acceso a Internet de esta oficina del autor utiliza direcciones IP en el bloque 100.10.23.0/24 a través de Verizon FIOS. Puedo preguntar a Shodan cuántas personas con direcciones IP en mi red también tienen sus enrutadores disponibles para autenticación remota y acceso. Al parecer, es demasiado muchos.





Search query: net:100.10.23.0/24 unauthorized
Objetivos de alcance sin rangos de IP
A veces, el punto de contacto con el que está trabajando para determinar el alcance de su prueba de penetración puede no ser consciente de la presencia de toda la compañía en la Web. Al buscar las características de identificación del sitio web (como el aviso de derechos de autor), es posible que pueda encontrar sitios menos conocidos para una organización determinada.
Como probador de penetración, identificar objetivos que son propiedad de una organización que no conocen le permite demostrar claramente su valor y utilidad como analista de seguridad.
Por ejemplo, una búsqueda de html: "eBay Inc. Todos los derechos reservados" muestra un pequeño número de sitios (eBay ha excluido muchas de sus propiedades web de Shodan) que pueden no ser tan conocidos:




Search query: html:"eBay Inc. All Right Reserved"
Si su objetivo es lo suficientemente grande como para tener asignaciones regionales del Registro de Internet (donde la información WHOIS refleja el nombre de la organización), puede combinar búsquedas negativas para excluir los rangos conocidos con el filtro html (búsqueda de derechos de autor u otras cadenas únicas) o "org "Filtro.
Shodan y usted

Utilizando el poder de Shodan y un cierto pensamiento creativo, usted puede proporcionar el valor adicional a sus pruebas de la penetración. Utilice algunas de estas ideas en su próxima prueba de pluma y ver si puede encontrar algunos objetivos que se supone que en el ámbito de aplicación, pero no lo fueron! Sobre todo, diviértase descubriendo cosas nuevas en Internet y proporcionando más valor al personal del sistema de destino.

escrito por: Josh Wright Y Jeff McJunkin