VirusTotal
Tres herramientas en una key
Con una sola API key de VirusTotal tienes cobertura para los tres tipos principales de IOC:
| Funcion | IOC | Que analiza |
|---|---|---|
virustotal_ip_lookup | IP | Reputacion, detecciones, dominios asociados |
virustotal_domain_lookup | Dominio | Categorias, DNS, WHOIS, detecciones, subdomains |
virustotal_hash_lookup | Hash MD5/SHA1/SHA256 | Reputacion del fichero, detecciones AV, metadata |
virustotal_ip_lookup
from src.tools.virustotal import virustotal_ip_lookupresult = await virustotal_ip_lookup("185.220.101.34")Campos principales devueltos:
malicious_count: numero de motores AV que la marcan como maliciosaharmless_count: motores que la marcan como benignareputation: score de reputacion (-100 a 100)country: pais de origenasn: numero de sistema autonomoas_owner: nombre del ISP/proveedortags: etiquetas (p.ej. “TOR”, “VPN”, “hosting”)last_analysis_stats: estadisticas del ultimo analisisassociated_domains: dominios vistos en esa IP
virustotal_domain_lookup
from src.tools.virustotal import virustotal_domain_lookupresult = await virustotal_domain_lookup("evil-phishing.com")Campos principales:
categories: categorias asignadas por distintos proveedoresreputation: score de reputacionmalicious_count: deteccionescreation_date: fecha de registro (del WHOIS de VT)last_dns_records: registros DNS recientessubdomains: subdominios conocidoslast_https_certificate: info del certificado SSLtags: etiquetas
virustotal_hash_lookup
from src.tools.virustotal import virustotal_hash_lookupresult = await virustotal_hash_lookup("d41d8cd98f00b204e9800998ecf8427e")Campos principales:
meaningful_name: nombre del malware (si se conoce)malicious_count: numero de AV que detectanpopular_threat_classification: familia de malwarefile_type: tipo de ficherosize: tamano en bytesfirst_submission_date: primera vez visto en VTtags: etiquetas (packed, overlay, pdf, etc.)
Free tier
- 500 requests/dia
- Limite de 4 requests/minuto en el free tier
- Sin acceso a algunos campos premium (comentarios, relaciones avanzadas)
El cache de 24h reduce el consumo real — si investigas la misma IP varias veces en un dia, solo cuenta como una llamada.
Ejemplo de salida del agente
[VirusTotal IP] 185.220.101.34 ├─ Maliciosas: 87/94 motores ├─ Reputacion: -95 ├─ Tags: tor, exit-node ├─ Pais: NL (Paises Bajos) ├─ ASN: AS53667 (Frantech Solutions) └─ Dominios asociados: (3 encontrados) ├─ relay1.example.tor ├─ exit-node-nl.example.net └─ ...