Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
svg_phishing_tools — Herramientas de análisis y generación de SVG para el phishing mediante adjuntos SVG habituales | Kitploit
Herramientas/GitHubGitHub/hackinglz/svg_phishing_tools
ReconocimientoAnálisis EstáticoAnálisis Dinámico (Sandboxing)Recopilación de InformaciónPhishingSeguridad WebAnálisis de MalwareInteligencia de Amenazas
GitHubhackinglz/svg_phishing_tools

svg_phishing_tools

Herramientas de análisis y generación de SVG para el phishing mediante adjuntos SVG habituales

Ver Repositorio
577hace 11 mesesRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Kit de herramientas de análisis de seguridad SVG - Documentación de la herramienta

Este kit de herramientas contiene herramientas Python especializadas para analizar archivos SVG potencialmente maliciosos y detectar mecanismos de seguridad.

Resumen

El kit consta de cuatro herramientas principales:

  1. extract.py - Análisis estático para extracción de URLs ofuscadas
  2. extract_dynamic.py - Análisis dinámico usando box-js para ejecución de JavaScript
  3. cf_probe.py - Detección de protección de Cloudflare (Turnstile, CAPTCHA, etc.)
  4. encoder.py - Generador de casos de prueba para crear muestras SVG ofuscadas

Herramienta #1: extract.py - Extractor de URLs SVG estáticas

Propósito

Una herramienta de análisis estático basada en patrones que decodifica URLs ofuscadas de archivos SVG maliciosos sin ejecutar ningún código. Esta es la opción más segura para el análisis inicial.

Características principales

  • Decodificación XOR: Detección y decodificación automática de cargas útiles cifradas con XOR
  • Aritmética de caracteres: Decodifica patrones String.fromCharCode con cálculos numéricos
  • Extracción Base64: Encuentra y decodifica URLs codificadas en Base64
  • Detección de correos electrónicos: Identifica direcciones de correo electrónico utilizadas en la concatenación de URLs
  • Múltiples estrategias de ofuscación: Gestiona varias técnicas de desofuscación

Uso

root@kitploit:~
# Analyze a single SVG file
python3 extract.py -i malicious.svg

# Verbose output showing decoded JavaScript
python3 extract.py -i malicious.svg -v

# Debug mode with detailed analysis steps
python3 extract.py -i malicious.svg -d

# Read from stdin
python3 extract.py < malicious.svg

Patrones de detección clave

  1. Patrón XOR de clave secreta: Detecta String.fromCharCode(115,101,99,...) ("secretkey")
  2. Detección de bucles XOR: Identifica bucles for con operaciones parseInt y XOR
  3. Scripts en URI de datos: Extrae y decodifica contenido Base64 de URIs data:
  4. atob() anidado + Variable: Gestiona patrones atob("base64") + variableName

Dependencias

  • Python 3.6+ (utiliza solo la biblioteca estándar)

Ejemplo de salida

root@kitploit:~
DYNAMIC SVG URL EXTRACTOR
=========================================================
SVG #1 Results:
----------------------------------------
Obfuscation: XOR decoding (key length: 9)
Extracted URLs:
  → https://malicious.example.com/[email protected]

Herramienta #2: extract_dynamic.py - Analizador dinámico de JavaScript en SVG

Propósito

Una herramienta de análisis dinámico sofisticada que extrae y analiza JavaScript incrustado en archivos SVG mediante box-js. Esta herramienta ejecuta JavaScript en un entorno de sandbox y está diseñada para extraer URLs finales y completas incluso cuando se construyen mediante ofuscación compleja.

Características principales

  • Ejecución de JavaScript: Utiliza box-js para ejecutar scripts SVG de forma segura
  • Sistema de hooks avanzado: Carga útil de JavaScript de más de 300 líneas con monitoreo integral
  • Seguimiento de construcción de URLs: Captura URLs construidas dinámicamente mediante concatenación de cadenas
  • Priorización de URLs finales: Distingue entre URLs completas y componentes parciales
  • Monitoreo de ActiveX/WScript: Detección especializada de objetos de script de Windows
  • Detección de múltiples sinks: Monitorea location, window.open, fetch, XHR, Image.src, etc.

Dependencias

root@kitploit:~
# Required: box-js must be installed globally
npm install -g box-js

# Python requirements (optional)
pip install -r requirements.txt

Uso

root@kitploit:~
# Basic analysis of a single SVG
python3 extract_dynamic.py -i malicious.svg

# Analyze with custom output directory
python3 extract_dynamic.py -i malicious.svg -o analysis_results

# Analyze directory of SVGs with extended timeout
python3 extract_dynamic.py -i svg_samples/ -t 60

# Keep temporary files for debugging
python3 extract_dynamic.py -i malicious.svg --keep-temp

# Save URL blocklist to file
python3 extract_dynamic.py -i malicious.svg --blocklist-out urls.txt

# Mask email addresses for privacy
python3 extract_dynamic.py -i malicious.svg --mask-emails

Características avanzadas

Sistema de hooks (PRELUDE_JS)

La herramienta inyecta una carga útil integral de JavaScript que intercepta:

  • Operaciones de location: location.href, location.assign(), location.replace()
  • Métodos de window: window.open(), métodos de navegación
  • Peticiones HTTP: fetch(), XMLHttpRequest.open()
  • Operaciones con cadenas: String.prototype.concat, manipulación de cadenas
  • Decodificadores: atob(), decodeURI(), unescape()
  • Ejecución dinámica: eval(), Function(), setTimeout()

Reconocimiento de patrones

Detecta y gestiona automáticamente:

  • Patrones simples de decodificación hexadecimal
  • Ejecución dinámica codificada en hexadecimal
  • Construcción de eval dinámico + XOR
  • Mapeo de caracteres + ejecución con find()
  • Patrones aritméticos de códigos de carácter
  • Técnicas comunes de ofuscación

Ejemplo de salida

root@kitploit:~
=== Processing: malicious.svg ===
  Wrote temp JS -> /tmp/boxjs_svg_ABC/test.boxed.js
  Running box-js (timeout 30s) with sink hooks...
  [+] box-js finished. Results in: boxjs_out/malicious.svg.boxjs_results

  *** FINAL COMPLETE URLs FOUND ***:
    → https://evil.example.com/[email protected]
  
  Emails found:
    → [email protected]

=== FINAL ANALYSIS SUMMARY ===
🎯 COMPLETE URLs EXTRACTED (1 total):
======================================================
  → https://evil.example.com/[email protected]
======================================================

Herramienta #3: cf_probe.py - Detección de protección de Cloudflare

Propósito

Una herramienta de reconocimiento web para detectar mecanismos de seguridad de Cloudflare, incluidos Turnstile, sistemas CAPTCHA, verificación de navegador y otras medidas de protección a lo largo de cadenas de redirección.

Características principales

  • Seguimiento de cadenas de redirección: Sigue automáticamente redirecciones HTTP y redirecciones meta-refresh
  • Múltiples patrones de detección: Detecta Turnstile mediante varios métodos
  • Escaneo de archivos JavaScript: Analiza archivos JS enlazados para buscar sitekeys adicionales
  • Soporte de compresión: Gestiona compresión gzip, deflate y brotli
  • Detección integral de protección: Identifica múltiples tipos de protección de Cloudflare

Dependencias

root@kitploit:~
pip install requests
pip install brotli  # Optional for brotli support

Uso

root@kitploit:~
# Check single URL for Cloudflare protections
python3 cf_probe.py https://example.com

# Scan with JavaScript file analysis
python3 cf_probe.py https://example.com --scan-js

# Process multiple URLs from file
python3 cf_probe.py -i urls.txt

# Custom User-Agent and timeout
python3 cf_probe.py https://example.com -A "Custom-Agent" -t 30

# Disable TLS verification (for testing)
python3 cf_probe.py https://example.com --insecure

# Dump HTML/JS for analysis
python3 cf_probe.py https://example.com --dump analysis_dump/

Capacidades de detección

Detección de Turnstile

  • Atributos data-sitekey
  • Llamadas a JavaScript turnstile.render()
  • Llamadas a JavaScript turnstile.create()
  • Referencias al script de la API de Turnstile
  • Clases CSS cf-turnstile

Otra protección de Cloudflare

  • Sistemas CAPTCHA personalizados
  • Páginas de verificación de navegador
  • Contenedores de desafío de CF
  • Cabeceras de CF (CF-Ray, cabeceras de servidor)
  • Mensajes de protección DDoS

Ejemplo de salida

root@kitploit:~
=== Redirect/Navigation Chain (3 steps) ===

[0] URL: https://example.com
    Status: 301
    Cloudflare Protection: YES (CF Headers)
    CF Header: cf-ray: 123abc456def789

[1] URL: https://protected.example.com
    Status: 200
    Cloudflare Protection: YES (Turnstile, Custom CAPTCHA)
    Turnstile Site key(s): 0x1AAA000000000000000
    CAPTCHA Evidence: Click the computer to verify

=== Summary ===
Cloudflare Protection Detected: Turnstile with key(s): 0x1AAA000000000000000 | Custom CAPTCHA

Herramienta #4: encoder.py - Generador de casos de prueba SVG

Propósito

Genera archivos SVG ofuscados con varios patrones de codificación para probar las herramientas de análisis.

Características principales

  • Múltiples patrones de ofuscación: 6 técnicas de codificación diferentes
  • Variabilidad dinámica: Nombres de variables, estructuras y parámetros de codificación aleatorios
  • Datos de prueba realistas: Genera dominios y direcciones de correo electrónico aleatorios
  • Generación por lotes: Puede crear suites de prueba completas

Uso

root@kitploit:~
# Generate single pattern
python3 encoder.py -u "https://evil.com/c2" -p 1 -o test.svg

# Generate all patterns in directory
python3 encoder.py --random-all -o test_patterns/

# Custom email address
python3 encoder.py -u "https://evil.com" -e "[email protected]" -p 3 -o custom.svg

Patrones de ofuscación

  1. Patrón XOR + Proxy: Codificación XOR mejorada con Proxy ES6 para la ejecución
  2. Patrón de función hexadecimal: Ejecución dinámica codificada en hexadecimal mediante el constructor Function
  3. Patrón de claves de objeto: Construcción de eval dinámico + XOR usando propiedades de objeto
  4. Patrón de mapeo de caracteres: Mapeo de caracteres con ejecución mediante Array.find()
  5. Patrón aritmético: Evaluación aritmética de códigos de carácter
  6. Patrón de URI de datos: Scripts codificados en Base64 en URIs de datos

Ejemplo de salida

root@kitploit:~
$ python3 encoder.py --random-all -o test_suite/
Generated xor_proxy_enhanced: test_suite/pattern_01_xor_proxy_enhanced.svg
  URL: https://r4nd0m.example.com/[email protected]

Generated hex_function: test_suite/pattern_02_hex_function.svg  
  URL: https://evil-site.org/[email protected]

[... 4 more patterns ...]

Flujo de trabajo de pruebas

Flujo de trabajo de análisis recomendado:

root@kitploit:~
# Step 1: Generate test cases
python3 encoder.py --random-all -o test_cases/

# Step 2: Static analysis first (safer)
python3 extract.py -i test_cases/pattern_01_*.svg -v > static_results.txt

# Step 3: Dynamic analysis (in isolated environment)
python3 extract_dynamic.py -i test_cases/ -o dynamic_results/ --blocklist-out malicious_urls.txt

# Step 4: Verify Cloudflare protection on extracted URLs (if safe to do so)
python3 cf_probe.py -i malicious_urls.txt

Instalación

root@kitploit:~
# Clone or download the toolkit
cd svg_tools/

# Install Python dependencies
pip install -r requirements.txt

# Install box-js globally (for dynamic analysis)
npm install -g box-js

# Verify installation
python3 extract.py --help
python3 extract_dynamic.py --help
python3 cf_probe.py --help
python3 encoder.py --help
Descargar herramienta