Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
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.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Capsulith — Ejecuta código ARM64 preservado en Node o en un navegador; inspecciona píxeles de imágenes decodificadas y memoria inicializada. | Kitploit
Herramientas/GitHubGitHub/nazeeh111/capsulith
Análisis EstáticoAnálisis Dinámico (Sandboxing)Ingeniería InversaScripting y AutomatizaciónDepuradoresUtilidades y FrameworksAnálisis de BinariosExplotación de Binarios
GitHubnazeeh111/capsulith

Capsulith

Ejecuta código ARM64 preservado en Node o en un navegador; inspecciona píxeles de imágenes decodificadas y memoria inicializada.

12hace 1 díaAún no revisado
Ver Repositorio
Sitio web

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

Capsulith

Ejecuta código nativo preservado. Reabre su estado inicializado. Capsulith empaqueta funciones ARM64 seleccionadas, sus contratos de llamada y la memoria que poseen para Node o el navegador. Conserva las instrucciones originales y reanuda un objeto inicializado en un worker nuevo, sin la aplicación original.

Un decodificador heredado, una suma de verificación o una rutina binaria aislada pueden convertirse en una pequeña API reutilizable. Capsulith muestra qué bytes y dependencias viajan con ella, dónde lee y escribe la ejecución, y por qué una funcionalidad no puede extraerse cuando requiere estado no soportado.

Pruébalo

Abre el banco de trabajo de imágenes nativas. Elige Load & run example para la obra de arte QOI preparada, o trae una imagen PNG o QOI pequeña. El codificador QOI original extraído escribe un archivo, un decodificador nativo separado devuelve sus píxeles, y puedes inspeccionar bytes RGBA individuales. Preserva esa asignación de píxeles inicializada, cierra el worker, y luego restáurala y libérala en uno nuevo. No se necesita cuenta, servidor de carga, binario original ni compilador para ejecutar el banco de trabajo público.

PNG usa RGBA decodificado por el navegador como línea base de comparación explícita; la entrada solo QOI no tiene comparación independiente de píxeles de origen. Las imágenes están limitadas a 256 píxeles por dimensión y 1 MiB. Esta es una demostración de componente nativo preparado con fuente conocida, no un nuevo códec ni una recuperación universal de formatos. Fuente QOI original, contratos, controles nativos/FFmpeg independientes y comandos Node autónomos.

PNG real importado en el navegador, ida y vuelta QOI compilada y heap de píxeles nativo restaurado

Prueba la demo de objetos en el navegador sin clave y pulsa Run lifecycle. Ejecuta las instrucciones extraídas reales localmente; no llama a un servidor para generar resultados.

Descarga el wheel de Python desde la release, luego:

python3 -m pip install capsulith-0.3.0-py3-none-any.whl
capsulith studio

Abre http://127.0.0.1:6359. La función Studio conserva el decodificador LZ4 y los especímenes xxHash. Abre Object studio, elige Open original LZ4 example y luego Run lifecycle para crear, comprimir, guardar un diccionario, crear un checkpoint, restaurar, continuar y liberar un flujo compilado real. No se necesita ninguna clave de API ni servicio de pago. Se requieren Python 3.10+ y Capstone para la extracción; el navegador ejecuta a través del emulador WebAssembly incluido. Node 20+ solo es necesario para la CLI o para las llamadas a Node exportadas.

El Studio acepta una dylib Mach-O de ARM64, inventaría sus funciones, extrae una raíz seleccionada y te permite editar búferes, argumentos de registro, entradas escalares y el tipo de retorno. La vista de dependencias conecta los helpers/imports con los sitios de llamada reales y las instrucciones originales. Los eventos de ejecución enlazan con la región de memoria nombrada y el código original. Las ejecuciones detenidas muestran evidencia parcial sin afirmar un resultado exitoso.

Export portable capsule descarga los bytes actuales, el contrato y las entradas, los runners de Node/navegador, el backend fijado, el código fuente completo del backend y los scripts de compilación, y las licencias. Descomprime y ejecuta node run.cjs, o sirve esa carpeta por HTTP y abre su runner de navegador independiente. Python, Capstone y el binario original no son necesarios para esas llamadas. La API exportada acepta entradas diferentes, admite cancelación e impone los límites declarados.

Mantener un objeto nativo inicializado

Original LZ4 methods, restored dictionary access and exact native comparison in the object Studio

El object Studio importa el JSON del módulo extraído o lee tu artefacto Mach-O de ARM64 propio con métodos nombrados declarados explícitamente. Inspecciona las raíces, los chunks y las dependencias reales; asigna búferes de llamador nombrados desde hex o desde un archivo local; elige un método y proporciona referencias de región tipadas o enteros. El mapa de memoria muestra regiones reales propias e inicialización, con bytes sin procesar opacos en lugar de campos supuestos. Los retornos, los rangos de acceso, los contadores y los eventos acotados provienen de las instrucciones originales.

Guarda un checkpoint antes de una operación que puedas necesitar deshacer. Restaurar un módulo coincidente conserva las direcciones de invitado y los ID de región, pero crea una nueva identidad de instancia; vuelve a enlazar las referencias por ID de región. Editar las entradas revoca la evidencia obsoleta, y un fallo o una cancelación requiere un checkpoint previo o una nueva instancia. La liberación nativa y la liberación del búfer del llamador son operaciones de ciclo de vida explícitas e independientes. El runtime nunca adivina si los punteros nativos siguen refiriéndose a un búfer.

capsulith module examples/lz4/liblz4.dylib \
  --methods examples/native-objects/methods.json --out stream.module.json
node runtime/object-cli.cjs examples/native-objects/start.json \
  --module stream.module.json --checkpoint-out first.checkpoint.json
# The first Node process has ended. This command opens a fresh worker.
node runtime/object-cli.cjs examples/native-objects/continue.json \
  --module stream.module.json --checkpoint first.checkpoint.json
capsulith export-module stream.module.json \
  --checkpoint first.checkpoint.json --out stream-object.zip

Elige nuevos nombres de salida; los comandos de exportación de módulo, checkpoint y objeto se niegan a sobrescribir archivos existentes. Los programas de operación proporcionados son específicos del ciclo de vida documentado de LZ4. Los módulos genéricos necesitan sus propios métodos declarados por el llamador y programas de operación.

Una exportación de objeto contiene el módulo de instrucciones original, bytes de checkpoint retenidos opcionales, ejecutores independientes para Node/navegador, el Studio del objeto, el runtime y los scripts de compilación/fuente del backend correspondiente, licencias y un manifiesto de archivos con bytes, SHA256 y permisos. Sirve la carpeta y abre index.html para restaurar el checkpoint incluido sin endpoints de API, o ejecuta node run.cjs your-operations.json --checkpoint checkpoint.json. Los binarios originales, paquetes de Python y compiladores no son necesarios para la ejecución. Un checkpoint incluye bytes retenidos del llamador; inspecciónalos antes de compartirlos. Consulta la API de objetos y el formato de operación y el ejemplo nativo.

Usa tu propio artefacto

capsulith inspect legacy.dylib
capsulith extract legacy.dylib --root _decode \
  --contract decode-contract.json --out decode.capsule.json
capsulith run decode.capsule.json --inputs input.json
capsulith export decode.capsule.json --inputs input.json --out decoder.zip
Descargar herramienta