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-2024-1561 — CVE-2024-1561 - Gradio Lettura arbitraria di file | Kitploit
Strumenti/GitHubGitHub/k3ystr0k3r/cve-2024-1561
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebRaccolta InformazioniPenetration TestingApprendimento e Formazione
GitHubk3ystr0k3r/cve-2024-1561

CVE-2024-1561

CVE-2024-1561 - Gradio Lettura arbitraria di file

Vedi Repository
1 mese 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-2024-1561 - Lettura Arbitraria di File in Gradio

CVE-2024-1561 è una vulnerabilità di lettura arbitraria di file che interessa Gradio versioni precedenti alla 4.13.0. Gradio è un popolare framework Python utilizzato per creare rapidamente interfacce web per modelli di machine learning e applicazioni di intelligenza artificiale.

La vulnerabilità esiste perché l'endpoint /component_server non limita correttamente quali metodi della classe interna Component possono essere invocati. Un attaccante può abusare di questo comportamento per chiamare metodi che non erano mai stati pensati per essere esposti tramite HTTP.

Uno di questi metodi, move_resource_to_block_cache, consente di copiare un file dal filesystem locale nella directory cache temporanea di Gradio. Una volta copiato, il file diventa accessibile tramite l'endpoint /file, permettendo a un attaccante di recuperarne il contenuto.

Sebbene la vulnerabilità non fornisca direttamente l'esecuzione di codice remoto, può esporre file sensibili dal server e può essere sfruttata per raccogliere credenziali, file di configurazione, chiavi API, token o altre informazioni utili per ulteriori attacchi.


Versioni Affette

  • Gradio < 4.13.0

Le versioni 4.13.0 e successive contengono i controlli di sicurezza necessari per prevenire l'invocazione arbitraria di metodi.


Causa Principale

Il problema deriva da una validazione insufficiente all'interno dell'endpoint /component_server.

Invece di limitare le richieste a un elenco sicuro di funzioni chiamabili, Gradio permetteva agli attaccanti di specificare nomi di metodi arbitrari appartenenti a un'istanza del componente.

Poiché il metodo interno:

root@kitploit:~
move_resource_to_block_cache()

accetta un percorso del filesystem come input, un attaccante può istruire l'applicazione a mettere in cache qualsiasi file leggibile sul server.

Una volta memorizzato nella cache, il file viene esposto tramite la normale funzionalità di servizio file di Gradio.


Processo di Sfruttamento

Un attacco con successo segue generalmente questi passaggi:

  1. Interrogare l'endpoint /config.
  2. Ottenere un ID componente valido.
  3. Inviare una richiesta a /component_server.
  4. Invocare il metodo move_resource_to_block_cache.
  5. Fornire il percorso di un file bersaglio (ad esempio /etc/passwd).
  6. Ricevere il percorso cache temporaneo nella risposta del server.
  7. Scaricare il file memorizzato nella cache tramite l'endpoint /file.

Questo processo consente di recuperare in remoto file arbitrari leggibili dal processo Gradio.


Esempio di Richiesta

root@kitploit:~
POST /component_server HTTP/1.1
Host: target
Content-Type: application/json

{
    "component_id": "3",
    "data": "/etc/passwd",
    "fn_name": "move_resource_to_block_cache",
    "session_hash": "aaaaaaaaaaa"
}

Se l'operazione riesce, Gradio restituisce la posizione del file memorizzato nella cache.

L'attaccante può quindi richiedere:

root@kitploit:~
GET /file=/tmp/gradio/<cached-file>/passwd HTTP/1.1
Host: target

per recuperarne il contenuto.


Impatto sulla Sicurezza

Uno sfruttamento con successo può permettere a un attaccante di leggere file sensibili tra cui:

  • /etc/passwd
  • Chiavi SSH private
  • File di ambiente (.env)
  • Token API
  • Credenziali cloud
  • File di configurazione dell'applicazione
  • Credenziali del database
  • Codice sorgente
  • Segreti di autenticazione

L'impatto dipende dai privilegi con cui è eseguita l'applicazione Gradio.


Mitigazione

Per correggere questa vulnerabilità:

  • Aggiornare Gradio alla versione 4.13.0 o successiva.
  • Evitare di esporre applicazioni Gradio direttamente su Internet pubblico.
  • Richiedere autenticazione quando possibile.
  • Limitare l'accesso tramite un proxy inverso o un firewall.
  • Eseguire Gradio con i privilegi minimi necessari.
  • Evitare di conservare credenziali sensibili in posizioni accessibili al processo dell'applicazione.

Riferimenti

  • CVE: https://nvd.nist.gov/vuln/detail/CVE-2024-1561
  • Patch: https://github.com/gradio-app/gradio/pull/6884

Disclaimer

Questo repository è fornito esclusivamente a scopo educativo, per la ricerca sulla sicurezza e per test di penetrazione autorizzati. Ottenere sempre il permesso esplicito prima di testare sistemi che non si possiedono o per i quali non si è autorizzati a eseguire valutazioni.

Scarica lo strumento