Volver a actualizaciones
Nuevo releaseJul 30, 2026

AperiSolve v3.7.4

Plataforma automatizada de esteganálisis que detecta datos ocultos en imágenes mediante 16 analizadores paralelos, visualización de capas de bits y un wiki integrado para investigaciones en CTF y forenses.

Compartir

Aperi'Solve

Website CI Lint Docker Python Version Ruff uv ty License GitHub Issues GitHub Pull Requests Last Commit Contributors Rawsec's CyberSecurity Inventory

Captura de pantalla de Aperi'Solve

Pruébalo ahora: https://www.aperisolve.com

Apoya a Aperi'Solve:

Patrocina Aperi'Solve en GitHub

Aperi'Solve es una plataforma web de esteganálisis de código abierto que realiza análisis automatizados sobre imágenes para detectar y extraer datos ocultos mediante herramientas y técnicas de esteganografía comunes.

Características principales

  • Visualiza cada capa de bits (LSB y otras capas) por canal de imagen (R/G/B/Alpha).
  • Remapeo de color (remapeos aleatorios de paleta con 8 variantes generadas).
  • Ejecuta 16 analizadores en paralelo y muestra su salida, con insignias de éxito/sin resultado por herramienta y descarga de archivos extraídos con un solo clic:
  • Wiki integrada en la aplicación (/wiki): un manual de esteganografía estilo HackTricks — una metodología de triaje, una chuleta de árbol de decisión, páginas de técnicas por medio (imagen, audio, texto, archivos) y una guía por analizador, todo escrito en Markdown.
  • Internacionalización: interfaz disponible en inglés, francés, español, alemán, ruso, chino y portugués bajo URLs con prefijo de idioma (/fr/, /es/, …).
  • Arquitectura de cola de trabajadores para descargar analizadores pesados/lentos (Redis + trabajadores en segundo plano).
  • Caché de resultados direccionada por contenido, caché HTTP y limitación de tasa por endpoint.
  • Los resultados se almacenan temporalmente para su posterior navegación y descarga, y luego se limpian automáticamente mediante un trabajo programado.

Añadir un analizador

Añadir un analizador es un único archivo: subclase SubprocessAnalyzer, define algunos atributos de clase (name, has_archive, needs_password, deep_only, display_order) e instala la herramienta en el Dockerfile. La lista de ejecución del trabajador, la lista blanca de descargas y el orden en el frontend se derivan automáticamente. Consulta docs/adding-analyzer.md.

Inicio rápido (Docker)

Por si quieres alojar tu propia versión de https://www.aperisolve.com/.

Requisito: Docker + Docker Compose.

git clone https://github.com/Zeecka/AperiSolve.git
cd AperiSolve
cp .env.example .env
docker compose up -d

Luego visita la url: http://localhost:5000/

Los anuncios y la analítica están desactivados por defecto; cada integración (CUSTOM_EXTERNAL_SCRIPT, GOOGLE_ADS_TXT, SITE_BASE_URL, Sentry) es opt-in mediante variables de entorno documentadas en .env.example. La aplicación nunca inyecta marcado publicitario por sí misma: CUSTOM_EXTERNAL_SCRIPT carga el script de AdSense y la colocación se deja a los anuncios automáticos.

Arquitectura

La pila se ejecuta como servicios de Docker Compose:

  • web — aplicación Flask servida por gunicorn (plantillas Jinja + frontend JavaScript vainilla).
  • worker — un trabajador RQ que ejecuta los analizadores para cada envío, distribuyendo el trabajo a un hilo por herramienta.
  • cron — un programador de cron RQ que ejecuta la limpieza de retención fuera de la ruta de solicitudes.
  • initdb — un servicio de una sola ejecución que crea las tablas y precarga la base de datos de recuperación de CRC IHDR.
  • postgres — almacena los metadatos de las imágenes y el estado de los envíos.
  • redis — broker RQ (DB 0) y almacenamiento del limitador de tasa (DB 1).
  • rqdashboard — monitoreo de colas, vinculado a localhost:9181.

Esta separación mantiene aisladas las herramientas pesadas (binwalk, foremost, zsteg, etc.) y evita bloquear el trabajador web. Los envíos idénticos se deduplican mediante un hash de contenido, y las imágenes derivadas se cachean con cabeceras HTTP inmutables de larga duración, por lo que el tráfico repetido es barato.

Documentación

Pruebas

uv sync --extra dev
uv run pytest -q            # pruebas unitarias (no se necesitan servicios)

# pruebas end-to-end de analizadores a través de la aplicación en ejecución:
docker compose -f compose.dev.yml up -d
uv run pytest tests/test_webapp_analyzers.py -v

Hoja de ruta

Consulta Issues.

Contribuciones

Consulta CONTRIBUTING.md.

Seguridad

[!WARNING] Si descubres un problema de seguridad, repórtalo de forma privada al propietario del repositorio en lugar de abrir un issue público.

Créditos

Gracias a los donantes:

Gracias a los contribuyentes:

Gracias a la comunidad de código abierto: binwalk, exiftool, GraphicsMagick identify, foremost, jsteg, jphide/jpseek, openstego, outguess, pcrt, pngcheck, steghide, strings, zsteg, ...

Categorías