diff -r 8652fb38bb30 wp-admin/admin-ajax.php
--- a/wp-admin/admin-ajax.php	Sat Sep 10 12:24:09 2011 -0500
+++ b/wp-admin/admin-ajax.php	Sun Sep 11 03:55:50 2011 -0500
@@ -13,6 +13,7 @@
  */
 define('DOING_AJAX', true);
 define('WP_ADMIN', true);
+define('WP_SAFE_PAGE_ID', '/^[0-9a-z_-]+$/');
 
 if ( ! isset( $_REQUEST['action'] ) )
 	die('-1');
@@ -1026,7 +1027,7 @@
 
 	$page = isset( $_POST['page'] ) ? $_POST['page'] : '';
 
-	if ( !preg_match( '/^[a-z_-]+$/', $page ) )
+	if ( !preg_match(WP_SAFE_PAGE_ID, $page ) )
 		die('-1');
 
 	if ( ! $user = wp_get_current_user() )
@@ -1048,7 +1049,7 @@
 	$hidden = explode( ',', $_POST['hidden'] );
 	$page = isset( $_POST['page'] ) ? $_POST['page'] : '';
 
-	if ( !preg_match( '/^[a-z_-]+$/', $page ) )
+	if ( !preg_match(WP_SAFE_PAGE_ID, $page ) )
 		die('-1');
 
 	if ( ! $user = wp_get_current_user() )
@@ -1140,11 +1141,12 @@
 	break;
 case 'meta-box-order':
 	check_ajax_referer( 'meta-box-order' );
-	$order = isset( $_POST['order'] ) ? (array) $_POST['order'] : false;
+	
+    $order = isset( $_POST['order'] ) ? (array) $_POST['order'] : false;
 	$page_columns = isset( $_POST['page_columns'] ) ? (int) $_POST['page_columns'] : 0;
 	$page = isset( $_POST['page'] ) ? $_POST['page'] : '';
 
-	if ( !preg_match( '/^[a-z_-]+$/', $page ) )
+	if ( !preg_match( WP_SAFE_PAGE_ID, $page ) ) 
 		die('-1');
 
 	if ( ! $user = wp_get_current_user() )
