La herramienta BigBountyRecon utiliza 58 técnicas diferentes utilizando varios dorks de Google y herramientas de código abierto para agilizar el proceso de reconocimiento (reconnaissance) inicial de la organización objetivo. El reconnaissance es el paso más importante en cualquier prueba de penetración o un proceso de bug hunting. Proporciona al atacante un conocimiento preliminar de la organización objetivo. Además, será útil para obtener información sobre los controles que se han establecido, así como algunas estimaciones aproximadas sobre el nivel de madurez de seguridad de la organización objetivo.
Esta herramienta puede ser utilizada además de su enfoque habitual para la bug hunting. La idea es comprobar y recopilar rápidamente la información sobre la organización objetivo sin invertir tiempo y recordando estas sintaxis. Además, puede ayudarte a definir un enfoque para encontrar algunas ganancias rápidas en el objetivo.
Cualquier sugerencia o idea para esta herramienta es bienvenida – sólo realiza un tweet a @ManiarViral
Técnicas
- Directory Listing: Encontrar directorios abiertos usando Google Dork en tu organización objetivo ayuda a entender la estructura de directorios en el servidor web. Puede revelar información sensible o puede llevar a la divulgación de información.
- Configuration Files: A menudo, los archivos de configuración contienen información confidencial, como contraseñas cifradas, ubicaciones de unidades sensibles o tokens de API que pueden ayudarte a obtener acceso privilegiado a los recursos internos.
- Database Files: Los archivos de base de datos son archivos de datos que se utilizan para almacenar el contenido de la base de datos en un formato estructurado en un archivo en tablas y campos separados. Dependiendo de la naturaleza de la aplicación web, estos archivos pueden proporcionar acceso a información sensible.
- WordPress: WordPress es un CMS de código abierto escrito en PHP. WordPress tiene miles de plugins para construir, personalizar y mejorar los sitios web. Hay numerosas vulnerabilidades en estos plugins. Encontrar relacionados con WordPress.
- Log Files: Los archivos de registro a veces proporcionan información detallada de las actividades de los usuarios en una aplicación concreta. Estos archivos son buenos para ver las cookies de sesión u otros tipos de tokens.
- Backup and Old Files: Los archivos de respaldo son copias originales de los sistemas críticos. Estos proveen acceso a PII o acceso a registros sensibles.
- Login Pages: Es extremadamente importante identificar las páginas de inicio de sesión de tu organización objetivo para realizar intentos de fuerza bruta o probar las credenciales predeterminadas para obtener un mayor acceso a los recursos de la organización.
- SQL Errors: Los errores SQL filtran información sensible sobre los sistemas de backend. Esto puede ayudar a realizar la enumeración en los tipos de base de datos y ver si la aplicación es vulnerable a los ataques relacionados con la validación de entrada como SQL Injection.
- Apache Config Files: El Servidor HTTP Apache se configura colocando directivas en archivos de configuración de texto plano. El archivo de configuración principal se llama normalmente httpd.conf. Además, se pueden añadir otros archivos de configuración usando la directiva Include, y se pueden usar comodines para incluir muchos archivos de configuración. Cualquier directiva puede colocarse en cualquiera de estos archivos de configuración. Dependiendo de las entradas en estos archivos de configuración puede revelar cadenas de conexión a la base de datos, el nombre de usuario y las contraseñas, el funcionamiento interno, las bibliotecas utilizadas y referenciadas y la lógica de aplicación del negocio.
- Robots.txt File: El archivo Robots.txt instruye a los robots web sobre cómo rastrear las páginas de su sitio web. Dependiendo del contenido del archivo, un atacante podría descubrir directorios y archivos ocultos.
- DomainEye: DomainEye es una herramienta de investigación de dominios y hosts que tiene las bases de datos de dominios más grandes. Ofrecen servicios como Whois inverso, búsqueda de IP inversa, así como NS y MX inversos.
- Publicly Exposed Documents: Estos documentos pueden ser usados para extraer información de metadatos.
- phpinfo(): Exponer phpinfo() por si solo no es necesariamente un riesgo, pero en combinación con otras vulnerabilidades podría llevar a que tu sitio se vea comprometido. Además, las versiones de los módulos podrían facilitar la vida de los atacantes cuando atacan la aplicación utilizando exploits recién descubiertos.
- Finding Backdoors: Esto puede ayudar a identificar los desfases de los sitios web o los problemas relacionados con el secuestro de servidores. Al explotar la vulnerabilidad de redirección abierta en la aplicación web de confianza, el atacante puede redirigir a las víctimas a una página de phishing.
- Install/Setup Files: Estos archivos permiten a un atacante realizar una enumeración en la organización objetivo. La información recopilada mediante estos archivos puede ayudar a descubrir detalles de la versión que luego pueden utilizarse para realizar la explotación del objetivo.
- Open Redirects: Con estos, miramos varios parámetros conocidos vulnerables a problemas relacionados con las redirecciones abiertas.
- Apache Struts RCE: Explotar con éxito una vulnerabilidad RCE podría permitir al atacante ejecutar programas arbitrarios. Aquí, buscamos archivos con extensiones de “.action” o “.do”.
- 3rd Party Exposure: Aquí buscamos la exposición de información en sitios de terceros como Codebeautify, Codeshare y Codepen.
- Check Security Headers: Identificar rápidamente si el sitio objetivo está usando encabezados relacionados con la seguridad en la respuesta del servidor.
- GitLab: Busca rápidamente información sensible en el GitLab.
- Find Pastebin Entries: Muestra los resultados relacionados con la organización objetivo en el sitio Pastebin. Pueden ser contraseñas o cualquier otra información sensible relacionada con la organización objetivo.
- Employees on LINKEDIN: Identificar los nombres de los empleados en LinkedIn puede ayudarte a construir una lista de nombres de usuario cuando se trata de un ataque de pulverización de contraseñas.
- .HTACCESS / Sensitive Files: Busca la exposición de archivos sensibles. Esto puede indicar una mala configuración del servidor.
- Find Subdomains: El subdominio te ayuda a expandir la superficie de ataque sobre la organización objetivo. Hay numerosas herramientas disponibles para automatizar el proceso de enumeración de subdominios.
- Find Sub-Subdomains: Identifica los sub-sub-dominios de la organización objetivo usando Google Dork,
- Find WordPress related exposure: La exposición relacionada con WordPress te ayuda a acceder a archivos y carpetas sensibles.
- BitBucket & Atlassian: Fuga de código fuente, credenciales de código duro y acceso a la infraestructura de la nube.
- PassiveTotal: PassiveTotal es una gran herramienta para realizar la investigación de amenazas. Usando BigBountyRecon usaremos PassiveTotal para identificar subdominios en la información del objetivo.
- Stackoverflow: Exposición del código fuente o cualquier pregunta específica de tecnología mencionada en el Stackoverflow.
- Find WordPress related exposure using Wayback Machine: Busca archivos de WordPress archivados usando WaybackMachine.
- GitHub: Busca rápidamente información sensible en el GitHub.
- OpenBugBounty: Busca problemas de seguridad expuestos públicamente en el sitio web de OpenBugBounty.
- Reddit: Información sobre la organización en particular en la plataforma Reddit.
- Crossdomain.xml: Busca archivos crossdomain.xml mal configurados en la organización objetivo.
- ThreatCrowd: Motor de búsqueda de amenazas, sin embargo, vamos a utilizarlo para identificar sub-dominios adicionales.
- .git Folder: Exposición del código fuente. Es posible descargar todo el contenido del repositorio si es accesible.
- YouTube: Busca cualquier noticia reciente en Youtube.
- Digitalocean Spaces: Spaces es un servicio de almacenamiento de objetos compatible con S3 que permite almacenar y servir grandes cantidades de datos. Buscaremos cualquier exposición de datos.
- .SWF File (Google): Flash está muerto. Vamos a usar Google Dorks para buscar versiones antiguas de flash .swf’s que contengan vulnerabilidades.
- .SWF File (Yandex): Flash está muerto. Vamos a usar Yandex para buscar versiones antiguas de flash .swf’s que contengan vulnerabilidades.
- .SWF File (Wayback Machine): Flash está muerto. Vamos a usar WaybackMachine para buscar versiones antiguas de flash .swf’s que contengan vulnerabilidades.
- Wayback Machine: Busca archivos archivados para acceder a archivos antiguos.
- Reverse IP Lookup: La búsqueda inversa de IP permite descubrir todos los nombres de dominio alojados en una dirección IP determinada. Esto te ayudará a explorar la superficie de ataque de una organización objetivo.
- Traefik: Busca un router Edge de código abierto para una interfaz no autentificada que exponga los servicios internos.
- Cloud Storage and Buckets: Google CSE para varios almacenamientos en la nube – aws, digitalocean, backblaze, wasabi, rackspace, dropbox, ibm, azure, dreamhost, linode, gcp, box, mailru
- s3 Buckets: Open s3 buckets.
- PublicWWW: El motor de búsqueda de código fuente indexa el contenido de más de 200 millones de sitios web y proporciona una interfaz de consulta que permite al que llama encontrar cualquier fragmento alfanumérico, firma o palabra clave en las páginas web ‘HTML’, ‘JavaScript’ y código de hoja de estilo ‘CSS’.
- Censys (IPv4, Domains & Certs): Motor de búsqueda para encontrar dispositivos de Internet. Lo usaremos para buscar sub-dominios adicionales usando varios puntos finales en Censys.
- Shodan: Motor de búsqueda de dispositivos conectados a Internet
- SharePoint RCE: Busca el punto final relacionado con CVE-2020-0646 SharePoint RCE.
- API Endpoints: Busca archivos WSDL.
- Gist Searches: usca rápidamente información sensible en las pastes Gist.
- CT Logs: La Transparencia de Certificados (CT) es un estándar de seguridad en Internet y un marco de código abierto para la supervisión y la auditoría de los certificados digitales. Se utiliza para buscar sub-dominios adicionales para una organización determinada.
- Password Leak: Busca contraseñas en texto plano de empleados internos expuestos en varias filtraciones.
- What CMS: Identificar la versión y el tipo de CMS utilizado por una organización objetivo para la enumeración de objetivos y la investigación de explotación.
Capturas de pantalla
Búsqueda de contraseñas en texto plano de una organización objetivo:
Buscando subdominios y otra información interesante sobre la organización objetivo:
Encontrar activos relacionados con Apache Struts:
Verificando si la URL contiene una extensión de “.do”:
¿Cómo usar esta herramienta?
- Paso 1: Descargar el archivo de la sección de publicaciones: Clic aquí. (Puedes ver el análisis en VirusTotal aquí)
- Paso 2: Ejecutar el archivo EXE
- Paso 3: Introducir el dominio de destino
- Paso 4: Haz clic en diferentes botones de la herramienta para encontrar información
- Paso 5: En el caso de Google Captcha, simplemente haz clic en el rompecabezas y sigue adelante.
Operadores de Dorking a través de Google, DuckDuckGo, Yahoo y Bing
Tabla obtenida de aquí.
Dork | Descripción | DuckDuckGo | Yahoo | Bing | |
---|---|---|---|---|---|
cache: | Muestra la versión de la página web desde la caché del buscador. | ✓ | |||
related: | Encuentra páginas web que son similares a la página web especificada. | ✓ | |||
info: | Presenta alguna información que Google tiene sobre una página web, incluyendo páginas similares, la versión en caché de la página y los sitios que enlazan con la página. | ✓ | |||
site: | Encuentra páginas sólo dentro de un dominio particular y todos sus subdominios. | ✓ | ✓ | ✓ | ✓ |
intitle: or allintitle: | Encuentra páginas que incluyen una palabra clave específica como parte de la etiqueta del título indexada. Debe incluir un espacio entre los dos puntos y la consulta para que el operador pueda trabajar en Bing. | ✓ | ✓ | ✓ | ✓ |
allinurl: | Encuentra páginas que incluyen una palabra clave específica como parte de sus URLs indexadas. | ✓ | |||
meta: | Encuentra las páginas que contienen la palabra clave específica en las meta etiquetas. | ||||
filetype: | Busca tipos de archivos específicos. | ✓ | ✓ | ✓ | |
intext:, allintext:, inbody: | Busca en el texto de la página. Para Bing y Yahoo la consulta es inbody:. Para DuckDuckGo la consulta está en intext:.Para Google se puede usar intext: o allintext:. | ✓ | ✓ | ✓ | |
inanchor: | Buscar el texto de anclaje del enlace | ✓ | |||
location: or loc:, region: | Busca una región específica. Para Bing usa location: o loc: y para DuckDuckGo usa region:. Un código de localización iso es un código corto para un país por ejemplo, Egipto es eg y EE.UU. es us. | ✓ | ✓ | ||
contains: | Identifica los sitios que contienen enlaces a los tipos de archivos especificados (p.e. contains:pdf) | ✓ | |||
altloc: | Busca la ubicación además de la especificada por el idioma del sitio (es decir, pt-us o en-us) | ✓ | |||
feed: | Encontrar el feed RSS relacionado con el término de búsqueda | ✓ | ✓ | ✓ | |
hasfeed: | Encuentra páginas web que contienen tanto el término o términos para los que se hace la consulta como uno o más feeds RSS o Atom. | ✓ | ✓ | ✓ | |
ip: | Encontrar sitios alojados en una dirección IP específica | ✓ | ✓ | ||
language: | Devuelve los sitios web que coinciden con el término de búsqueda en un idioma determinado | ✓ | ✓ | ||
book: | Búsquedas de títulos de libros relacionados con palabras clave | ✓ | |||
maps: | Búsquedas de mapas relacionados con palabras clave | ✓ | |||
linkfromdomain: | Muestra los sitios web cuyos enlaces se mencionan en la url especificada (con errores) | ✓ |
BigBountyRecon (este enlace se abre en una nueva ventana) por Viralmaniar (este enlace se abre en una nueva ventana)
BigBountyRecon tool utilises 58 different techniques using various Google dorks and open source tools to expedite the process of initial reconnaissance on the target organisation.