Security Vulnerability (CVE): $(userInput) executed as HTML string containing <script> or onerror (XSS) – jQuery JQUERY_XSS_SELECTOR

JQUERY_XSS_SELECTOR

Passare una stringa proveniente dall'utente (es. 'location.hash') direttamente alla funzione '$()' può causare l'esecuzione di codice arbitrario (XSS) se la stringa inizia con '<img src=x onerror=...>'; in jQuery 3+ per selezionare elementi usare selettori qualificati o '$.parseHTML()'.

Cosa significa questo errore?

Passare una stringa proveniente dall'utente (es. 'location.hash') direttamente alla funzione '$()' può causare l'esecuzione di codice arbitrario (XSS) se la stringa inizia con '<img src=x onerror=...>'; in jQuery 3+ per selezionare elementi usare selettori qualificati o '$.parseHTML()'.

Messaggio originale

Security Vulnerability (CVE): $(userInput) executed as HTML string containing <script> or onerror (XSS)

Contesto e parole chiave

Alias

  • jQuery $(userInput) XSS vulnerability

Messaggi alternativi

  • vulnerabilità XSS passaggio input utente a selettore jQuery

Prodotti

  • jQuery Library (v1.x, v2.x, v3.x, v4.x)

Piattaforme

  • Linux
  • macOS
  • Qualsiasi Browser Web
  • Windows

Parole chiave

  • ajax
  • errore-jquery-html-string-injection-xss
  • javascript
  • jquery
  • jquery.selettori.html-string-injection-xss-security
  • Selettori e Sintassi ($)

Cause possibili

Causa tecnica per Errore jQuery Sicurezza: Vulnerabilità XSS in $(userInput) (Iniezione HTML)

Passare una stringa proveniente dall'utente (es. 'location.hash') direttamente alla funzione '$()' può causare l'esecuzione di codice arbitrario (XSS) se la stringa inizia con '<img src=x onerror=...>'; in jQuery 3+ per selezionare elementi usare selettori qualificati o '$.parseHTML()'.

molto comune

Diagnosi

Diagnostica DOM o AJAX per Errore jQuery Sicurezza: Vulnerabilità XSS in $(userInput) (Iniezione HTML)

Verificare lo stato della variabile window.jQuery nella Console DevTools (F12) e ispezionare il tab Network per le chiamate AJAX.

Come leggere il risultato. Restituisce la versione attiva di jQuery e il numero effettivo di nodi DOM corrispondenti al selettore.

terminal
console.log(jQuery.fn.jquery); console.log($('.my-element').length);

Risoluzione

Risoluzione standard per Errore jQuery Sicurezza: Vulnerabilità XSS in $(userInput) (Iniezione HTML)

Difficoltà: facileRischio: basso

Applicare la correzione al codice o alla configurazione degli script jQuery nel frontend.

  1. Ispezionare la riga segnalata nella console del browser
  2. Correggere il selettore CSS, il passaggio dei parametri o la delegazione con .on()
  3. Ricaricare la pagina con cache svuotata (Ctrl+F5) per verificare la risoluzione

Domande frequenti

Come risolvere l'errore Errore jQuery Sicurezza: Vulnerabilità XSS in $(userInput) (Iniezione HTML) in jQuery?

Passare una stringa proveniente dall'utente (es. 'location.hash') direttamente alla funzione '$()' può causare l'esecuzione di codice arbitrario (XSS) se la stringa inizia con '<img src=x onerror=...>'; in jQuery 3+ per selezionare elementi usare selettori qualificati o '$.parseHTML()'.

Approfondimenti

Schede correlate