¿Cómo proteger nuestras aplicaciones web contra ataques XSS? Una aplicación es vulnerable al ataque, si no hace ninguna conversión de un carácter especial.¿Cómo evitar aplicaciones de ataques XSS?
Respuesta
Debe HTML escaparse de cualquier entrada antes de devolverla al usuario. Algunas referencias:
Sólo para añadir a la lista de WhiteFang34' :
Tiene varias listas blancas incorporado para elegir, tales como permitir que algo de HTML, sin HTML, etc.
me eligió este sobre Apache Commons de StringEscapeUtils.escapeHtml()
debido a cómo se maneja apóstrofes. Es decir. si nuestros usuarios escriben:
La madre de Alan tenía una buena receta de brownie.
JSoup dejará el apóstrofe solo, mientras que Apache Commons escaparía esa cadena como:
Alan madre \ 's tenía una buena receta de brownie.
De lo que no me gustaría tener que preocuparme por separar el vacío antes de mostrarlo al usuario.
Las entradas de escape HTML funcionan muy bien. Pero en algunos casos las reglas comerciales pueden requerir que NO se escape el HTML. Usar REGEX no es apto para la tarea y es muy difícil encontrar una buena solución para usarlo.
La mejor solución que encontré fue utilizar: http://jsoup.org/cookbook/cleaning-html/whitelist-sanitizer
Se construye un árbol DOM con las aportaciones y los filtros de cualquier elemento no permitido Anteriormente: por una lista blanca. La API también tiene otras funciones para limpiar html.
- 1. Prevención de ataques XSS
- 2. Utilice PHP para evitar ataques XSS dentro de una imagen
- 3. Sanitize $ _GET parámetros para evitar XSS y otros ataques
- 4. Prevención de ataques Javascript y XSS
- 5. ataques XSS y los atributos de estilo
- 6. ¿La codificación HTML evita los ataques de seguridad XSS?
- 7. Ataques en aplicaciones WPF
- 8. ¿Cuáles son las mejores prácticas para evitar ataques xss en un sitio PHP
- 9. ¿Las cookies seguras de https previenen ataques XSS?
- 10. ¿Por qué la codificación HTML previene ciertos ataques XSS?
- 11. ¿Markdown (con strip_tags) es suficiente para detener los ataques XSS?
- 12. HTML-Entidad de escape para evitar XSS
- 13. Cómo evitar "Ataques de secuencias de comandos entre sitios"
- 14. ataques a aplicaciones web y debe tener métodos de defensa
- 15. ¿Cómo desinfectar el código HTML en Java para prevenir los ataques XSS?
- 16. ¿Cómo se puede evitar XSS en las descargas de HTML?
- 17. Java 5 HTML escaping Para evitar XSS
- 18. ¿Existen herramientas multiplataforma para escribir ataques XSS directamente en la base de datos?
- 19. ¿Cómo puedo validar la entrada HTML para evitar XSS?
- 20. ¿Cómo prevenir ataques XSS cuando necesito renderizar HTML desde un editor WYSIWYG?
- 21. Sanitización de URL para evitar XSS en Rails
- 22. Alternativa al uso de c: out para evitar XSS
- 23. prevención de XSS en PHP
- 24. valores de escape Json.NET SerializeObject para evitar XSS
- 25. ¿Se pueden realizar ataques XSS desde una hoja de estilo vinculada?
- 26. ¿Esta búsqueda basada en LINQ es segura contra ataques de inyección SQL/XSS?
- 27. ¿Debo usar ambos striptags() y htmlspecialchars() para evitar XSS?
- 28. ¿Mejor expresión regular para detectar ataques XSS (Cross-site Scripting) (en Java)?
- 29. Prevención de ataques XSS en el contenido HTML enviado por el usuario en PHP, el modo eBay
- 30. ¿Cómo funciona XSS?
La gran publicación de cómo prevenir ataques XSS en diferentes situaciones se publica allí: http://stackoverflow.com/questions/19824338/avoid-xss-and-allow-some-html-tags-with-javascript/19943011# 19943011 – user1459144