¿Qué tan seguro / saneado es wp_insert_posts ()?

11

Mirando el Codex para wp_insert_post () indica que esta función "... desinfecta variables, hace algunas verificaciones , rellena las variables que faltan, como la fecha / hora, etc. "(EDIT: I actualicé la entrada Codex para incluir una ejemplo más sólido que incluye seguridad, así como meta meta y asignación de categoría)

Solo me pregunto si necesito realizar un saneamiento adicional para evitar los ataques XSS y similares, o si se está haciendo lo suficiente a través de la función.

Para ser honesto, he comprobado la función en el núcleo y no he encontrado ningún wp_kses () u otro saneamiento en post_content, por ejemplo, por lo que estoy un poco preocupado. Todo lo que puedo ver que hace es stripslashes_deep () en los datos.

¿Entonces debería estar ejecutando wp_kses () o cualquier otra cosa cuando compilo mis argumentos para wp_insert_post ()?

¿Cuál es la mejor práctica aquí? El Codex es bastante arrogante acerca de la seguridad en su ejemplo.

Gracias

    
pregunta Tom Auger 29.07.2011 - 17:55

1 respuesta

10

No tienes que hacer nada.

En carga WP:

'init' hook -> kses_init() -> kses_init_filters()

Más tarde:

wp_insert_post() -> sanitize_post() -> sanitize_post_field() -> 'content_save_pre' -> wp_filter_post_kses()

Del mismo modo para títulos de publicaciones, comentarios de texto, etc.

Conclusión: wp_insert_post () está muy saneado. :)

    
respondido por el scribu 23.08.2011 - 17:33

Lea otras preguntas en las etiquetas