02 Recopilacion pasiva de informacion
Recopilación Pasiva de Información: Una Introducción al Análisis Discreto
La recopilación pasiva de información es una técnica fundamental en el ámbito de la seguridad informática y el hacking ético. Esta metodología permite al analista obtener datos sobre un objetivo determinado sin que sus acciones sean detectadas por el mismo. A continuación, exploraremos en detalle los aspectos más relevantes de esta práctica.
¿Qué es la recopilación pasiva de información?
La recopilación pasiva de información implica recolectar datos sin interactuar directamente con el objetivo. Esto significa que las actividades del analista no generan alertas ni señales que puedan poner en aviso al sujeto o sistema que está siendo estudiado. El objetivo es trabajar de manera completamente invisible, aprovechando fuentes de información disponibles públicamente.
Características principales
-
Baja detectabilidad: Las acciones realizadas durante este proceso están diseñadas para evitar cualquier tipo de detección. Esto hace que la recopilación pasiva sea ideal en las etapas iniciales de una auditoría de seguridad o investigación.
-
Desafíos en su ejecución: A pesar de su discreción, este enfoque puede ser complicado de implementar de manera efectiva. Los resultados suelen ser limitados o poco concluyentes, lo que exige al analista complementar esta técnica con otras formas de recopilación de datos.
-
Fuentes de información pública: La recopilación pasiva se basa en el acceso a información previamente almacenada en lugares públicos, como bases de datos abiertas, redes sociales, foros o registros en línea. Herramientas como motores de búsqueda avanzados o consultas WHOIS suelen ser útiles en este contexto.
-
Uso combinado con otras técnicas: Rara vez se emplea como una técnica única, ya que su efectividad depende de cómo se integre dentro de un plan más amplio de recolección de información.
Ejemplos de recopilación pasiva
Algunos ejemplos de cómo se puede llevar a cabo la recopilación pasiva incluyen:
- Analizar perfiles de redes sociales para obtener información personal o profesional de un individuo.
- Explorar directorios públicos o registros de dominio para identificar propietarios de sitios web.
- Realizar búsquedas en motores de búsqueda avanzados utilizando operadores lógicos para localizar datos específicos.
Conclusión
La recopilación pasiva de información es una herramienta crucial en el arsenal de un analista de seguridad o hacker ético. Aunque sus resultados pueden ser limitados, su capacidad para operar de manera discreta la convierte en un primer paso esencial en cualquier análisis o prueba de penetración. Combinar esta técnica con otros métodos activos puede ofrecer una visión más completa y detallada del objetivo.
Google hacking
Google Hacking: La Búsqueda Avanzada para la Obtención de Información
El Google Hacking, también conocido como “Google Dorking”, es una técnica que utiliza los operadores avanzados de búsqueda de Google para localizar información específica en sitios web. Aunque esta técnica se popularizó por su potencial en actividades de ciberseguridad, es ampliamente usada en análisis ético para descubrir datos accesibles públicamente que podrían representar un riesgo.
¿Qué es Google Hacking?
Google Hacking consiste en emplear comandos avanzados de búsqueda para explorar el contenido indexado por Google. Esto permite encontrar información que no es evidente a través de búsquedas normales, como:
- Archivos sensibles expuestos (PDF, TXT, DOCX, etc.).
- Paneles de administración sin protección.
- Información técnica sobre servidores o sistemas.
En el ámbito de la seguridad informática y hacking ético, esta técnica se utiliza para identificar vulnerabilidades en sitios web o descubrir datos expuestos accidentalmente por una organización.
Casos de Uso de Google Hacking
Algunos ejemplos comunes en los que Google Hacking puede ser útil incluyen:
- Auditorías de seguridad: Identificar documentos confidenciales o datos sensibles de una organización que están accesibles públicamente.
- Reconocimiento: Obtener información sobre tecnologías, configuraciones o activos de un objetivo (por ejemplo, direcciones IP, versiones de software, etc.).
- Recopilación de datos: Analizar ficheros, metadatos o directorios visibles en un sitio web.
Cómo Usar Google Hacking para Encontrar Información de Udemy
Supongamos que deseas buscar información relacionada con Udemy, como ficheros .txt
o .pdf
que contengan información específica. Aquí te explico cómo hacerlo con ejemplos prácticos.
1. Buscar archivos .txt relacionados con Udemy
Comando:
site:udemy.com filetype:txt
Explicación:
site:udemy.com
limita la búsqueda a los dominios de Udemy.filetype:txt
busca únicamente archivos con la extensión.txt
.
Este comando buscará cualquier archivo de texto que Google haya indexado dentro del dominio de Udemy.
2. Buscar archivos .pdf relacionados con Udemy
Comando:
site:udemy.com filetype:pdf
Explicación:
- Igual que el anterior, pero esta vez enfocado en encontrar archivos PDF que podrían contener manuales, políticas o materiales educativos.
3. Búsqueda por palabras clave dentro de archivos
Comando:
site:udemy.com filetype:pdf "curso"
Explicación:
"curso"
busca específicamente la palabra “curso” dentro de los archivos PDF indexados.
4. Encontrar directorios abiertos en Udemy
Comando:
site:udemy.com intitle:index.of
Explicación:
intitle:index.of
busca directorios abiertos en el dominio de Udemy que puedan contener listas de archivos expuestos.
Dobles comillas
Uso de las Doble Comillas (""
) en Google Hacking
Las dobles comillas (""
) son un operador esencial en Google Hacking, ya que permiten buscar frases exactas. Esto significa que Google buscará únicamente las páginas que contengan el texto exacto dentro de las comillas, sin variar el orden ni incluir palabras adicionales.
¿Para qué sirven las dobles comillas?
- Búsquedas precisas: Si buscas una frase específica, como
"curso de hacking ético"
, Google mostrará solo los resultados que incluyan esa frase exacta. - Filtrar ruido en la búsqueda: Ayudan a excluir resultados irrelevantes que contengan palabras similares pero no relacionadas en contexto.
- Útil en análisis de logs o texto: Puedes buscar cadenas exactas de texto que sean relevantes para un análisis, como nombres de usuarios, rutas específicas o fragmentos de código.
Ejemplo:
"login failed"
Este comando buscará todas las páginas que contengan exactamente la frase “login failed”.
Uso de index of
El comando intitle:index.of
es una herramienta clave en Google Hacking que permite localizar directorios abiertos en servidores web. Muchos servidores tienen directorios mal configurados, donde no se oculta la lista de archivos disponibles. Este operador busca específicamente páginas cuyo título contenga “Index of”, lo que suele indicar que se está mostrando un directorio.
¿Para qué sirve intitle:index.of
?
- Acceso a directorios abiertos: Ayuda a localizar carpetas en servidores que no tienen configurado un archivo
index.html
o que deliberadamente muestran su contenido. - Exploración de ficheros expuestos: Es común encontrar archivos como logs, copias de respaldo o documentos almacenados en directorios visibles.
- Auditorías de seguridad: Permite identificar riesgos en la configuración de servidores.
Ejemplo:
intitle:index.of "passwords"
Este comando buscará directorios abiertos cuyo contenido tenga la palabra “passwords”.
Uso de /chat/logs
en Google Hacking
La búsqueda de rutas específicas como /chat/logs
es útil para localizar carpetas de registros o sistemas de chat mal configurados. En servidores con configuraciones inadecuadas, es posible acceder a archivos sensibles que registran conversaciones, accesos o actividades de usuarios.
¿Qué significa buscar /chat/logs
?
- Rastreo de logs expuestos: Esta ruta es una convención común para registros de chats o sistemas de mensajería.
- Identificación de vulnerabilidades: Localizar estos registros puede revelar información sensible, como nombres de usuarios, contraseñas o conversaciones privadas.
- Uso en auditorías: Es una forma eficaz de detectar configuraciones incorrectas en servidores web.
Ejemplo:
site:example.com "/chat/logs"
Este comando buscará páginas en el dominio example.com
que contengan la ruta exacta /chat/logs
.
Combinar site:
, intitle:index.of
y otras técnicas
La combinación de operadores como site:
, intitle:index.of
, y búsquedas específicas mejora significativamente la precisión de las consultas.
¿Cómo combinarlos?
-
Buscar un directorio específico en un sitio web
site:example.com intitle:index.of "/chat/logs"
Explicación:
site:example.com
limita la búsqueda al dominioexample.com
.intitle:index.of
busca directorios abiertos."/chat/logs"
busca rutas específicas relacionadas con chats o registros.
-
Encontrar logs con palabras clave
site:udemy.com intitle:index.of "error.log"
Explicación:
site:udemy.com
busca únicamente en el dominio de Udemy.intitle:index.of
busca directorios visibles."error.log"
filtra para localizar específicamente archivos con este nombre.
-
Identificar archivos PDF en un directorio abierto
site:example.com intitle:index.of filetype:pdf
Explicación:
filetype:pdf
busca exclusivamente archivos PDF dentro de los directorios abiertos encontrados.
Ejemplo Real: Encontrar Archivos Sensibles Relacionados con Udemy
Si quisiéramos buscar registros expuestos relacionados con Udemy, podríamos usar:
-
Logs en directorios abiertos:
site:udemy.com intitle:index.of "/logs"
-
Archivos de texto con palabras clave:
site:udemy.com filetype:txt "password"
-
PDFs dentro de directorios indexados:
site:udemy.com intitle:index.of filetype:pdf
Conclusión
Google Hacking, con herramientas como las dobles comillas, intitle:index.of
, y rutas específicas como /chat/logs
, es una técnica poderosa para realizar búsquedas avanzadas. Combinando estas consultas con el operador site:
, puedes limitar y refinar tus resultados para obtener información específica de un dominio.
Búsquedas de Bases de Datos con Google Hacking: Explorando Archivos .sql
El Google Hacking también es muy útil para localizar bases de datos expuestas en Internet, específicamente archivos con extensión .sql
. Estos archivos suelen contener datos de respaldo (backups) de bases de datos, que podrían incluir información sensible como credenciales de usuarios, contraseñas y configuraciones. A continuación, exploraremos cómo realizar este tipo de búsquedas y cómo buscar palabras clave dentro de esos archivos.
Búsqueda Básica de Archivos de Bases de Datos
Si buscas archivos de bases de datos SQL que hayan sido indexados por Google, puedes usar el siguiente comando:
filetype:sql "MySQL dump"
Explicación:
filetype:sql
: Este operador busca únicamente archivos con la extensión.sql
, que suelen ser copias de seguridad de bases de datos MySQL."MySQL dump"
: Limita la búsqueda a archivos que incluyan la frase “MySQL dump”, que es una indicación común de un respaldo generado por MySQL.
Este comando te mostrará archivos .sql
accesibles públicamente que probablemente contienen datos estructurados.
Búsqueda Avanzada: Buscar Palabras Clave Dentro de Archivos SQL
Puedes buscar palabras clave específicas dentro de archivos .sql
, como términos relacionados con contraseñas. Para hacerlo, utiliza una combinación de operadores y expresiones.
Ejemplo:
filetype:sql "MySQL dump" (contraseña|password|pass)
Explicación:
filetype:sql
: Busca archivos con extensión.sql
."MySQL dump"
: Limita la búsqueda a archivos de respaldo de bases de datos MySQL.(contraseña|password|pass)
: Utiliza una expresión lógica para buscar cualquiera de las palabras clave dentro del contenido del archivo. Estas palabras suelen aparecer en bases de datos que almacenan contraseñas o datos sensibles.
Ejemplos Prácticos de Búsquedas
-
Búsqueda de bases de datos expuestas con posibles contraseñas:
filetype:sql "MySQL dump" (contraseña|password|clave)
Esto busca archivos
.sql
que contengan las palabras clave relacionadas con contraseñas en español e inglés. -
Identificar archivos con usuarios y contraseñas:
filetype:sql "MySQL dump" (username|usuario|user)
Este comando localiza archivos que podrían contener tablas o registros relacionados con usuarios.
-
Bases de datos específicas para un sitio web:
site:example.com filetype:sql "MySQL dump"
Este comando limita la búsqueda a archivos
.sql
asociados con el dominioexample.com
.
Consejos para Refinar las Búsquedas
-
Buscar estructuras de tablas sensibles:
filetype:sql "CREATE TABLE" (contraseña|password|clave)
Esto buscará archivos SQL que incluyan comandos
CREATE TABLE
y que tengan columnas relacionadas con contraseñas. -
Encontrar datos expuestos con registros sensibles:
filetype:sql "INSERT INTO" (contraseña|password|clave)
Este comando buscará archivos SQL que contengan comandos
INSERT INTO
, que suelen incluir registros de datos sensibles. -
Bases de datos específicas para ciertas tecnologías: Por ejemplo, buscar bases de datos de WordPress:
filetype:sql "MySQL dump" "wp_users"
Esto buscará archivos que contengan tablas relacionadas con usuarios en instalaciones de WordPress.
Conclusión
El uso de Google Hacking para buscar bases de datos expuestas, como con el comando filetype:sql "MySQL dump"
, puede ser una herramienta poderosa en el contexto de auditorías de seguridad y hacking ético. Además, combinaciones avanzadas con palabras clave como (contraseña|password|pass)
permiten localizar información sensible dentro de estos archivos. Sin embargo, siempre se debe actuar con responsabilidad y dentro de los límites de la ley.
¿Qué es el operador inurl
?
El operador inurl
en Google Hacking es una herramienta que permite buscar páginas web cuya URL contenga una palabra o frase específica. Es útil para localizar recursos específicos dentro de un dominio o para encontrar páginas que puedan tener parámetros potencialmente vulnerables a ciertos ataques, como la inyección SQL.
¿Cómo funciona?
El operador inurl
le indica a Google que busque palabras clave o fragmentos específicos dentro de las URL de las páginas indexadas. Por ejemplo:
inurl:login
Este comando buscará todas las páginas cuya URL incluya la palabra login
, como:
example.com/login
example.com/user/login
example.com/page.php?login
Casos de Uso de inurl
-
Encontrar páginas con rutas específicas: Si buscas páginas relacionadas con inicio de sesión, puedes usar:
inurl:login
-
Identificar parámetros vulnerables: Puedes buscar sitios web con parámetros que podrían ser objetivos de pruebas de vulnerabilidades:
inurl:index.php?id=
-
Buscar directorios específicos: Si sabes que un recurso está en un directorio común, como
admin
, puedes usar:inurl:admin
-
Auditorías de seguridad: Localizar posibles puntos de entrada para pruebas de hacking ético:
inurl:"fileupload"
¿Qué significa inurl:index.php?id=
?
El comando:
inurl:index.php?id=
Busca específicamente páginas que usan el archivo index.php
y tienen un parámetro llamado id
en la URL. Este tipo de estructura es muy común en aplicaciones web dinámicas que generan contenido a partir de bases de datos.
¿Por qué es importante?
Páginas con este tipo de parámetros pueden ser vulnerables a ataques como inyección SQL si no han sido diseñadas con buenas prácticas de seguridad. Por ejemplo, si el parámetro id
se pasa directamente a una consulta SQL sin validación o escape, un atacante podría manipular la URL para ejecutar código malicioso.
Ejemplos Prácticos
-
Identificar páginas con parámetros potencialmente vulnerables:
inurl:index.php?id=
Esto buscará páginas como:
example.com/index.php?id=1
example.com/index.php?id=abc
example.com/index.php?id=12345
-
Combinar con operadores para afinar la búsqueda: Si deseas limitar los resultados a un dominio específico, puedes usar el operador
site:
junto coninurl
:site:example.com inurl:index.php?id=
Esto buscará únicamente en el dominio
example.com
. -
Buscar parámetros con palabras clave específicas: Puedes combinar
inurl
con palabras clave para localizar páginas que podrían contener información sensible:inurl:index.php?id= "MySQL error"
Esto busca páginas donde un error de MySQL podría revelar detalles internos de la base de datos.
-
Búsqueda con posibles pruebas de vulnerabilidades:
inurl:index.php?id=1'
Este comando busca páginas que podrían mostrar errores si el parámetro
id
es mal manejado.
Uso del Operador allintitle
en Google Hacking
El operador allintitle
es una herramienta de búsqueda avanzada que le indica a Google que busque únicamente páginas web cuyo título contenga todas las palabras clave especificadas. Esto es especialmente útil para localizar páginas con títulos que revelen información específica, como archivos restringidos, paneles de administración, mensajes de error, etc.
¿Qué es el título de una página web?
El título de una página web es el texto que aparece en la etiqueta <title>
del HTML de la página y que se muestra como el encabezado en los resultados de búsqueda de Google. Por ejemplo, para esta página:
<title>Restricted Access - Admin Panel</title>
Google asociará el texto “Restricted Access - Admin Panel” como el título.
¿Cómo funciona allintitle
?
Cuando usas allintitle
, Google buscará páginas que contengan todas las palabras especificadas dentro del título, sin importar el orden.
Por ejemplo:
allintitle:admin login
Esto buscará páginas cuyos títulos incluyan las palabras “admin” y “login”. Algunos resultados podrían ser:
- Admin Login - Secure Panel
- Login to Admin Dashboard
- Admin Area Login
Uso de allintitle
con la palabra clave “restricted”
El término restricted
(restringido) es comúnmente usado en títulos de páginas que indican accesos protegidos, archivos confidenciales o áreas privadas. Cuando lo combinas con allintitle
, puedes localizar páginas con títulos que sugieran contenido restringido.
Ejemplo Básico:
allintitle:restricted
Este comando buscará páginas cuyos títulos contengan la palabra “restricted”. Algunos resultados posibles podrían ser:
- Restricted Area
- Access Restricted
- Restricted Files
Casos Prácticos de Búsqueda con allintitle:restricted
-
Buscar áreas restringidas genéricas:
allintitle:restricted access
- Esto buscará páginas con títulos que incluyan las palabras “restricted” y “access”, como:
- Restricted Access - Confidential
- Access Restricted - Secure Area
- Esto buscará páginas con títulos que incluyan las palabras “restricted” y “access”, como:
-
Buscar áreas específicas de acceso restringido: Si sospechas que una página relacionada con un panel administrativo está restringida, puedes buscar:
allintitle:restricted admin
Resultados posibles:
- Restricted Admin Panel
- Admin Access Restricted
-
Buscar archivos o documentos restringidos: Para localizar páginas que mencionen archivos restringidos, puedes usar:
allintitle:restricted file
Resultados posibles:
- Restricted File - Confidential
- Access to Restricted Files
-
Combinar con dominios específicos: Puedes limitar la búsqueda a un dominio específico con el operador
site:
:site:example.com allintitle:restricted
Esto buscará páginas en el dominio
example.com
con títulos que contengan la palabra “restricted”. -
Buscar con palabras clave adicionales: Si buscas documentos PDF restringidos:
allintitle:restricted filetype:pdf
Esto buscará documentos PDF cuyo título incluya la palabra “restricted”.
Ejemplo Avanzado: Buscar con Contexto Específico
Imagina que estás buscando sistemas que tengan acceso restringido a áreas de login, archivos sensibles o configuraciones administrativas. Puedes usar consultas como:
-
Búsqueda genérica de restricciones:
allintitle:restricted access login
Esto buscará títulos que incluyan todas las palabras clave, como:
- Restricted Access - Login Page
- Access Restricted to Login Area
-
Búsqueda específica para sistemas restringidos:
allintitle:restricted admin panel
Esto buscará paneles de administración con acceso restringido:
- Restricted Admin Panel
- Access Restricted - Admin Dashboard
-
Buscar en dominios específicos: Si estás investigando un dominio, como
example.com
:site:example.com allintitle:restricted
Conclusión
El operador allintitle
combinado con palabras clave como “restricted” es una herramienta poderosa para localizar áreas, archivos o sistemas protegidos que podrían estar mal configurados o expuestos. Su uso responsable y ético es clave para evitar problemas legales o éticos.
Mas Comandos y Operadores de Google Hacking
Principales Comandos de Google Hacking
-
define:
- Busca definiciones de un término.
- Ejemplo:
Resultado: Definiciones de “hacking” en distintas páginas.
define:hacking
-
filetype:
- Busca archivos de un tipo específico (como PDF, TXT, etc.).
- Ejemplo:
Resultado: Archivos PDF relacionados con “hacking”.
filetype:pdf hacking
- Nota: Puedes usar
ext:
como sinónimo.
-
site:
- Limita la búsqueda a un dominio específico.
- Ejemplo:
Resultado: Páginas en
site:example.com hacking
example.com
que mencionen “hacking”.
-
link:
- Muestra páginas que enlazan a una URL específica.
- Ejemplo:
Resultado: Páginas que contienen enlaces a
link:example.com
example.com
.
-
cache:
- Muestra la versión guardada por Google de una página (útil si la página está caída).
- Ejemplo:
Resultado: Copia almacenada de
cache:example.com
example.com
.
-
info:
- Muestra información sobre una página web.
- Ejemplo:
Resultado: Información básica de
info:example.com
example.com
.
-
related:
- Encuentra páginas similares a una URL específica.
- Ejemplo:
Resultado: Páginas relacionadas con
related:example.com
example.com
.
-
allinurl:
- Busca términos que aparezcan en la URL de las páginas.
- Ejemplo:
Resultado: URLs que contengan “login” y “admin”.
allinurl:login admin
-
inurl:
- Busca un término específico dentro de las URLs.
- Ejemplo:
Resultado: URLs que contienen “login”.
inurl:login
-
allintitle:
- Busca términos específicos en el título de las páginas.
- Ejemplo:
Resultado: Páginas con “hacking” y “tutorial” en el título.
allintitle:hacking tutorial
-
intitle:
- Busca un término específico en el título de las páginas (más flexible que
allintitle
). - Ejemplo:
Resultado: Páginas con “hacking” en el título.
intitle:hacking
- Busca un término específico en el título de las páginas (más flexible que
-
allintext:
- Busca páginas que contengan todos los términos en el texto de la página.
- Ejemplo:
Resultado: Páginas cuyo contenido incluya “hacking” y “tutorial”.
allintext:hacking tutorial
-
intext:
- Busca un término específico en el texto de la página.
- Ejemplo:
Resultado: Páginas con “hacking” en el contenido.
intext:hacking
Operadores Booleanos de Google
Los operadores booleanos son símbolos y palabras clave que ayudan a combinar o refinar búsquedas.
-
"palabra exacta"
- Busca frases exactas.
- Ejemplo:
Resultado: Páginas con exactamente “seguridad informática”.
"seguridad informática"
-
-
(menos)- Excluye palabras de los resultados.
- Ejemplo:
Resultado: Páginas sobre “hacking” que NO mencionen “ético”.
hacking -ético
-
OR
o|
- Busca uno u otro término.
- Ejemplo:
Resultado: Páginas que mencionen “hacking” o “seguridad”.
hacking OR seguridad
-
+
(más)- Incluye palabras que Google ignora por defecto (como “el”, “de”, “la”).
- Ejemplo:
Resultado: Páginas que contengan “hacking de la información” con las palabras comunes.
+hacking +de +la información
-
*
(asterisco)- Actúa como un comodín que sustituye una palabra.
- Ejemplo:
Resultado: Frases como “seguridad en informática” o “seguridad de la informática”.
"seguridad * informática"
Ejemplos Combinados
-
Buscar PDF de hacking en un sitio específico:
site:example.com filetype:pdf hacking
-
Encontrar páginas relacionadas con áreas restringidas:
allintitle:restricted access
-
Excluir un término en una búsqueda:
hacking -ético
-
Buscar archivos .txt que contengan contraseñas:
filetype:txt (password|contraseña)
-
Combinar comodines con frases exactas:
"cómo * hacking ético"
Resultado: Frases como “cómo aprender hacking ético” o “cómo hacer hacking ético”.
Conclusión
Estos comandos y operadores son herramientas muy poderosas que permiten realizar búsquedas avanzadas y encontrar información específica en Google. Úsalos de manera ética y responsable, especialmente si estás realizando auditorías de seguridad o aprendizaje en el contexto del hacking ético. Si necesitas más ejemplos o deseas explorar casos específicos, ¡puedes pedírmelo!
Google hacking Database
Recursos con más ejemplos de comandos principales de Google
Reportes de vulnerabilidades recientes para ver casos reales y tipos de comandos:
Exploit Database — Google Hacking Database
https://www.exploit-db.com/google-hacking-database
Shodan
¿Qué es Shodan?
Shodan es un motor de búsqueda especializado diseñado para encontrar dispositivos conectados a Internet, como servidores, cámaras, sistemas industriales (SCADA), routers, dispositivos IoT, y más. A diferencia de motores como Google, que indexan páginas web, Shodan se enfoca en recolectar información sobre dispositivos y servicios accesibles en línea mediante el análisis de sus direcciones IP y puertos abiertos.
¿Para qué se usa Shodan?
Shodan se utiliza principalmente para:
1. Auditorías de Seguridad
- Identificar servicios y dispositivos expuestos a Internet que podrían representar riesgos de seguridad.
- Comprobar configuraciones incorrectas o la exposición accidental de servicios críticos.
2. Búsqueda de Dispositivos Específicos
- Encontrar dispositivos conectados como cámaras de seguridad, servidores FTP, bases de datos abiertas, sistemas SCADA, etc.
- Ejemplo: Buscar cámaras IP sin contraseña predeterminada.
3. Investigación de Amenazas
- Detectar dispositivos vulnerables a exploits conocidos.
- Analizar tendencias de exposición de dispositivos en todo el mundo.
4. Análisis de Infraestructuras
- Mapear una infraestructura para entender qué servicios están disponibles y en qué puertos.
- Útil para administradores de redes que quieren evaluar su red desde el punto de vista de un atacante.
5. Búsqueda de Información Técnica
- Ver banners de servicios para identificar versiones de software y posibles vulnerabilidades asociadas.
¿Cuándo deberías usar Shodan?
Shodan es una herramienta poderosa y debe usarse de manera ética y legal. Aquí hay algunos escenarios donde su uso está justificado:
-
En un contexto profesional:
- Si trabajas como auditor de seguridad, pentester o analista de redes, Shodan es útil para identificar dispositivos expuestos en la red que auditas.
- Ejemplo: Encontrar servicios con puertos abiertos en tu red corporativa.
-
Monitoreo de activos propios:
- Como administrador de sistemas, puedes usar Shodan para rastrear tus propios dispositivos y asegurarte de que no están expuestos innecesariamente.
- Ejemplo: Asegurarte de que un servidor de bases de datos no está accesible públicamente.
-
Investigación y aprendizaje:
- Si estás aprendiendo sobre ciberseguridad, Shodan te permite explorar cómo están configurados ciertos servicios y sistemas.
- Ejemplo: Buscar dispositivos con configuraciones predeterminadas para estudiar sus riesgos.
-
Respuesta a incidentes:
- Si necesitas verificar rápidamente si un dispositivo comprometido está expuesto en Internet, Shodan puede ayudarte.
Ejemplos de uso de Shodan
-
Buscar cámaras IP abiertas:
"webcamxp" port:8080
-
Identificar servidores FTP públicos:
ftp port:21
-
Localizar dispositivos industriales expuestos (SCADA):
port:502 modbus
-
Verificar vulnerabilidades por versión de software:
Apache/2.4.1
-
Buscar dispositivos por ubicación geográfica:
country:"ES" port:22
Conclusión
Shodan es una herramienta extremadamente útil en el ámbito de la ciberseguridad, pero también puede ser peligrosa en manos equivocadas. Su uso debe limitarse a fines éticos, como auditorías autorizadas, investigación o aprendizaje. Si trabajas en ciberseguridad, Shodan puede ayudarte a detectar amenazas y mejorar la postura de seguridad de tu red.
Uso de shodan
Entras a shodan, tenes que registrarte para usarlo.
Alli podes buscar como haciamos en google con palabras clave.
Los filtros mas relevantes son :
after: Mostrar resultados después de la fecha dada (dd/mm/aaaa)
asn: Número de sistema autónomo
before: Mostrar resultados antes de la fecha dada (dd/mm/aaaa)
category: Categorías disponibles: ics, malware
city: Nombre de la ciudad
country: Código de país de dos letras
geo: Acepta entre 2 y 4 parámetros. Si son 2: latitud, longitud. Si son 3: latitud, longitud, rango.
Si son 4: latitud superior izquierda, longitud superior izquierda, latitud inferior derecha, longitud inferior derecha.
hash: Hash del dato
has_ipv6: Verdadero/Falso booleano
has_screenshot: Verdadero/Falso booleano
server: Dispositivos o servidores que contienen un encabezado de servidor específico
hostname: Nombre completo del host para el dispositivo
ip: Alias para el filtro de red
isp: ISP que administra el bloque de red
net: Rango de red en notación CIDR (ej. 199.4.1.0/24)
org: Organización asignada al bloque de red
os: Sistema operativo
port: Número de puerto para el servicio
postal: Código postal (solo EE. UU.)
product: Nombre del software/producto que proporciona el banner
region: Nombre de la región/estado
state: Alias para región
version: Versión del producto
vuln: ID CVE para una vulnerabilidad
Shodan queries
Aca una lista de comandos que podes usar para ver camaras entre otras cosas.
API SHODAN
Podemos hacer consultas dierectamente a shodan con un lenguaje de programacion, para eso tenemos que tener a mano la api-key cuando realizemos las consultas.
¿Qué es Censys?
Censys es una plataforma de análisis y búsqueda diseñada para mapear y monitorizar dispositivos y servicios conectados a Internet. Similar a Shodan, Censys indexa dispositivos en línea mediante el escaneo de direcciones IP y puertos, proporcionando una base de datos consultable que detalla servicios, configuraciones y posibles vulnerabilidades.
Características principales de Censys:
- Escaneo en tiempo real:
- Realiza escaneos periódicos de todo el rango de direcciones IPv4, monitoreando servicios como HTTP, FTP, SSH, entre otros.
- Datos detallados:
- Proporciona información enriquecida sobre certificados SSL/TLS, banners de servicios, configuraciones de servidores y más.
- Búsqueda avanzada:
- Permite realizar consultas avanzadas para identificar dispositivos específicos, configuraciones o incluso vulnerabilidades conocidas.
- Orientado a la investigación y seguridad:
- Es ampliamente usado por profesionales de ciberseguridad, investigadores y equipos de respuesta a incidentes.
Similitudes entre Censys y Shodan
Ambas plataformas tienen objetivos similares, pero con enfoques distintos:
Aspecto | Censys | Shodan |
---|---|---|
Enfoque | Centrado en la seguridad y la investigación académica. | Orientado a seguridad práctica y casos de uso general. |
Datos recolectados | Información detallada sobre protocolos, certificados, etc. | Información más accesible de dispositivos IoT, webcams, etc. |
Consultas | Requiere conocimiento técnico para aprovechar al máximo. | Más accesible para usuarios menos técnicos. |
Casos de uso | Ideal para análisis profundo de infraestructura. | Ideal para identificar rápidamente dispositivos expuestos. |
En resumen:
- Censys es más técnica y detallada, ideal para investigaciones profundas.
- Shodan es más amigable para búsquedas rápidas y aplicaciones prácticas.
Relación de Censys con Zmap y Zgrab
Censys está directamente vinculado con las herramientas de escaneo de red Zmap y Zgrab, que son fundamentales para recolectar los datos que luego se indexan en Censys.
Zmap: Escáner de red de alto rendimiento
- ¿Qué es?
Zmap es una herramienta de escaneo de red extremadamente rápida diseñada para escanear grandes rangos de direcciones IP en busca de puertos abiertos o servicios específicos. - Características clave:
- Velocidad: Puede escanear todo el rango IPv4 en cuestión de minutos.
- Precisión: Se centra en la recolección eficiente de datos de servicios específicos (por ejemplo, HTTP en el puerto 80).
- Relación con Censys:
- Zmap es utilizado por Censys para realizar escaneos masivos de la red global y recolectar información básica de puertos abiertos.
Zgrab: Herramienta para recolectar datos más detallados
- ¿Qué es?
Zgrab es una herramienta complementaria a Zmap que se utiliza para extraer información más específica de los dispositivos y servicios detectados. - Características clave:
- Profundidad: Recopila banners, encabezados HTTP, certificados SSL, versiones de software, y más.
- Protocolo: Admite múltiples protocolos como HTTP, FTP, SMTP, SSH, etc.
- Relación con Censys:
- Una vez que Zmap detecta un servicio en un dispositivo, Zgrab se utiliza para recopilar información más detallada sobre el mismo.
Flujo de Trabajo: Zmap, Zgrab y Censys
-
Escaneo inicial con Zmap:
- Zmap escanea grandes rangos de IP en busca de puertos abiertos (por ejemplo, puerto 443 para HTTPS).
- Resultado: Identifica qué direcciones IP están activas y qué servicios están disponibles.
-
Recolección de datos con Zgrab:
- Zgrab profundiza en cada IP identificada para recopilar información adicional, como banners de servicio, certificados SSL o configuraciones de servidor.
-
Indexación en Censys:
- Los datos recolectados por Zmap y Zgrab se organizan y almacenan en la base de datos de Censys, donde los usuarios pueden consultarlos.
Casos de Uso de Censys
-
Auditorías de Seguridad:
- Identificar dispositivos y servicios expuestos en una red propia.
- Verificar configuraciones incorrectas, como certificados SSL/TLS mal configurados.
-
Investigación Académica:
- Analizar tendencias globales sobre la exposición de servicios y dispositivos.
-
Monitoreo de Infraestructuras:
- Detectar cambios en la exposición de dispositivos en tiempo real.
-
Búsqueda de Vulnerabilidades:
- Identificar dispositivos que ejecuten software vulnerable o versiones inseguras.
Conclusión
- Censys es una poderosa herramienta para análisis detallados de dispositivos y servicios conectados a Internet, complementada por el uso de Zmap para escaneo rápido y Zgrab para la recolección de datos específicos.
- Si necesitas una plataforma para investigaciones profundas de seguridad, Censys es ideal. Si buscas algo más práctico y directo, Shodan puede ser más apropiado.
- Ambas herramientas son fundamentales en el campo de la ciberseguridad, pero deben usarse siempre con fines éticos y legales. Si necesitas ejemplos específicos o ayuda para utilizarlas, ¡puedes pedírmelo!
¿Qué es whois
?
whois
es una herramienta utilizada para obtener información sobre la propiedad y detalles de registro de dominios, direcciones IP o redes. Es muy útil para identificar quién es el propietario de un dominio, cuándo se registró, su fecha de expiración, servidores DNS asociados y otros datos importantes.
¿Cómo funciona?
Cuando consultas un dominio o una dirección IP con whois
, la herramienta contacta a una base de datos pública mantenida por entidades de registro (como ICANN o ARIN) y devuelve información registrada sobre el recurso.
Por ejemplo, para un dominio, puedes obtener:
- Nombre del registrante (persona u organización).
- Información de contacto (en algunos casos).
- Proveedor de registro (registrar).
- Fechas de creación y expiración.
- Servidores de nombres (DNS) asociados.
Uso básico de whois
El comando es sencillo de usar. Desde la terminal o línea de comandos, solo necesitas escribir:
whois dominio.com
Ejemplo:
whois google.com
Esto mostrará información pública sobre el dominio google.com
, como su registrante, fecha de creación, DNS, etc.
Opciones comunes de whois
whois
tiene varias opciones que permiten personalizar las consultas. Aquí te presento algunas:
-
Consultar una dirección IP:
whois 8.8.8.8
Resultado: Información sobre el rango de IP, como el proveedor (por ejemplo, Google).
-
Mostrar solo las líneas relevantes: En sistemas Unix, puedes filtrar información específica usando
grep
:whois google.com | grep -i "Registrar"
Esto mostrará solo las líneas relacionadas con el registrador.
-
Especificar un servidor de consulta: Si quieres consultar a una base de datos específica, usa:
whois -h whois.iana.org google.com
-
Guardar el resultado en un archivo: Si necesitas guardar los datos para análisis posterior:
whois google.com > resultado.txt
Escenarios donde whois
te da ventaja
1. Identificar al propietario de un dominio
- Si necesitas saber quién es el responsable de un sitio web (por ejemplo, para contactar por temas legales o técnicos).
- Ventaja: Puedes encontrar la organización responsable o sus datos de contacto (si no están protegidos por privacidad).
2. Investigar dominios sospechosos
- Si recibes correos de un dominio extraño o sospechas que un sitio web podría ser falso,
whois
te ayuda a verificar información como:- ¿Cuándo se registró el dominio? (Los sitios maliciosos suelen tener registros recientes).
- ¿Quién lo registró? (¿Es un registrador confiable?).
3. Monitorear vencimientos de dominios
- Puedes verificar cuándo expira un dominio para adquirirlo o alertar a un cliente.
- Ventaja: Aseguras que los dominios importantes no caduquen.
4. Analizar redes y direcciones IP
- Si detectas tráfico sospechoso desde una IP específica, puedes usar
whois
para identificar al proveedor (ISP) o la región asociada. - Ejemplo:
whois 192.168.1.1
- Ventaja: Identificar rápidamente si el tráfico es de una fuente legítima o potencialmente maliciosa.
5. Auditorías de seguridad
- Si estás realizando un análisis de un objetivo (dentro de un marco ético),
whois
puede proporcionar detalles iniciales sobre el dominio y su infraestructura.
6. Verificar autenticidad de un sitio web
- Un sitio web legítimo suele tener información detallada y consistente. Si los datos de
whois
son escasos o confusos, podría tratarse de un sitio fraudulento.
Limitaciones de whois
-
Protección de privacidad:
- Muchos dominios están registrados con servicios de privacidad que ocultan la información del propietario.
- Ejemplo: En lugar del nombre del propietario, verás algo como “Privacy Protect, LLC”.
-
Datos incompletos para IPs:
- Para direcciones IP,
whois
puede mostrar solo el rango asignado y el proveedor, pero no detalles específicos sobre un usuario final.
- Para direcciones IP,
-
Restricciones legales:
- No todos los países tienen las mismas normativas sobre el acceso público a datos de
whois
.
- No todos los países tienen las mismas normativas sobre el acceso público a datos de
Ejemplo práctico para investigación
Escenario: Verificar un dominio sospechoso
Supongamos que recibes un correo desde un dominio desconocido, como sospechoso.com
. Para investigarlo:
- Ejecuta:
whois sospechoso.com
- Observa los resultados:
- Si el dominio fue registrado recientemente (por ejemplo, hace 1 mes), podría ser parte de un ataque.
- Si está registrado con un servicio legítimo (como Namecheap o GoDaddy), puedes contactar al registrador.
Conclusión
whois
es una herramienta sencilla pero poderosa para obtener información
pública sobre dominios y direcciones IP. Te da una ventaja significativa
en escenarios de auditoría, investigaciones de seguridad o análisis de
legitimidad. Aunque tiene limitaciones debido a la privacidad,
sigue siendo un primer paso esencial en muchas investigaciones
relacionadas con redes y dominios.
Achive.org
¿Qué es Archive.org?
Archive.org, también conocido como The Internet Archive, es una organización sin fines de lucro que tiene como objetivo preservar y ofrecer acceso gratuito a una gran cantidad de recursos digitales. Esto incluye páginas web, libros, música, películas, software, y más. Es como una “biblioteca digital universal” que recopila y archiva contenido de Internet y otras fuentes para garantizar que esté disponible para generaciones futuras.
¿Para qué sirve?
Archive.org ofrece varios servicios y herramientas útiles:
1. Wayback Machine
- Es una herramienta dentro de Archive.org que permite ver versiones antiguas de páginas web. Esto es especialmente útil si:
- Un sitio ha sido eliminado o modificado.
- Quieres investigar cómo lucía una web en el pasado.
- Ejemplo: Puedes buscar cómo se veía google.com en 1998.
Cómo usarlo:
- Visita la Wayback Machine: https://archive.org/web/
- Ingresa una URL (por ejemplo,
example.com
) y selecciona una fecha para ver una versión archivada.
2. Biblioteca de libros y textos
- Archive.org almacena millones de libros, revistas y documentos escaneados que están disponibles gratuitamente.
- Sirve para:
- Investigar libros antiguos o poco comunes.
- Leer obras literarias de dominio público.
3. Archivo de música y audio
- Contiene una enorme colección de música, podcasts, grabaciones de conciertos y audios históricos.
- Ideal para:
- Descubrir grabaciones raras o de dominio público.
- Escuchar grabaciones en vivo de bandas.
4. Películas y videos
- Archive.org tiene una colección de películas, programas de televisión y videos educativos.
- Se utiliza para:
- Ver contenido que ya no está disponible en plataformas comerciales.
- Consultar material de dominio público.
5. Software y juegos antiguos
- Almacena programas, sistemas operativos y videojuegos clásicos que puedes descargar o ejecutar directamente en el navegador.
- Útil para:
- Estudiar la historia del software.
- Revivir juegos retro.
6. Archivos de datos y documentos históricos
- Archive.org también almacena informes históricos, colecciones gubernamentales y datos técnicos.
¿Cómo puede ser útil?
1. Investigación histórica
- Si necesitas estudiar cómo era un sitio web o cómo se publicaba información en el pasado, la Wayback Machine es invaluable.
2. Restaurar contenido eliminado
- Si un sitio web ya no está disponible o se ha eliminado, puedes encontrar versiones archivadas en Archive.org.
3. Acceso a contenido de dominio público
- Puedes leer libros, escuchar música o ver películas que ya no están protegidas por derechos de autor.
4. Estudio de software y tecnología
- Archive.org permite acceder a programas antiguos, lo que es útil para desarrolladores, historiadores tecnológicos y entusiastas.
5. Preservación cultural
- Es una herramienta clave para preservar información que podría perderse con el tiempo, especialmente en una era donde los sitios web cambian constantemente.
Casos de Uso
-
Auditorías de seguridad o investigaciones:
- Si necesitas verificar cómo lucía una web antes de un incidente, la Wayback Machine puede ser una herramienta crucial.
-
Documentación y pruebas legales:
- Archive.org puede ser usado como evidencia en casos legales, mostrando cómo era un sitio web en un momento específico.
-
Proyectos académicos:
- Ideal para investigar contenido histórico en línea o recuperar datos perdidos.
-
Recuperar contenido personal:
- Si tenías un sitio web que ya no existe, Archive.org podría tener una copia de respaldo.
Limitaciones de Archive.org
-
No todo está archivado:
- Algunas páginas no son rastreadas por la Wayback Machine, especialmente si tienen restricciones en su archivo (por ejemplo, usando
robots.txt
).
- Algunas páginas no son rastreadas por la Wayback Machine, especialmente si tienen restricciones en su archivo (por ejemplo, usando
-
Datos incompletos:
- Las versiones archivadas pueden estar incompletas (imágenes rotas, enlaces no funcionales).
-
Restricciones de derechos de autor:
- Algunos contenidos no están disponibles debido a leyes de copyright.
-
Cobertura limitada en tiempo real:
- Aunque Archive.org intenta mantener copias actualizadas, no siempre es inmediato. Algunas páginas pueden tardar en ser archivadas.
theHarvester: La Herramienta Perfecta para la Recolección de Información Pública
En el mundo de la ciberseguridad, el reconocimiento es una etapa clave. Antes de cualquier análisis o prueba de penetración, es fundamental recopilar información sobre el objetivo. Una de las herramientas más populares para esta tarea es theHarvester.
Este artículo te explicará qué es theHarvester, para qué sirve, cómo usarlo de manera básica y qué beneficios puede aportarte en tus investigaciones de seguridad.
¿Qué es theHarvester?
theHarvester es una herramienta de OSINT (inteligencia de fuentes abiertas) diseñada para recopilar información pública sobre un dominio objetivo. Su propósito es recolectar datos como:
- Correos electrónicos.
- Nombres de usuario.
- Subdominios.
- Direcciones IP.
- Información DNS.
Lo mejor de todo es que no interactúa directamente con los sistemas del objetivo (es decir, realiza reconocimiento pasivo), lo que lo convierte en una opción segura para realizar investigaciones preliminares.
¿Para qué sirve?
theHarvester es ampliamente utilizado en ciberseguridad para:
-
Pruebas de penetración: Identificar posibles puntos de entrada (como correos electrónicos o subdominios expuestos) antes de realizar un análisis más profundo.
-
Auditorías de seguridad: Detectar información pública que podría representar un riesgo para la organización.
-
Investigación OSINT: Obtener datos de una organización o dominio objetivo como parte de investigaciones éticas o legales.
-
Monitoreo de exposición: Verificar qué datos de tu empresa o dominio están accesibles públicamente.
Cómo usar theHarvester (Básico)
Aquí te muestro cómo puedes comenzar a usar theHarvester de forma básica con un ejemplo práctico.
Paso 1: Instalación
Si estás usando un sistema basado en Linux, como Kali Linux, es probable que ya tengas theHarvester instalado. Si no, puedes instalarlo fácilmente ejecutando:
sudo apt update
sudo apt install theharvester
Paso 2: Ejecución básica
El comando básico para usar theHarvester es el siguiente:
theHarvester -d <dominio> -b <motores> -l <limite> -f <archivo>
Ejemplo práctico: Recolectar datos de un dominio
Supongamos que queremos investigar el dominio microsoft.com
utilizando los motores de búsqueda baidu
y yahoo
. Ejecutamos el siguiente comando:
theHarvester -d microsoft.com -b baidu,yahoo -l 100 -f resultados
Explicación:
-d microsoft.com
: Especifica el dominio objetivo (en este caso,microsoft.com
).-b baidu,yahoo
: Selecciona los motores de búsqueda que se utilizarán (baidu
yyahoo
). Puedes usar otros comogoogle
,bing
oshodan
.-l 100
: Limita el número de resultados a 100.-f resultados
: Guarda los resultados en un archivo HTML llamadoresultados.html
para facilitar su análisis.
¿Qué información obtendrás?
-
Correos electrónicos: Si hay correos relacionados con el dominio disponibles públicamente, theHarvester los recolectará. Por ejemplo:
soporte@microsoft.com
. -
Subdominios: Descubrirás subdominios como
mail.microsoft.com
oapi.microsoft.com
, que pueden ser útiles para análisis posteriores. -
Direcciones IP: theHarvester puede mostrar direcciones IP asociadas con el dominio.
-
Infraestructura relacionada: Información DNS, servidores públicos, y más.
Cómo analizar los resultados
Si especificaste el parámetro -f
, se generará un archivo HTML con los resultados. Puedes abrirlo en tu navegador con:
firefox resultados.html
En este archivo encontrarás los correos, subdominios y demás información organizada de forma fácil de leer.
Escenarios en los que usar theHarvester
1. Reconocimiento en pruebas de penetración
Imagina que estás realizando una auditoría de seguridad. Antes de lanzar cualquier prueba activa, puedes usar theHarvester para identificar correos electrónicos, subdominios y direcciones IP que podrían ser puntos de entrada.
2. Auditorías internas
Si eres parte del equipo de seguridad de tu organización, puedes usar esta herramienta para verificar qué información pública está disponible sobre tu dominio.
3. Monitoreo de exposición
theHarvester te ayuda a detectar datos sensibles (como correos o subdominios) que podrían estar expuestos accidentalmente en motores de búsqueda.
Ventajas de theHarvester
-
Fácil de usar:
Con comandos simples, puedes obtener una gran cantidad de información útil. -
Compatible con múltiples fuentes:
Puedes usar motores de búsqueda como Google, Bing, Yahoo o incluso integrarlo con APIs como Shodan o VirusTotal. -
Resultados detallados:
Proporciona información organizada y exportable para facilitar el análisis.
Limitaciones
-
Restricciones de motores de búsqueda: Algunos motores como Google pueden limitar el número de consultas realizadas desde una misma IP.
-
Protecciones de privacidad: Si una organización utiliza servicios para proteger correos electrónicos o subdominios, theHarvester no podrá recolectar esa información.
-
Datos incompletos: Los resultados dependen de la información que los motores de búsqueda puedan encontrar públicamente.
Tutorial: Cómo usar Miniconda para ejecutar una versión antigua de theHarvester
En este tutorial, aprenderás a usar Miniconda para crear un entorno virtual específico y ejecutar una versión más antigua de la herramienta theHarvester. Esto es útil cuando necesitas trabajar con una versión específica que no es compatible con la configuración actual de tu sistema.
¿Qué es Miniconda?
Miniconda es una versión ligera de Anaconda que te permite gestionar entornos virtuales y paquetes de Python de manera eficiente. Con Miniconda, puedes:
- Instalar versiones específicas de Python.
- Crear entornos aislados para evitar conflictos entre proyectos.
- Instalar dependencias fácilmente.
¿Por qué usar Miniconda para theHarvester?
Hay ocasiones en las que una versión más antigua de una herramienta como theHarvester depende de una versión específica de Python o de librerías incompatibles con tu entorno actual. Con Miniconda, puedes crear un entorno aislado que cumpla con esos requisitos sin afectar tu sistema principal.
Pasos para configurar Miniconda y ejecutar theHarvester (versión 3.2.2)
1. Instalar Miniconda
-
Descargar el instalador de Miniconda:
- Ve a la página oficial de Miniconda: https://docs.conda.io/en/latest/miniconda.html.
- Descarga el archivo
.sh
correspondiente a tu sistema operativo.
-
Instalar Miniconda:
- Abre tu terminal y navega hasta el directorio donde descargaste el archivo.
- Ejecuta el instalador con:
bash Miniconda3-latest-Linux-x86_64.sh
- Sigue las instrucciones en pantalla para completar la instalación.
-
Reiniciar la terminal:
- Una vez completada la instalación, reinicia la terminal para aplicar los cambios.
-
Desactivar la activación automática de Miniconda:
- Ejecuta el siguiente comando:
conda config --set auto_activate_base false
- Reinicia nuevamente la terminal.
- Ejecuta el siguiente comando:
2. Crear un entorno virtual para theHarvester
-
Crear el entorno con Python 3.8.0:
- En la terminal, ejecuta:
conda create -n old_harvester python=3.8.0
- Esto crea un entorno llamado
old_harvester
con Python 3.8.0, que es compatible con la versión antigua de theHarvester.
- En la terminal, ejecuta:
-
Activar el entorno:
- Activa el entorno con:
conda activate old_harvester
- Activa el entorno con:
3. Configurar theHarvester versión 3.2.2
-
Crear una carpeta para el proyecto:
- Dentro del entorno activado, crea una carpeta llamada
old_harvester
:mkdir old_harvester cd old_harvester
- Dentro del entorno activado, crea una carpeta llamada
-
Descargar la versión antigua de theHarvester:
- Descarga el archivo ZIP de la versión 3.2.2 desde el repositorio oficial usando
wget
:wget https://github.com/laramies/theHarvester/archive/refs/tags/3.2.2.zip
- Descarga el archivo ZIP de la versión 3.2.2 desde el repositorio oficial usando
-
Descomprimir el archivo:
- Una vez descargado, descomprime el archivo:
unzip 3.2.2.zip
- Esto creará una carpeta llamada
theHarvester-3.2.2
.
- Una vez descargado, descomprime el archivo:
-
Navegar a la carpeta descomprimida:
- Entra en la carpeta del proyecto:
cd theHarvester-3.2.2
- Entra en la carpeta del proyecto:
4. Instalar dependencias necesarias
-
Instalar las dependencias:
- Ejecuta el siguiente comando para instalar las librerías necesarias:
pip install -r requirements/base.txt
Este comando leerá el archivo
base.txt
dentro de la carpetarequirements
e instalará todas las dependencias necesarias para que theHarvester funcione. - Ejecuta el siguiente comando para instalar las librerías necesarias:
5. Ejecutar theHarvester
-
Ejecutar theHarvester:
- Con todo configurado, ya puedes usar theHarvester desde la carpeta en la que estás:
python theHarvester.py -d microsoft.com -b google
- Esto ejecutará la herramienta con el dominio
microsoft.com
y usarágoogle
como motor de búsqueda.
- Con todo configurado, ya puedes usar theHarvester desde la carpeta en la que estás:
-
Salir del entorno:
- Cuando termines de usar theHarvester, puedes desactivar el entorno con:
conda deactivate
- Cuando termines de usar theHarvester, puedes desactivar el entorno con:
Resumen de Comandos
-
Instalar Miniconda:
bash Miniconda3-latest-Linux-x86_64.sh conda config --set auto_activate_base false
-
Crear y activar el entorno:
conda create -n old_harvester python=3.8.0 conda activate old_harvester
-
Configurar theHarvester:
mkdir old_harvester cd old_harvester wget https://github.com/laramies/theHarvester/archive/refs/tags/3.2.2.zip unzip 3.2.2.zip cd theHarvester-3.2.2 pip install -r requirements/base.txt
-
Ejecutar theHarvester:
python theHarvester.py -d microsoft.com -b google
¿Qué es Maltego?
Maltego es una herramienta de OSINT (inteligencia de fuentes abiertas) que se utiliza para recopilar, analizar y visualizar información pública sobre individuos, organizaciones, dominios, direcciones IP, redes sociales, entre otros. Fue desarrollada por Paterva y es ampliamente utilizada en el ámbito de la ciberseguridad, investigación forense digital e investigaciones OSINT.
Maltego destaca por su capacidad para generar gráficos visuales interactivos que muestran conexiones entre entidades, facilitando la identificación de relaciones y patrones que de otro modo serían difíciles de detectar.
¿Cómo se relaciona con Google Hacking?
Maltego y Google Hacking están estrechamente relacionados porque ambos se basan en el acceso a datos públicos para extraer información relevante. Aquí están los puntos clave de su relación:
-
Google Hacking como base para la recopilación de datos:
- Maltego puede realizar transformaciones (búsquedas automatizadas) basadas en técnicas similares a las de Google Hacking, como:
- Buscar correos electrónicos relacionados con un dominio.
- Identificar subdominios públicos.
- Rastrear información de contacto en páginas web.
- Utiliza motores de búsqueda, API y otras fuentes de datos abiertas para realizar consultas similares a las de Google Hacking.
- Maltego puede realizar transformaciones (búsquedas automatizadas) basadas en técnicas similares a las de Google Hacking, como:
-
Automatización de búsquedas:
- En lugar de realizar manualmente consultas con comandos como
site:
,filetype:
, ointitle:
, Maltego las automatiza mediante sus transformaciones. Esto permite obtener resultados más rápidos y visualizarlos de manera organizada.
- En lugar de realizar manualmente consultas con comandos como
-
Visualización de datos extraídos:
- Google Hacking genera resultados que debes analizar manualmente, mientras que Maltego toma esos datos y los convierte en un gráfico visual, lo que facilita el análisis de relaciones y patrones.
¿Qué son los grafos en Maltego y por qué son importantes?
Un grafo en Maltego es una representación visual de las entidades y las relaciones entre ellas. En lugar de mostrar datos en una lista o tabla, Maltego organiza la información en un formato gráfico donde cada entidad es un nodo, y las conexiones entre ellas son líneas.
Componentes de un grafo en Maltego:
-
Entidades (Nodos):
- Representan los elementos de interés, como:
- Correos electrónicos.
- Direcciones IP.
- Dominios.
- Nombres de personas.
- Organizaciones.
- Representan los elementos de interés, como:
-
Relaciones (Conexiones):
- Las líneas que conectan los nodos representan relaciones entre las entidades. Por ejemplo:
- Un dominio puede estar conectado a un subdominio.
- Un correo electrónico puede estar vinculado a una dirección IP.
- Las líneas que conectan los nodos representan relaciones entre las entidades. Por ejemplo:
-
Visualización interactiva:
- Los grafos en Maltego son dinámicos, lo que significa que puedes hacer clic en un nodo para expandirlo y descubrir más relaciones.
Ejemplo práctico:
- Si estás investigando el dominio
example.com
, un grafo en Maltego podría mostrar:- Correos electrónicos asociados al dominio.
- Subdominios públicos (como
mail.example.com
oapi.example.com
). - Direcciones IP vinculadas al dominio.
- Redes sociales relacionadas con los correos electrónicos encontrados.
Ventajas de usar grafos en Maltego
-
Organización visual de datos:
- Los grafos hacen que sea más fácil identificar patrones y conexiones entre entidades que serían difíciles de detectar en una lista de resultados.
-
Exploración interactiva:
- Puedes profundizar en la investigación de una entidad simplemente expandiendo su nodo en el grafo.
-
Escalabilidad:
- Maltego puede manejar grandes cantidades de datos y relaciones sin perder claridad.
-
Colaboración:
- Los grafos se pueden exportar y compartir con otros investigadores, lo que facilita el trabajo en equipo.
Relación práctica entre Google Hacking, Maltego y grafos
-
Google Hacking como punto de partida:
- Si sabes cómo usar Google Hacking, puedes obtener datos iniciales como correos electrónicos, dominios o subdominios.
-
Automatización y graficación con Maltego:
- Maltego toma esos datos y los amplía mediante transformaciones, conectándolos con información adicional como:
- Ubicaciones geográficas.
- Redes sociales.
- Servidores y DNS asociados.
- Maltego toma esos datos y los amplía mediante transformaciones, conectándolos con información adicional como:
-
Análisis avanzado con grafos:
- Con los grafos, puedes ver cómo se relacionan las entidades y priorizar las áreas que necesitas investigar más a fondo.
Ejemplo de caso práctico
Escenario:
Un investigador de ciberseguridad quiere analizar qué información está expuesta sobre una empresa (por ejemplo, example.com
).
Pasos:
-
Usar Google Hacking manualmente:
- Buscar correos electrónicos públicos:
site:example.com "email"
- Identificar subdominios:
site:example.com -www
- Buscar correos electrónicos públicos:
-
Usar Maltego para automatizar:
- Configurar Maltego para realizar transformaciones en el dominio
example.com
. - Generar un grafo con los resultados obtenidos.
- Configurar Maltego para realizar transformaciones en el dominio
-
Analizar el grafo:
- Ver conexiones entre correos electrónicos, subdominios, y direcciones IP.
- Identificar posibles puntos de ataque, como servicios expuestos o usuarios clave.
¿Qué es Recon-ng?
Recon-ng es una herramienta de OSINT (Open Source Intelligence) escrita en Python que se utiliza para realizar tareas de reconocimiento y recopilación de información pública de manera automatizada. Está diseñada como un marco modular, similar a Metasploit, donde puedes cargar módulos específicos para obtener datos sobre dominios, subdominios, direcciones IP, correos electrónicos, organizaciones, entre otros.
¿Para qué sirve Recon-ng?
Recon-ng es útil para:
-
Automatizar el reconocimiento inicial:
- Puede buscar y recopilar datos públicos relacionados con un objetivo sin interacción manual.
- Ideal para pruebas de penetración y auditorías de seguridad.
-
Recopilar información de múltiples fuentes:
- Utiliza APIs, servicios web y motores de búsqueda para extraer datos relacionados con el objetivo.
- Algunos módulos permiten buscar subdominios, correos electrónicos, cuentas de redes sociales, etc.
-
Realizar investigaciones OSINT avanzadas:
- Con Recon-ng puedes mapear infraestructuras, identificar posibles vulnerabilidades y analizar la exposición pública de una organización.
-
Exportar resultados:
- La herramienta permite guardar los datos recolectados en diferentes formatos, como JSON, CSV o bases de datos SQLite.
Características principales
-
Modularidad:
- Recon-ng tiene un sistema basado en módulos que puedes cargar para tareas específicas. Cada módulo realiza una función concreta, como buscar subdominios o extraer correos electrónicos.
-
Soporte para APIs:
- Puedes integrar servicios externos como Shodan, VirusTotal, Whois, y más, para ampliar la funcionalidad.
-
Fácil de usar:
- Tiene una interfaz de línea de comandos que se siente como un entorno interactivo. Es muy parecido a Metasploit.
-
Almacenamiento de datos:
- Los resultados se almacenan automáticamente en una base de datos para facilitar el análisis posterior.
Cómo instalar Recon-ng
-
Instalación básica en Linux:
- Abre una terminal y ejecuta:
sudo apt update sudo apt install recon-ng
- Abre una terminal y ejecuta:
-
Instalación desde el repositorio oficial (última versión):
- Clona el repositorio de GitHub:
git clone https://github.com/lanmaster53/recon-ng.git
- Navega al directorio:
cd recon-ng
- Instala las dependencias:
pip install -r REQUIREMENTS
- Ejecuta Recon-ng:
python recon-ng
- Clona el repositorio de GitHub:
-
Verificar instalación:
- Una vez instalado, inicia la herramienta con:
recon-ng
- Verás un entorno interactivo similar a Metasploit.
- Una vez instalado, inicia la herramienta con:
Cómo usar Recon-ng
-
Iniciar la herramienta:
- En la terminal, escribe:
recon-ng
- Verás el entorno interactivo.
- En la terminal, escribe:
-
Configurar un objetivo:
- Configura un dominio para analizar:
set workspace <nombre_workspace> add domains <example.com>
- Configura un dominio para analizar:
-
Cargar un módulo:
- Lista los módulos disponibles:
modules search
- Carga un módulo, por ejemplo, para buscar subdominios:
modules load recon/domains-hosts/brute_hosts
- Configura las opciones del módulo:
options set SOURCE example.com
- Ejecuta el módulo:
run
- Lista los módulos disponibles:
Cómo ver los mercados (Marketplace)
El Marketplace de Recon-ng es una lista centralizada de módulos adicionales que puedes instalar y usar. Estos módulos amplían la funcionalidad de la herramienta.
-
Acceder al Marketplace:
- Desde la terminal de Recon-ng, escribe:
Esto mostrará una lista de módulos disponibles.
marketplace search
- Desde la terminal de Recon-ng, escribe:
-
Ver información sobre un módulo específico:
- Para obtener detalles sobre un módulo, usa:
marketplace info <nombre_módulo>
- Para obtener detalles sobre un módulo, usa:
-
Instalar un módulo del Marketplace:
- Instala un módulo con el comando:
marketplace install <nombre_módulo>
- Instala un módulo con el comando:
-
Actualizar módulos:
- Si deseas mantener los módulos actualizados, usa:
marketplace update
- Si deseas mantener los módulos actualizados, usa:
Ejemplo práctico: Recopilar subdominios de un dominio
-
Inicia Recon-ng:
recon-ng
-
Configura un objetivo:
add domains example.com
-
Carga el módulo para buscar subdominios:
modules load recon/domains-hosts/bing_domain_web
-
Configura el módulo:
options set SOURCE example.com
-
Ejecuta el módulo:
run
-
Ver los resultados:
- Usa el comando
show hosts
para ver los subdominios encontrados.
- Usa el comando
Ventajas de usar Recon-ng
-
Automatización:
- Realiza tareas repetitivas de OSINT de manera eficiente.
-
Escalabilidad:
- Puedes agregar módulos adicionales según tus necesidades.
-
Integración con APIs:
- Aprovecha servicios externos para ampliar los datos recolectados.
-
Análisis centralizado:
- Los resultados se almacenan automáticamente, lo que facilita el análisis y la exportación.