From 226635ed73f7d9b57252272493a61b349755aa60 Mon Sep 17 00:00:00 2001 From: Andrew Nacin Date: Mon, 12 Sep 2011 21:48:44 +0000 Subject: [PATCH] Loosen validation regex to use sanitize_key() in a few AJAX locations for things like pages, orders, columns. Change return value to 0 for failure, as -1 is reserved for authentication/intention. props ocean90, azaozz, fixes #18637. git-svn-id: https://develop.svn.wordpress.org/trunk@18663 602fd350-edb4-49c9-b593-d223f7449a82 --- wp-admin/admin-ajax.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/wp-admin/admin-ajax.php b/wp-admin/admin-ajax.php index 9ca6dec76b..a22751a021 100644 --- a/wp-admin/admin-ajax.php +++ b/wp-admin/admin-ajax.php @@ -1025,8 +1025,8 @@ case 'closed-postboxes' : $page = isset( $_POST['page'] ) ? $_POST['page'] : ''; - if ( !preg_match( '/^[a-z_-]+$/', $page ) ) - die('-1'); + if ( $page != sanitize_key( $page ) ) + die('0'); if ( ! $user = wp_get_current_user() ) die('-1'); @@ -1047,8 +1047,8 @@ case 'hidden-columns' : $hidden = explode( ',', $_POST['hidden'] ); $page = isset( $_POST['page'] ) ? $_POST['page'] : ''; - if ( !preg_match( '/^[a-z_-]+$/', $page ) ) - die('-1'); + if ( $page != sanitize_key( $page ) ) + die('0'); if ( ! $user = wp_get_current_user() ) die('-1'); @@ -1146,8 +1146,8 @@ case 'meta-box-order': $page = isset( $_POST['page'] ) ? $_POST['page'] : ''; - if ( !preg_match( '/^[a-z_-]+$/', $page ) ) - die('-1'); + if ( $page != sanitize_key( $page ) ) + die('0'); if ( ! $user = wp_get_current_user() ) die('-1');