From 84a7bde4147e47cb591becd66b53b418aec36c63 Mon Sep 17 00:00:00 2001 From: desrosj Date: Thu, 29 Oct 2020 18:08:06 +0000 Subject: [PATCH] Meta: Sanitize meta key before checking protection status. Props zieladam, peterwilsoncc, xknown, whyisjake. Merges [49377,49381] to trunk. Built from https://develop.svn.wordpress.org/trunk@49387 git-svn-id: http://core.svn.wordpress.org/trunk@49146 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- wp-includes/meta.php | 3 ++- wp-includes/version.php | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/wp-includes/meta.php b/wp-includes/meta.php index e1c1f92e48..fe144fcda6 100644 --- a/wp-includes/meta.php +++ b/wp-includes/meta.php @@ -1159,7 +1159,8 @@ function _get_meta_table( $type ) { * @return bool Whether the meta key is considered protected. */ function is_protected_meta( $meta_key, $meta_type = '' ) { - $protected = ( '_' === $meta_key[0] ); + $sanitized_key = preg_replace( "/[^\x20-\x7E\p{L}]/", '', $meta_key ); + $protected = strlen( $sanitized_key ) > 0 && ( '_' === $sanitized_key[0] ); /** * Filters whether a meta key is considered protected. diff --git a/wp-includes/version.php b/wp-includes/version.php index 905e6d8c04..9b826bf034 100644 --- a/wp-includes/version.php +++ b/wp-includes/version.php @@ -13,7 +13,7 @@ * * @global string $wp_version */ -$wp_version = '5.6-beta2-49386'; +$wp_version = '5.6-beta2-49387'; /** * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.