Manual de usuario de Movable Type: SANITIZE: Limpiando los Datos Entrantes - (Sanitize: Cleaning Up Incoming Data)

« Tabla de Contenidos


SANITIZE: LIMPIANDO LOS DATOS ENTRANTES

Nota: lo siguiente sólo se aplica si usted ha habilitado la opción Permitir código HTML en comentarios/Allow HTML in Comments en las preferencias de configuración de su bitácora.

Cuando se envían datos por los visitantes de su sitio, esos datos no deben ser necesariamente de confianza. Si usted está permitiendo HTML en sus comentarios, por ejemplo, los visitantes de su sitio podría enviar HTML malicioso, o scripts en Javascript o PHP, para ejecutar código en su sitio. Este código podría hacer de todo, desde leer cookies a leer archivos privados en su servidor.

Para proteger su sitio, Movable Type limpia ("sanitizes'') cualquier dato enviado por los visitantes a su sitio. Esto incluye cualquier en forma de comentario y cualquier dato TrackBack. Esta limpieza se hace para eliminar cualquier código (HTML o similar) que pudiera comprometer la seguridad de su sitio. El proceso de saneamiento funciona sólo permitiendo ciertos tags HTML --cualquier otro tag, y todos los scripts con instrucciones y para procesar  (PHP, JSP, Javascript), son quiitados.

El valor por defecto fijado para los tags y atributos HTML son: a href, b, br, p, strong, em, ul, li, blockquote. Usted puede sobrescribir esta configuración globalmente, fijando la configuración de GlobalSanitizeSpec en el archivo mt.cfg; y puede sobrescribirlo para una bitácora en la configuración de la bitácora. Note: Amenos que usted sepa lo que está haciendo, es recomendable que deje los valores por defecto..

Otra función del proceso de saneamiento, es que puede añadir tags para cerrar tags que se dejaron abierto en el texto a sanear. Por ejemplo, si un visitante de su sitio abre un tag <b> y olvida cerrar los del proceso de saneamiento añadida el tag </b>.

Uso por Defecto

Por defecto, Sanitize está habilitado para los siguientes tags:

Esto significa que usted no necesita modificar sus plantillas para hacer estos tags seguros. Si usted quiere deshabilitar el saneamiento para uno de estos tags, usted puede usar el atributo sanitize:

<$MTPingTitle sanitize="0"$>

Sobrescribir Valores por Defecto

Para sobrescribir las especificaciones de saneamiento por defecto, primero debería estar seguro que tiene una buena razón para hacerlo. También debería estar seguro de entender de las especificaciones de saneamiento descritas aquí.

Configuración sanitize spec consiste en nombres de tags HTML separados por comas. Por cada tag, debe listar también algún atributo que usted quiera permitir, separado por espacios. Algunos ejemplos:

Esto permite tags a con el atributo href y tags b :

a href,b

Esto permite tags p y tags br:

p,br/

Note el  / en el tag br/ en este ejemplo. Esto es necesario por la función de cerrar los tags mencionado arriba: sin el corrector de sólo un tag <br> abierto, desata que necesita cerrar al final del texto saneado. Añadiendo el / después de que el nombre de este tag indica al corrector que este tag no necesita un tag para ser cerrado.

Note que usted debe especificar cualquier atributo permitido para el tag, caminos que usted quiera que todos los atributos sean quitados. Por ejemplo, chistes permite el tag a, también querrá permitir el atributo href para ese tag, o el HTML que le sigue:

<a href="http://www.foo.com/">

se transformará en esto:

<a>

lo cual probablemente no es los que usted quiere.

Si usted desea permitir un cierto atributo para todos los tags HTML en los cuales este tributo pudiera aparecer, use un  * como nombre del tag, seguido por lista de atributos. Por ejemplo:

br/,p,blockquote,* style

Esto permitirá cualquiera de los siguientes:

<br style="..." />
<p style="..." />
<blockquote style="...">

Note que usted debe todavía listas explícitamente cualquier tag  que usted quisiera incluso; * tan sólo permite el atributo listado en cualquiera de esos tags .


Copyright © 2001-2003 Six Apart. All Rights Reserved. (Traducido por Daexma www.nautopia.net)>