Skip to content
KitploitKITPLOIT
StrumentiBlog
Log in
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-2026-35031 — Vulnerabilità critica di path traversal che consente RCE in Jellyfin Media Server (CVSS 9.9). Include exploit proof-of-concept, analisi tecnica e strumenti di rilevamento. | Kitploit
Strumenti/GitHubGitHub/keraattin/cve-2026-35031
Escalation di PrivilegiAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingPaper e RicercaApprendimento e FormazioneSviluppo Payload
GitHubkeraattin/cve-2026-35031

CVE-2026-35031

Vulnerabilità critica di path traversal che consente RCE in Jellyfin Media Server (CVSS 9.9). Include exploit proof-of-concept, analisi tecnica e strumenti di rilevamento.

245 mesi 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
Vedi Repository

CVE-2026-35031: Path Traversal nel caricamento dei sottotitoli di Jellyfin che porta a RCE

CVE-ID CVSS Score CWE Affected Product Status

TL;DR

Una vulnerabilità critica di path traversal in Jellyfin Media Server consente agli utenti autenticati con il permesso "Upload Subtitles" di caricare file in posizioni arbitrarie del disco. Sfruttando il campo Format non validato nell'endpoint di caricamento dei sottotitoli, gli attaccanti possono scrivere file in posizioni sensibili, estrarre dati sensibili, aumentare i propri privilegi e infine eseguire codice arbitrario come root tramite l'iniezione LD_PRELOAD.

  • Punteggio CVSS: 9.9 (Critico)
  • Versioni interessate: Jellyfin < 10.11.7
  • Versione corretta: Jellyfin 10.11.7+
  • Autenticazione richiesta: Sì (utente non amministratore con permesso di caricamento sottotitoli)
  • Esecuzione remota di codice: Sì, come root
  • Complessità dello sfruttamento: Bassa

Indice

  1. Fatti rapidi
  2. Cos'è Jellyfin?
  3. Analisi approfondita della vulnerabilità
    • Analisi della causa principale
    • Dettaglio della catena di attacco
    • Sfruttamento di LD_PRELOAD
  4. Analisi dell'impatto
  5. Versioni interessate
  6. Rilevamento
    • Scanner Python
    • Script NSE di Nmap
  7. Indicatori di compromissione
  8. Rimedi
  9. Riferimenti
  10. Autore

Fatti rapidi

ProprietàValore
ID CVECVE-2026-35031
Punteggio CVSS9.9 (Critico)
CWECWE-22: Limitazione impropria del nome di un percorso a una directory ristretta ('Path Traversal')
Prodotto interessatoJellyfin Media Server
Versioni interessate< 10.11.7
Versione corretta10.11.7 e successive
Tipo di vulnerabilitàPath Traversal + Scrittura arbitraria di file + RCE
Autenticazione richiestaSì (utente non amministratore)
Privilegi richiestiPermesso "Upload Subtitles"
Porta predefinita8096/TCP
Advisory GitHubGHSA-9p5f-5x8v-x65m
Stato della patchDisponibile e rilasciata
Exploit pubblicoSì

Cos'è Jellyfin?

Jellyfin è un server multimediale gratuito e open source progettato per aiutarti a gestire e riprodurre in streaming la tua collezione personale di contenuti multimediali. Offre funzionalità simili ai server multimediali commerciali, ma con piena trasparenza del codice sorgente e controllo da parte della community.

Caratteristiche principali

  • Streaming multimediale self-hosted (musica, film, programmi TV)
  • Supporto multi-utente con controlli granulari dei permessi
  • Gestione e sincronizzazione dei sottotitoli
  • Interfaccia web accessibile via HTTP/HTTPS
  • Distribuzione multipiattaforma (Linux, Windows, macOS)
  • Supporto per vari formati multimediali e protocolli di streaming

Architettura di rete```

                      Jellyfin Media Server (Port 8096)
                     /                |                \
                    /                 |                 \
               Web UI            REST API          Media Streams
              (Browser)        (Authenticated)    (Subtitle Upload)
                                     |
                    /System/Info/Public (unauthenticated)
                    /Videos/{itemId}/Subtitles (vulnerable)
                    /Library/Collections (admin)

Client Devices > Network > Jellyfin Server > Database + Storage | /var/lib/jellyfin/ /etc/ld.so.preload (writable via vulnerability)

---

## Analisi Approfondita della Vulnerabilità

### Analisi della Causa Radice

La vulnerabilità è presente nell'endpoint di caricamento dei sottotitoli (`/Videos/{itemId}/Subtitles`) che accetta il caricamento di file e li memorizza su disco. Il difetto critico risiede nella validazione insufficiente del parametro del campo Format.

#### Schema di Codice Vulnerabile

L'endpoint elabora i caricamenti di sottotitoli senza validare o sanificare adeguatamente il campo Format:```
POST /Videos/{itemId}/Subtitles HTTP/1.1
Content-Type: multipart/form-data

[Binary subtitle data]
Format: /../../../etc/ld.so.preload
Language: en

Il parametro Format è pensato per specificare il formato dei sottotitoli (srt, vtt, ass, ecc.) ma viene invece trattato come parte del percorso del file:``` Base Path: /var/lib/jellyfin/subtitles/ User Input: /../../../etc/ld.so.preload Result: /var/lib/jellyfin/subtitles/../../../etc/ld.so.preload Resolved: /etc/ld.so.preload (via path traversal)

### Analisi della catena di attacco

La vulnerabilità combina più debolezze per ottenere l'esecuzione remota di codice come root:```
Step 1: Subtitle Upload with Path Traversal
        POST /Videos/{itemId}/Subtitles
        Format: /../../../etc/ld.so.preload
                    |
                    v
Step 2: Arbitrary File Write
        Write attacker-controlled data to /etc/ld.so.preload
                    |
                    v
Step 3: File Read via .strm Files
        Create .strm files pointing to sensitive paths
        Extract database contents and credentials
                    |
                    v
Step 4: Database Extraction
        Access /jellyfin/jellyfin.db via .strm
        Extract admin user hashes
                    |
                    v
Step 5: Admin Privilege Escalation
        Reset admin password or create new admin account
                    |
                    v
Step 6: RCE via LD_PRELOAD Injection
        LD_PRELOAD=/path/to/malicious.so java
        Arbitrary code execution as root

Meccanismo di Path Traversal```

Input Validation Failure:

Format Field Validation: Expected: srt | vtt | ass | ssa | sub | subrip Actual: /../../../etc/ld.so.preload Result: NO VALIDATION > PATH TRAVERSAL ALLOWED

File Write Operation: String Concatenation: "/subtitles/" + user_format + ".srt" | NO CANONICALIZATION: Path component not resolved before write NO WHITELIST: Format values not restricted NO BOUNDS CHECK: ".." sequences not filtered | v Final Path: /etc/ld.so.preload (EXPLOITED)

### Sfruttamento di LD_PRELOAD

La tecnica LD_PRELOAD è un potente metodo di escalation dei privilegi ed esecuzione di codice sui sistemi Linux:```
LD_PRELOAD Injection Flow:

1. Attacker writes malicious .so (shared object) to /etc/ld.so.preload
   
   /etc/ld.so.preload contents:
   /path/to/attacker.so
Scarica lo strumento