Prevenzione XSS quando si inserisce HTML senza dati controllati dall'utente nel DOM?

0

Ho qualche codice JavaScript che recupera del codice HTML da uno script PHP e lo inserisce nel DOM:

$.get("/includes/blocks.php",{
  id:encodeURIComponent(id)
}).done(function(Data){
  $('<div class="pac">'+Data.html+'</div>').appendTo('.main');
}); 

Qual è il modo migliore per prevenire XSS se voglio inserire codice HTML da blocks.php nel DOM? Contiene molti elementi HTML con tonnellate di attributi. Non vengono restituiti dati controllati dall'utente, ma i dati di restituzione potrebbero essere modificati in qualche modo?

    
posta Saly 12.04.2018 - 14:41
fonte

1 risposta

1

No user controlled data is returned, but could the returning data be modified somehow?

No, sei al sicuro. Stai recuperando un documento da un URL fisso ( /includes/blocks.php ) sulla stessa origine che non riflette i dati controllati dall'utente. Affinché sia vulnerabile all'XSS, è necessario un punto di ingresso in cui l'utente malintenzionato può inserire il codice, ma in nessun caso il codice gestisce nemmeno l'input dell'utente.

    
risposta data 12.04.2018 - 18:00
fonte

Leggi altre domande sui tag