DoubleClickjacking: nuova minaccia nel web

da Redazione
0 commenti 2 minuti leggi

Il DoubleClickjacking, un’evoluzione sofisticata del clickjacking, rappresenta una nuova minaccia per la sicurezza delle applicazioni web. Questo attacco sfrutta una sequenza di doppio clic per aggirare le protezioni tradizionali, compromettendo account e autorizzazioni in modo quasi impercettibile per l’utente.

Come funziona il DoubleClickjacking

image 6
DoubleClickjacking: nuova minaccia nel web 7

Il DoubleClickjacking utilizza una finestra sovrapposta che inganna l’utente durante un doppio clic. Questo è possibile grazie a una vulnerabilità nei tempi di gestione degli eventi tra il primo clic (mousedown) e il secondo clic (onclick). L’attacco segue un flusso specifico:

  1. L’utente visita un sito malevolo che apre una finestra apparentemente innocua, ad esempio una verifica Captcha.
  2. Durante il primo clic, la finestra malevola si chiude o cambia, rivelando una pagina sensibile, come una richiesta di autorizzazione OAuth.
  3. Il secondo clic cade su un elemento sensibile nella finestra sottostante, autorizzando inconsapevolmente l’accesso a un’applicazione malevola.

Questa tecnica permette agli attaccanti di aggirare protezioni come X-Frame-Options, cookie SameSite e Content Security Policies, che sono inefficaci contro questa nuova forma di manipolazione dell’interfaccia utente.

Implicazioni di sicurezza

Le potenziali applicazioni del DoubleClickjacking includono:

Annunci
  • Compromissione di OAuth: Autorizzazione non intenzionale di app malevole con accesso completo ai dati dell’utente.
  • Modifiche agli account: Disabilitazione delle impostazioni di sicurezza, trasferimenti di denaro o eliminazione di account.
  • Attacchi su estensioni browser: Manipolazione di portafogli crypto e disabilitazione di VPN.

La semplicità di esecuzione, combinata con l’inefficacia delle difese esistenti, rende il DoubleClickjacking una minaccia pericolosa per tutti i siti web e le applicazioni moderne.

Strategie di mitigazione

  1. Protezione lato client:
    Una soluzione JavaScript efficace consiste nel disabilitare i pulsanti critici di default, abilitandoli solo dopo interazioni intenzionali dell’utente, come movimenti del mouse o pressioni della tastiera. Questo approccio riduce drasticamente il rischio di clic non autentici.
(function(){
  if (window.matchMedia && window.matchMedia("(hover: hover)").matches) {
    var buttons = document.querySelectorAll('form button, form input[type="submit"]');
    buttons.forEach(button => button.disabled = true);
    function enableButtons() {
      buttons.forEach(button => button.disabled = false);
    }
    document.addEventListener("mousemove", enableButtons);
    document.addEventListener("keydown", e => {
      if(e.key === "Tab") enableButtons();
    });
  }
})();
  1. Proposte di protezione lato browser:
    Gli sviluppatori di browser potrebbero implementare nuovi standard, come un’intestazione HTTP specifica, per limitare i cambiamenti di contesto durante una sequenza di doppio clic. Un’idea potrebbe essere: Double-Click-Protection: strict

Il DoubleClickjacking rappresenta una nuova frontiera negli attacchi web. La sua capacità di eludere le difese tradizionali evidenzia l’urgenza di strategie di mitigazione a livello client e browser. Sviluppatori e team di sicurezza devono affrontare questa minaccia con attenzione per proteggere gli utenti da compromissioni potenzialmente devastanti.

Si può anche come

MatriceDigitale.it – Copyright © 2024, Livio Varriale – Registrazione Tribunale di Napoli n° 60 del 18/11/2021. – P.IVA IT10498911212 Privacy Policy e Cookies

Developed with love by Giuseppe Ferrara