From deb9b62c7f839f5e41aa4d620bcdac5f9321a8a3 Mon Sep 17 00:00:00 2001 From: Oliver Gorwits Date: Mon, 23 Sep 2019 14:22:00 +0100 Subject: [PATCH] Enforce escaping on all template content --- Build.PL | 1 + share/config.yml | 4 + share/views/admintask.tt | 16 +-- .../views/ajax/admintask/duplicatedevices.tt | 10 +- share/views/ajax/admintask/jobqueue.tt | 4 +- share/views/ajax/admintask/nodemonitor.tt | 8 +- share/views/ajax/admintask/orphaned.tt | 12 +- share/views/ajax/admintask/pseudodevice.tt | 10 +- share/views/ajax/admintask/slowdevices.tt | 2 +- share/views/ajax/admintask/timedoutdevices.tt | 2 +- share/views/ajax/admintask/topology.tt | 12 +- .../ajax/admintask/undiscoveredneighbors.tt | 6 +- share/views/ajax/admintask/userlog.tt | 2 +- share/views/ajax/admintask/users.tt | 8 +- share/views/ajax/datatabledefaults.tt | 4 +- share/views/ajax/device/addresses.tt | 6 +- share/views/ajax/device/details.tt | 44 +++---- share/views/ajax/device/modules.tt | 10 +- share/views/ajax/device/netmap.tt | 10 +- share/views/ajax/device/ports.tt | 34 +++--- share/views/ajax/device/vlans.tt | 6 +- share/views/ajax/report/apchanneldist.tt | 2 +- share/views/ajax/report/apclients.tt | 6 +- .../views/ajax/report/apradiochannelpower.tt | 6 +- share/views/ajax/report/deviceaddrnodns.tt | 4 +- share/views/ajax/report/devicebylocation.tt | 12 +- share/views/ajax/report/devicednsmismatch.tt | 4 +- share/views/ajax/report/devicepoestatus.tt | 32 ++--- share/views/ajax/report/duplexmismatch.tt | 6 +- share/views/ajax/report/halfduplex.tt | 4 +- .../views/ajax/report/inventorybymodelbyos.tt | 4 +- share/views/ajax/report/ipinventory.tt | 8 +- share/views/ajax/report/moduleinventory.tt | 20 ++-- share/views/ajax/report/netbios.tt | 10 +- share/views/ajax/report/nodemultiips.tt | 6 +- share/views/ajax/report/nodesdiscovered.tt | 6 +- share/views/ajax/report/nodevendor.tt | 12 +- share/views/ajax/report/portadmindown.tt | 4 +- share/views/ajax/report/portblocking.tt | 4 +- share/views/ajax/report/portmultinodes.tt | 4 +- share/views/ajax/report/portssid.tt | 6 +- share/views/ajax/report/portutilization.tt | 4 +- share/views/ajax/report/portvlanmismatch.tt | 10 +- share/views/ajax/report/subnets.tt | 2 +- share/views/ajax/report/vlaninventory.tt | 6 +- share/views/ajax/search/device.tt | 4 +- share/views/ajax/search/node_by_ip.tt | 46 +++---- share/views/ajax/search/node_by_mac.tt | 32 ++--- share/views/ajax/search/port.tt | 4 +- share/views/ajax/search/vlan.tt | 14 +-- share/views/ajax/statistics.tt | 2 +- share/views/device.tt | 18 +-- share/views/index.tt | 12 +- share/views/inventory.tt | 8 +- share/views/js/admintask.js | 2 +- share/views/js/common.js | 42 +++---- share/views/js/device.js | 2 +- share/views/js/report.js | 2 +- share/views/js/search.js | 2 +- share/views/layouts/main.tt | 112 +++++++++--------- share/views/password.tt | 2 +- share/views/report.tt | 20 ++-- share/views/search.tt | 16 +-- share/views/sidebar/device/netmap.tt | 6 +- share/views/sidebar/device/ports.tt | 8 +- share/views/sidebar/report/ipinventory.tt | 4 +- share/views/sidebar/report/moduleinventory.tt | 2 +- share/views/sidebar/report/netbios.tt | 2 +- share/views/sidebar/report/nodesdiscovered.tt | 2 +- share/views/sidebar/report/nodevendor.tt | 2 +- share/views/sidebar/report/portmultinodes.tt | 2 +- share/views/sidebar/report/portssid.tt | 2 +- share/views/sidebar/report/portutilization.tt | 6 +- share/views/sidebar/report/subnets.tt | 2 +- share/views/sidebar/search/device.tt | 2 +- share/views/sidebar/search/node.tt | 4 +- share/views/sidebar/search/port.tt | 2 +- 77 files changed, 392 insertions(+), 387 deletions(-) diff --git a/Build.PL b/Build.PL index 5097b335..7c05c67b 100644 --- a/Build.PL +++ b/Build.PL @@ -81,6 +81,7 @@ Module::Build->new( 'SQL::Abstract' => '1.85', 'SQL::Translator' => '0.11024', 'Template' => '2.24', + 'Template::AutoFilter' => '0', 'Template::Plugin::CSV' => '0.04', 'Template::Plugin::Number::Format' => '1.02', 'Term::ReadLine' => '0', diff --git a/share/config.yml b/share/config.yml index b9466243..8420d0b1 100644 --- a/share/config.yml +++ b/share/config.yml @@ -483,11 +483,15 @@ show_errors: false logger: 'console' engines: netdisco_template_toolkit: + subclass: 'Template::AutoFilter' encoding: 'utf8' start_tag: '[%' end_tag: '%]' + ANYCASE: 1 + ABSOLUTE: 1 PRE_CHOMP: 1 INCLUDE_PATH: [] + AUTO_FILTER: 'html_entity' layout: 'main' plugins: Swagger: diff --git a/share/views/admintask.tt b/share/views/admintask.tt index 23d8faaa..435e7fe6 100644 --- a/share/views/admintask.tt +++ b/share/views/admintask.tt @@ -9,14 +9,14 @@ rel="tooltip" data-placement="left" data-offset="5" data-title="Unpin Sidebar" data-container="body">
-