From 6af12dbc45073ab99ad6ba17babfd949c9de2855 Mon Sep 17 00:00:00 2001 From: Tony Murray Date: Sun, 29 Sep 2024 08:00:36 -0500 Subject: [PATCH] Fix potential xss in edit alert transport (#16445) Would need to be in php code, so not user editable --- .../html/modal/edit_alert_transport.inc.php | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/includes/html/modal/edit_alert_transport.inc.php b/includes/html/modal/edit_alert_transport.inc.php index e0481a6f63..7b674c77cf 100644 --- a/includes/html/modal/edit_alert_transport.inc.php +++ b/includes/html/modal/edit_alert_transport.inc.php @@ -44,7 +44,7 @@ if (Auth::user()->hasGlobalAdmin()) { // Create list of transport $transports_list = Transport::list(); foreach ($transports_list as $transport => $name) { - echo ''; + echo ''; } ?> @@ -67,19 +67,19 @@ if (Auth::user()->hasGlobalAdmin()) { continue; } - echo '
'; + echo ''; echo csrf_field(); - echo ''; + echo ''; $tmp = call_user_func($class . '::configTemplate'); foreach ($tmp['config'] as $item) { if ($item['type'] !== 'hidden') { - echo '
'; - echo ''; + echo '
'; + echo ''; if ($item['type'] == 'text' || $item['type'] == 'password') { echo '
'; - echo ''; } else { @@ -88,33 +88,33 @@ if (Auth::user()->hasGlobalAdmin()) { echo '
'; } elseif ($item['type'] == 'checkbox') { echo '
'; - echo ''; + echo ''; echo '
'; - $switches[$item['name']] = $item['default']; + $switches[$item['name']] = htmlentities($item['default']); } elseif ($item['type'] == 'select') { echo '
'; - echo ''; foreach ($item['options'] as $descr => $opt) { - echo ''; + echo ''; } echo ''; echo '
'; } elseif ($item['type'] === 'textarea') { echo '
'; - echo ''; echo '
'; } elseif ($item['type'] === 'oauth') { - $class = isset($item['class']) ? $item['class'] : 'btn-success'; + $class = $item['class'] ?? 'btn-success'; $callback = urlencode(url()->current() . '/?oauthtransport=' . $transport); $url = $item['url'] . $callback; - echo ''; + echo ''; if (isset($item['icon'])) { echo ' '; } - echo $item['descr']; + echo htmlentities($item['descr']); echo ''; } echo '
';