¿Son las funciones esc_ * lo suficientemente seguras en WordPress? (como esc_url, esc_attr, esc_title)

0

WordPress tiene una serie de funciones integradas de validación / saneamiento. Sin embargo, como vemos, hay dos tipos de grupos de este tipo:

  • sanitize_ * (como sanitize_key , sanitize_title , ...)
  • esc_ * (como esc_url , esc_attr , ...)

Mi pregunta: ¿Son esc_ * las funciones lo suficientemente seguras en WordPress? Quiero decir, en tales casos:

echo '<input type="hidden" name="orderby" value="' . esc_attr( $_REQUEST['search_term'] ) . '" />';

es lo suficientemente seguro, o aún deberíamos usar un saneamiento adicional, como:

sanitize_title(esc_attr( $_REQUEST['search_term'] ))
    
pregunta T.Todua 08.12.2018 - 17:18
fuente

1 respuesta

1

En mi opinión, estas funciones y su documentación son bastante claras en qué lugares se deben usar estas funciones y qué hacen. esc_attr escapa de los atributos de las etiquetas HTML y sanitize_title limpia el título y elimina HTML, PHP, etc. Dado que los atributos (para esc_attr ) se usan (solo) dentro de las etiquetas HTML y las etiquetas HTML serán eliminadas por sanitize_title , no tiene sentido usar esc_attr inside sanitize_title : todos los atributos escapados dentro de HTML se eliminarán junto con la etiqueta HTML completa.

Las funciones esc_... y sanitize_... son seguras siempre que se usen para el propósito para el que fueron diseñadas (y que está documentada). Si en su lugar, uno intenta usar esc_attr para escapar de una URL, etc., esto no coincide con el propósito documentado y es probable que no proporcione la seguridad deseada.

    
respondido por el Steffen Ullrich 08.12.2018 - 17:35
fuente

Lea otras preguntas en las etiquetas