From 522936fab1249e719fd91ce4883bb9e4c88d5d36 Mon Sep 17 00:00:00 2001 From: Seamus Lee Date: Wed, 23 Dec 2020 19:45:56 +1100 Subject: [PATCH] Escape information supplied by extensions to prevent XSS --- templates/CRM/Admin/Page/ExtensionDetails.tpl | 20 +++++++++---------- templates/CRM/Admin/Page/Extensions/Main.tpl | 10 +++++----- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/templates/CRM/Admin/Page/ExtensionDetails.tpl b/templates/CRM/Admin/Page/ExtensionDetails.tpl index bab021bf14..a769842de6 100644 --- a/templates/CRM/Admin/Page/ExtensionDetails.tpl +++ b/templates/CRM/Admin/Page/ExtensionDetails.tpl @@ -1,6 +1,6 @@ {foreach from=$extension.urls key=label item=url} - + {/foreach} @@ -16,19 +16,19 @@ - + - + - + - + - + @@ -49,17 +49,17 @@ - + - + - +
{$label}{$url}
{$label|escape}{$url|escape}
{ts}Author{/ts}
{ts}Comments{/ts}{$extension.comments}{ts}Comments{/ts}{$extension.comments|escape}
{ts}Version{/ts}{$extension.version}{ts}Version{/ts}{$extension.version|escape}
{ts}Released on{/ts}{$extension.releaseDate}{ts}Released on{/ts}{$extension.releaseDate|escape}
{ts}License{/ts}{$extension.license}{ts}License{/ts}{$extension.license|escape}
{ts}Development stage{/ts}{$extension.develStage}{ts}Development stage{/ts}{$extension.develStage|escape}
{ts}Requires{/ts}{ts}Compatible with{/ts} {foreach from=$extension.compatibility.ver item=ver} - {$ver}   + {$ver|escape}   {/foreach}
{ts}Local path{/ts}{$extension.path}{ts}Local path{/ts}{$extension.path|escape}
{ts}Download location{/ts}{$extension.downloadUrl}{ts}Download location{/ts}{$extension.downloadUrl|escape}
{ts}Key{/ts}{$extension.key}{ts}Key{/ts}{$extension.key|escape}
diff --git a/templates/CRM/Admin/Page/Extensions/Main.tpl b/templates/CRM/Admin/Page/Extensions/Main.tpl index 881d1a4d0c..e7598bab04 100644 --- a/templates/CRM/Admin/Page/Extensions/Main.tpl +++ b/templates/CRM/Admin/Page/Extensions/Main.tpl @@ -19,19 +19,19 @@ Depends: CRM/common/enableDisableApi.tpl and CRM/common/jsortable.tpl {foreach from=$localExtensionRows key=extKey item=row} - + -  {$row.label}
{$row.description} +  {$row.label|escape}
{$row.description|escape} {if $extAddNewEnabled && $remoteExtensionRows[$extKey] && $remoteExtensionRows[$extKey].upgradelink}
{$remoteExtensionRows[$extKey].upgradelink}
{/if} {$row.statusLabel} {if $row.upgradable}
({ts}Outdated{/ts}){/if} - {$row.version} {if $row.upgradable}
({$row.upgradeVersion}){/if} - {$row.type|capitalize} + {$row.version|escape} {if $row.upgradable}
({$row.upgradeVersion}){/if} + {$row.type|escape|capitalize} {$row.action|replace:'xx':$row.id} - + {include file="CRM/Admin/Page/ExtensionDetails.tpl" extension=$row localExtensionRows=$localExtensionRows remoteExtensionRows=$remoteExtensionRows} -- 2.25.1