From 71ccbbc423bcfd14ba40174b3adcd9a0fafaa511 Mon Sep 17 00:00:00 2001 From: Marc Delisle Date: Sun, 28 Sep 2014 09:48:13 -0400 Subject: [PATCH] [security] XSS with malicious ENUM values Signed-off-by: Marc Delisle --- libraries/TableSearch.class.php | 11 ++++++++--- libraries/Util.class.php | 9 ++++++--- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/libraries/TableSearch.class.php b/libraries/TableSearch.class.php index ec273ed123..910352b3db 100644 --- a/libraries/TableSearch.class.php +++ b/libraries/TableSearch.class.php @@ -316,6 +316,7 @@ EOT; private function _getEnumSetInputBox($column_index, $criteriaValues, $column_type, $column_id, $in_zoom_search_edit = false ) { + $column_type = htmlspecialchars($column_type); $html_output = ''; $value = explode( ', ', @@ -984,7 +985,9 @@ EOT; $html_output .= '' . htmlspecialchars($this->_columnNames[$column_index]) . ''; $properties = $this->getColumnProperties($column_index, $column_index); - $html_output .= '' . $properties['type'] . ''; + $html_output .= '' + . htmlspecialchars($properties['type']) + . ''; $html_output .= '' . $properties['collation'] . ''; $html_output .= '' . $properties['func'] . ''; $html_output .= '' . $properties['value'] . ''; @@ -993,11 +996,13 @@ EOT; $html_output .= ''; $html_output .= '_columnNames[$column_index]) . '" />'; $html_output .= ''; + . ' value="' + . htmlspecialchars($this->_columnTypes[$column_index]) . '" />'; $html_output .= ''; diff --git a/libraries/Util.class.php b/libraries/Util.class.php index 8a8fddce57..37b1b4165f 100644 --- a/libraries/Util.class.php +++ b/libraries/Util.class.php @@ -3062,8 +3062,11 @@ class PMA_Util // for the case ENUM('–','“') $displayed_type = htmlspecialchars($printtype); if (strlen($printtype) > $GLOBALS['cfg']['LimitChars']) { - $displayed_type = ''; - $displayed_type .= substr($printtype, 0, $GLOBALS['cfg']['LimitChars']); + $displayed_type = ''; + $displayed_type .= htmlspecialchars( + substr($printtype, 0, $GLOBALS['cfg']['LimitChars']) + ); $displayed_type .= ''; } @@ -4363,4 +4366,4 @@ class PMA_Util } } -?> \ No newline at end of file +?>