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
ysoserial-modified — Ese repositorio contiene mis actualizaciones de la conocida herramienta de explotación de deserialización de Java ysoserial. | Kitploit
Herramientas/GitHubGitHub/pimps/ysoserial-modified
Frameworks de Pruebas de PenetraciónFrameworks de ExploitsExplotación de Aplicaciones WebDesarrollo de Payloads
GitHubpimps/ysoserial-modified

ysoserial-modified

Ese repositorio contiene mis actualizaciones de la conocida herramienta de explotación de deserialización de Java ysoserial.

Ver Repositorio
18940hace 4 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

ysoserial-modified

Este es un fork de la aplicación ysoserial original que se puede encontrar aquí: https://github.com/frohoff/ysoserial

Descripción de la modificación

Debido a cómo funciona Runtime.getRuntime().exec(String.class) en Java, los comandos anidados y complejos donde necesitarás controlar tuberías (pipes) o enviar la salida a archivos (ej: cat /etc/passwd > /tmp/passwd_copy) no funcionarán porque el comando ejecutado por el método exec() de la clase Runtime no se ejecuta dentro de un entorno de terminal. Un posible truco es ejecutar "/bin/sh -c 'command'" pero necesitarás escapar el carácter de espacio en el 'command' usando ${IFS} o no funcionará como se espera. Para más detalles sobre ese problema y posibles soluciones, por favor lee esta publicación que profundiza en los detalles.

Una buena solución para solucionar ese problema es pasar los argumentos al método Runtime.getRuntime().exec(String[].class) que espera un array de Strings. La mejor opción es ejecutar lo siguiente: Runtime.getRuntime().exec(new String[] {"/bin/sh", "-c", "command"}). Pasando los argumentos de esa manera, Java entenderá que estás ejecutando /bin/bash pasando los argumentos -c y 'command' de la forma correcta y ejecutará tu comando dentro de un entorno de terminal, lo que te permitirá usar comandos anidados o complejos (con | o ;) y también controlar entradas y salidas (con < y >).

Sabiendo esto, agregué una funcionalidad a ysoserial donde indicas el tipo de terminal que quieres usar para ejecutar tu comando (cmd / bash / powershell o none) y mi modificación ejecutará tu comando dentro de ese contexto de terminal permitiéndote ejecutar cualquier comando complejo como debería funcionar.

Uso

root@kitploit:~
pimps@Scorpion:~/git/ysoserial-modified/target$ java -jar ysoserial-modified.jar 
Y SO SERIAL?
Usage: java -jar ysoserial-[version]-all.jar [payload type] [terminal type: cmd / bash / powershell / none] '[command to execute]'
   ex: java -jar ysoserial-[version]-all.jar CommonsCollections5 bash 'touch /tmp/ysoserial'
	Available payload types:
		BeanShell1 [org.beanshell:bsh:2.0b5]
		C3P0 [com.mchange:c3p0:0.9.5.2, com.mchange:mchange-commons-java:0.2.11]
		CommonsBeanutils1 [commons-beanutils:commons-beanutils:1.9.2, commons-collections:commons-collections:3.1, commons-logging:commons-logging:1.2]
		CommonsCollections1 [commons-collections:commons-collections:3.1]
		CommonsCollections2 [org.apache.commons:commons-collections4:4.0]
		CommonsCollections3 [commons-collections:commons-collections:3.1]
		CommonsCollections4 [org.apache.commons:commons-collections4:4.0]
		CommonsCollections5 [commons-collections:commons-collections:3.1]
		CommonsCollections6 [commons-collections:commons-collections:3.1]
		FileUpload1 [commons-fileupload:commons-fileupload:1.3.1, commons-io:commons-io:2.4]
		Groovy1 [org.codehaus.groovy:groovy:2.3.9]
		Hibernate1 []
...

Descarga / Instalación

Descarga el jar compilado desde el directorio /target de este repositorio o simplemente haz clic aquí

Para compilarlo tú mismo:

Requiere Java 1.7+ y Maven 3.x+

root@kitploit:~
$ git clone https://github.com/pimps/ysoserial-modified.git
$ cd ysoserial-modified
$ mvn clean package -DskipTests

El archivo jar se ubicará en el directorio target.

Descargar herramienta