Actualmente estoy usando este método con la solución jQuery, para limpiar cadenas de posibles ataques XSS.Sanitización de Javascript: la forma más segura de insertar una posible cadena XSS html
sanitize:function(str) {
// return htmlentities(str,'ENT_QUOTES');
return $('<div></div>').text(str).html().replace(/"/gi,'"').replace(/'/gi,''');
}
Pero tengo la sensación de que no es lo suficientemente seguro. ¿Extraño algo?
He tratado de htmlentities phpjs proyectan aquí: http://phpjs.org/functions/htmlentities:425/
pero es un poco micrófonos ocultos y devuelve algunos símbolos especiales adicionales. Tal vez es una versión antigua?
Por ejemplo:
htmlentities('test"','ENT_QUOTES');
Produce:
test&quot;
pero debe ser:
test"
¿Cómo estás manejando esto a través de javascript?
¿Cómo pretende utilizar la cadena "desinfectado"? – penartur
Insertar en html document ofc como texto. Como href = "sanitized" o src = "sanitized", o
¿Desde dónde se desencadena el inserto? ¿Desea insertar la cadena en una página ya abierta dinámicamente utilizando Javascript, o en el documento HTML generado por el servidor utilizando PHP? – penartur