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.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-30480 — Proof-of-concept per CVE-2026-30480, una vulnerabilità di Local File Inclusion nel modulo NFSen di LibreNMS, che dimostra il path traversal per includere file PHP arbitrari e l'analisi dell'impatto. | Kitploit
Strumenti/GitHubGitHub/parlakbarann/cve-2026-30480
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPaper e RicercaApprendimento e Formazione
GitHubparlakbarann/cve-2026-30480

CVE-2026-30480

Proof-of-concept per CVE-2026-30480, una vulnerabilità di Local File Inclusion nel modulo NFSen di LibreNMS, che dimostra il path traversal per includere file PHP arbitrari e l'analisi dell'impatto.

Vedi Repository
85 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-2026-30480: LibreNMS Local File Inclusion (LFI) tramite Path Traversal

Panoramica

Esiste una vulnerabilità di Local File Inclusion (LFI) nel modulo NFSen di LibreNMS. Un utente autenticato può sfruttare sequenze di path traversal per includere file PHP arbitrari dal filesystem del server.

CampoValore
ProdottoLibreNMS
VenditoreLibreNMS Project
Tipo di vulnerabilitàLocal File Inclusion (LFI) / Path Traversal
CWECWE-98, CWE-22
Punteggio CVSS7.5 - 8.5 (Alto)
Autenticazione richiestaSì
Data di scoperta2026-02-01

Componente interessato

File: includes/html/pages/device/nfsen.inc.php
Righe: 46-48

if (is_file('includes/html/pages/device/nfsen/' . $vars['nfsen'] . '.inc.php')) {
    include 'includes/html/pages/device/nfsen/' . $vars['nfsen'] . '.inc.php';
} else {
    include 'includes/html/pages/device/nfsen/general.inc.php';
}

Descrizione della vulnerabilità

Il parametro $vars['nfsen'] deriva dall'input dell'utente ($_GET/$_POST) e viene concatenato direttamente nell'istruzione include() senza una corretta sanificazione. L'unica validazione eseguita è un controllo is_file(), che non impedisce le sequenze di path traversal.

Causa principale

  1. L'input dell'utente fluisce direttamente nella costruzione del percorso del file
  2. Nessuna sanificazione dei caratteri di path traversal (../)
  3. Nessuna validazione tramite whitelist dei valori consentiti
  4. is_file() verifica solo l'esistenza, non la sicurezza del percorso

Proof of Concept

Prerequisiti

  • Utente LibreNMS autenticato
  • Accesso ad almeno un dispositivo con scheda Netflow/NFSen

Passaggi per la riproduzione

  1. Accedi a LibreNMS come qualsiasi utente autenticato

  2. Naviga alla scheda Netflow di qualsiasi dispositivo:

    https://[TARGET]/device/[DEVICE_ID]/tab=netflow
    
  3. Aggiungi il parametro dannoso:

    https://[TARGET]/device/[DEVICE_ID]/tab=netflow?nfsen=..%2f..%2fapi-access
    
  4. Osserva che il contenuto della pagina API Access viene caricato al posto del contenuto NFSen

Comportamento atteso vs effettivo

ScenarioAttesoEffettivo
Richiesta normalePagina generale NFSen (Flows, Packets, Traffic)Pagina generale NFSen
Richiesta dannosaPagina generale NFSenContenuto della pagina API Access

Impatto

Tipo di impattoDescrizione
Divulgazione di informazioniIncludere ed eseguire file .inc.php arbitrari
Escalation dei privilegiAccesso a pagine riservate agli amministratori come utente con privilegi bassi
Potenziale RCESe l'attaccante può controllare il contenuto di qualsiasi file .inc.php

Screenshot

0. Versione di LibreNMS

URL: https://[REDACTED]/about

Versione: 22.11.0-23-gd091788f2 (gio 15 dic 2022)

Descrizione: Informazioni sulla versione di LibreNMS che mostrano la versione testata. Questa versione è successiva alla patch per CVE-2021-44278 (v21.12.0), confermando che si tratta di una nuova vulnerabilità non corretta.

Versione


1. Pagina NFSen normale

URL: https://[REDACTED]/device/114/tab=netflow

Descrizione: Pagina NFSen/Netflow normale che mostra le sezioni Flows, Packets e Traffic. Questo è il comportamento atteso senza sfruttamento.

Normale


2. Sfruttata - Pagina API Access (utente amministratore)

URL: https://[REDACTED]/device/114/tab=netflow?nfsen=..%2f..%2fapi-access

Payload: ..%2f..%2fapi-access (path traversal codificato in URL)

Descrizione: Quando viene iniettato il payload dannoso, il contenuto della pagina API Access viene caricato al posto del contenuto NFSen. Questo dimostra una Local File Inclusion riuscita: il file api-access.inc.php è stato incluso al posto di general.inc.php.

Exploit Admin


3. Sfruttata - Errore di autorizzazione (utente Global Read)

URL: https://[REDACTED]/device/114/tab=netflow?nfsen=..%2f..%2fapi-access

Payload: ..%2f..%2fapi-access (path traversal codificato in URL)

Descrizione: Stesso exploit tentato con un utente con privilegi inferiori (Global Read). La pagina mostra l'errore "You have insufficient permissions to view this page". Questo conferma:

  1. La vulnerabilità LFI ha funzionato (il file è stato incluso)
  2. Il controllo di autorizzazione interno del file di destinazione è stato attivato
  3. Viene visualizzato un contenuto diverso rispetto alla pagina NFSen normale

Exploit User

Versioni interessate

  • Versioni di LibreNMS contenenti il modulo NFSen
  • Testato su: 22.11.0-23-gd091788f2 (15 dic 2022)
  • La vulnerabilità esiste nel ramo master corrente
  • Nota: Questa è una vulnerabilità diversa da CVE-2021-44278 (che interessava showconfig.inc.php ed è stata corretta nella v21.12.0). Questa vulnerabilità interessa nfsen.inc.php e rimane non corretta.

Rimedio

Correzione consigliata

Implementare una validazione basata su whitelist:

$allowed_pages = ['general', 'stats', 'channel'];

if (in_array($vars['nfsen'], $allowed_pages, true)) {
    include 'includes/html/pages/device/nfsen/' . $vars['nfsen'] . '.inc.php';
} else {
    include 'includes/html/pages/device/nfsen/general.inc.php';
}

Correzione alternativa

Usare basename() per rimuovere il path traversal:

$nfsen_page = basename($vars['nfsen']);
if (is_file('includes/html/pages/device/nfsen/' . $nfsen_page . '.inc.php')) {
    include 'includes/html/pages/device/nfsen/' . $nfsen_page . '.inc.php';
}

Cronologia

DataAzione
2026-02-01Vulnerabilità scoperta
2026-04-14CVE pubblicato, venditore notificato
2026-04-14Divulgazione pubblica

Riferimenti

  • CWE-98: Improper Control of Filename for Include/Require Statement
  • CWE-22: Improper Limitation of a Pathname to a Restricted Directory
  • OWASP Path Traversal
  • Sito ufficiale LibreNMS

Disclaimer

Questo report di vulnerabilità è fornito esclusivamente a scopo educativo e per ricerche di sicurezza autorizzate. Il ricercatore ha seguito pratiche di divulgazione responsabile notificando il venditore prima della divulgazione pubblica.

Crediti

Scoperto da: Ömer Baran Parlak
Contatto: [email protected]
GitHub: parlakbarann

Scarica lo strumento