Pràctica: OSINT i recollida d'informació per a detecció d'amenaces
Marc legal i ètic
Totes les activitats d'aquesta pràctica s'han de realitzar exclusivament sobre:
- Dominis i sistemes propis o dels quals tens autorització explícita
- Plataformes públiques que permeten explícitament la consulta automatitzada
- Dades públicament disponibles que no vulneren la privadesa de persones físiques
L'ús de tècniques OSINT sense autorització pot ser constitutiu d'un delicte. Sempre opera dins del marc legal.
Objectius
- Comprendre el framework OSINT i les seves aplicacions en ciberseguretat defensiva
- Desplegar eines OSINT en Docker (SpiderFoot)
- Realitzar reconeixement passiu sobre un domini autoritzat
- Consultar bases de dades públiques (Shodan, VirusTotal, Have I Been Pwned)
- Elaborar un informe OSINT professional
Prerequisits
| Requisit | Descripció |
|---|---|
| Temps estimat | 8 hores |
| Docker | Instal·lat i funcionant |
| Compte Shodan | Compte gratuït a shodan.io |
| Compte VirusTotal | Compte gratuït a virustotal.com |
| Domini a analitzar | sapalomera.cat (el centre) o un domini propi |
Introducció
OSINT (Open Source Intelligence) és la recollida d'informació a partir de fonts públicament accessibles. En ciberseguretat, s'utilitza tant ofensivament (per a reconeixement d'objectius) com defensivament (per a detectar exposicions no desitjades de la nostra organització).
mindmap
root((OSINT))
Infraestructura
DNS
WHOIS
Shodan
Censys
Persones
LinkedIn
HaveIBeenPwned
Xarxes socials
Documents
Google Dorks
Metadata
Codi
GitHub
Pastebin
Amenaces
VirusTotal
AbuseIPDB
MISP
Un analista de ciberseguretat ha de conèixer OSINT per a: 1. Defensa: descobrir quina informació de la nostra organització és visible públicament 2. Threat Intel: identificar IoCs (IPs, dominis, hashes maliciosos) 3. Incidents: investigar l'origen d'un atac
Part 1: Desplegament de SpiderFoot Docker
SpiderFoot és una eina OSINT automatitzada open source que consulta més de 200 fonts de dades.
# Crea una xarxa per a la pràctica
docker network create osint-NOMCOGNOM
# Desplega SpiderFoot
docker run -d \
--name spiderfoot-NOMCOGNOM \
--network osint-NOMCOGNOM \
-p 5009:5001 \
smicallef/spiderfoot
# Accedeix a la interfície web
echo "Accedeix a: http://localhost:5009"
1.1 Primera cerca: el teu domini
- Obre
http://localhost:5009 - Crea una nova cerca (New Scan)
- Target:
sapalomera.cat(o el domini que el professor indiqui) - Scan type: Passive (IMPORTANT: no actiu)
- Anota els resultats: IPs, subdominis, emails, tecnologies detectades
Mode passiu vs actiu
En mode passiu, SpiderFoot no contacta directament l'objectiu: consulta bases de dades de tercers. En mode actiu, envia peticions directament a l'objectiu (requereix autorització). Sempre utilitza mode passiu per a dominis que no siguin teus.
Part 2: Reconeixement passiu manual
2.1 DNS i WHOIS
# Dins d'un contenidor amb les eines necessàries
docker run --rm --name recon-NOMCOGNOM \
--network osint-NOMCOGNOM \
ubuntu:22.04 bash -c "
apt-get install -y dnsutils whois curl jq -q &&
echo '=== WHOIS ===' &&
whois sapalomera.cat &&
echo '=== DNS MX ===' &&
dig sapalomera.cat MX &&
echo '=== DNS TXT (SPF/DMARC) ===' &&
dig sapalomera.cat TXT &&
dig _dmarc.sapalomera.cat TXT &&
echo '=== Subdominis via CertSpotter ===' &&
curl -s 'https://api.certspotter.com/v1/issuances?domain=sapalomera.cat&include_subdomains=true&expand=dns_names' \
| jq -r '.[].dns_names[]' | sort -u
"
Pregunta de reflexió
- Quin proveïdor de DNS utilitza
sapalomera.cat? - Té configurat DMARC? Quin és el resultat?
- Quants subdominis has trobat?
- Quina informació revela el registre SPF?
2.2 Google Dorks
Els Google Dorks són cerques avançades de Google que permeten trobar informació que no és fàcilment accessible:
# Cerca fitxers PDF del domini (podrien contenir informació sensible)
site:sapalomera.cat filetype:pdf
# Cerca pàgines d'administració
site:sapalomera.cat inurl:admin OR inurl:login OR inurl:dashboard
# Cerca fitxers Excel o CSV (podrien contenir dades)
site:sapalomera.cat filetype:xlsx OR filetype:csv
# Cerca amb informació sensible (exemple educatiu)
site:sapalomera.cat "índex de" OR "directory listing"
Ús responsable de Google Dorks
Aquests operadors de cerca accedeixen a informació pública. No generen tràfic directe cap a l'objectiu. Tanmateix:
- Mai descarreguis fitxers sensibles que no siguin teus
- Si trobes informació clarament sensible d'una organització, notifica'ls (responsible disclosure)
- No uses Google Dorks per a espionatge corporatiu o personal
Part 3: Consultes a bases de dades de seguretat
3.1 Shodan - Dispositius exposats
Shodan és un motor de cerca d'Internet que indexa dispositius connectats (routers, càmeres, servidors, etc.).
# Instal·la la CLI de Shodan (necessites compte gratuït)
pip install shodan
# Configura la teva API key (obtén-la a shodan.io/account)
shodan init TU_API_KEY_AQUI
# Cerca la IP del domini
DIG_RESULT=$(dig +short sapalomera.cat | head -1)
echo "IP: $DIG_RESULT"
# Consulta informació de la IP
shodan host $DIG_RESULT
Alternativa via web: ves a https://www.shodan.io i cerca la IP directament.
Anota: - Ports oberts - Serveis detectats - Tecnologies identificades - Vulnerabilitats conegudes (CVEs)
3.2 VirusTotal - Anàlisi de reputació
# Consulta la reputació d'una IP o domini
VT_API_KEY="TU_API_KEY_DE_VIRUSTOTAL"
curl -s "https://www.virustotal.com/api/v3/domains/sapalomera.cat" \
-H "x-apikey: ${VT_API_KEY}" | \
jq '{
reputation: .data.attributes.reputation,
categories: .data.attributes.categories,
last_analysis_stats: .data.attributes.last_analysis_stats
}'
3.3 Have I Been Pwned - Emails compromesos
Have I Been Pwned (HIBP) permet comprovar si una adreça de correu ha aparegut en una filtració de dades pública.
# Consulta (requereix API key o ús via web)
curl -s "https://haveibeenpwned.com/api/v3/breachedaccount/test@sapalomera.cat" \
-H "hibp-api-key: TU_API_KEY" \
-H "User-Agent: OSINT-Lab-NOMCOGNOM"
Via web (recomanat per a la pràctica): https://haveibeenpwned.com
Miniactivitat
Comprova a HIBP si el teu email personal (o un de ficció) apareix en alguna filtració.
- En quantes filtracions apareix?
- Quines dades van ser exposades?
- Quin és el teu pla d'acció?
3.4 Certificate Transparency (crt.sh)
# Cerca tots els certificats emesos per al domini
curl -s "https://crt.sh/?q=%.sapalomera.cat&output=json" | \
jq -r '.[].name_value' | \
sort -u | \
head -20
Part 4: Informe OSINT
Prepara un informe professional informe_osint_NOMCOGNOM_$(date +%Y%m%d).md:
# Informe d'Intel·ligència OSINT
**Organització objectiu**: Institut Sa Palomera (domini: sapalomera.cat)
**Analista**: NOMCOGNOM
**Data**: YYYY-MM-DD
**Metodologia**: Reconeixement passiu exclusivament
---
## Resum executiu
[2-3 paràgrafs sobre els hallazgos principals]
## 1. Infraestructura de xarxa
### 1.1 Registres DNS
| Tipus | Valor | Observacions |
|-------|-------|-------------|
### 1.2 Subdominis descoberts
| Subdomini | IP | Servei detectat |
|-----------|----|----|
### 1.3 Dispositius en Shodan
| Port | Servei | Versió | Vulnerabilitats |
|------|--------|--------|----------------|
## 2. Anàlisi de reputació
### 2.1 VirusTotal
[Resultats de l'anàlisi]
## 3. Exposició de dades
### 3.1 Fitxers sensibles (Google Dorks)
[Llista de troballes]
### 3.2 Emails en filtracions (HIBP)
[Nombre de resultats sense revelar adreces concretes]
## 4. Superfície d'atac identificada
[Resum dels riscos detectats]
## 5. Recomanacions
| Prioritat | Recomanació | Responsable |
|-----------|-------------|-------------|
| Alta | ... | ... |
## Apèndix: Metodologia i fonts consultades
- SpiderFoot (passiu)
- Shodan.io
- crt.sh
- haveibeenpwned.com
- VirusTotal
- Google Dorks
Preguntes finals
- Quina informació ha estat la més sorprenent de trobar públicament?
- Quines d'aquestes troballes suposaria un risc per a l'organització?
- Com podria l'organització reduir la seva superfície d'atac visible?
- Quina diferència hi ha entre OSINT i hacking? On és la línia?
Neteja
Entregables
- Informe OSINT
informe_osint_NOMCOGNOM_data.md - Captura de pantalla dels resultats de SpiderFoot
- Captures de Shodan i VirusTotal