Pregunta

Para mi post entidad almaceno HTML y de reducción del precio de base de datos (HTML se convierte a partir de rebajas). HTML es para la representación de la página y la reducción del precio para la capacidad de edición (con armas de destrucción masiva). Me higienizar HTML antes de almacenar a db. La pregunta es: ¿Debo desinfectar rebaja también? o es XSS-seguro si sólo se lo paso a DMP-editor?

¿Fue útil?

Solución

Markdown puede contener HTML arbitraria; esto se permite explícitamente. Por lo que debe desinfectar también, o al menos desinfectar el resultado de la conversión a HTML, antes de enviar a los clientes web.

Recuerdo que una de las posibles exploits con lo que en los primeros días es que se puede poner el contenido en el JS de rebajas, y el que editó su artículo daría lugar a esas secuencias de comandos en la vista previa. No sé si esto se fija todavía.

Otros consejos

Me he dado cuenta de que "limpiar HTML antes de almacenar a DB" y hablar de XSS de fallos en la frase siguiente. Esos son dos facetas diferentes de validación de entrada, y no hay que mezclar para arriba, y abordar tanto en su diseño:

  • Debe insertar con seguridad cualquier entrada del usuario en la base de datos, es decir, asegúrese de que la entrada se escapó adecuadamente (mysql_real_escape_string, procedimientos almacenados, bibliotecas ORM, etc.)

  • Usted debe con seguridad a la salida HTML / JS (incluyendo la entrada de armas de destrucción masiva), la eliminación o escapar ninguna de las secuencias que se pueden convertir en exploits XSS y otras cosas desagradables.

En cuanto a la pregunta, estoy de acuerdo con Chris - puesto de rebajas puede incluir HTML, debe ser desinfectado

.

Sólo una adición:
Esta pregunta vino de usar armas de destrucción masiva

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top