Bugzilla – Attachment 53971 Details for
Bug 17024
viewlog.pl is vulnerable to XSS attacks
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 17024: Fix XSS in tools/viewlog.pl
Bug-17024-Fix-XSS-in-toolsviewlogpl.patch (text/plain), 7.95 KB, created by
Chris Cormack
on 2016-08-03 21:05:38 UTC
(
hide
)
Description:
Bug 17024: Fix XSS in tools/viewlog.pl
Filename:
MIME Type:
Creator:
Chris Cormack
Created:
2016-08-03 21:05:38 UTC
Size:
7.95 KB
patch
obsolete
>From 824b480b53e5488b1747ca15866821861d17cd38 Mon Sep 17 00:00:00 2001 >From: Jonathan Druart <jonathan.druart@bugs.koha-community.org> >Date: Tue, 2 Aug 2016 14:32:46 +0100 >Subject: [PATCH] Bug 17024: Fix XSS in tools/viewlog.pl > >Test plan: > Hit /tools/viewlog.pl?do_it=1&modules=CATALOGUING&action=MODIFY&object=<script>alert("XSS")</script> > >=> Without this patch you will see the alert >=> With this patch, no more alert > >Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz> >--- > .../prog/en/includes/biblio-view-menu.inc | 20 ++++++++++---------- > .../intranet-tmpl/prog/en/modules/tools/viewlog.tt | 16 ++++++++-------- > 2 files changed, 18 insertions(+), 18 deletions(-) > >diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/biblio-view-menu.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/biblio-view-menu.inc >index 4258aa3..8a79cdf 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/includes/biblio-view-menu.inc >+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/biblio-view-menu.inc >@@ -3,36 +3,36 @@ > <div id="menu"> > <ul> > [% IF ( detailview ) %]<li class="active">[% ELSE %]<li>[% END %] >- <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblio_object_id %]">Normal</a></li> >+ <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblio_object_id | url %]">Normal</a></li> > > [% IF ( can_view_MARC ) %] > [% IF ( marcview ) %]<li class="active">[% ELSE %]<li>[% END %] >-<a href="/cgi-bin/koha/catalogue/MARCdetail.pl?biblionumber=[% biblio_object_id %]">MARC</a></li> >+<a href="/cgi-bin/koha/catalogue/MARCdetail.pl?biblionumber=[% biblio_object_id | url %]">MARC</a></li> > [% END %] > > [% IF ( can_view_labeledMARC ) %] > [% IF ( labeledmarcview ) %]<li class="active">[% ELSE %]<li>[% END %] >- <a href="/cgi-bin/koha/catalogue/labeledMARCdetail.pl?biblionumber=[% biblio_object_id %]">Labeled MARC</a></li> >+ <a href="/cgi-bin/koha/catalogue/labeledMARCdetail.pl?biblionumber=[% biblio_object_id | url %]">Labeled MARC</a></li> > [% END %] > > [% IF ( can_view_ISBD ) %] > [% IF ( isbdview ) %]<li class="active">[% ELSE %]<li>[% END %] >- <a href="/cgi-bin/koha/catalogue/ISBDdetail.pl?biblionumber=[% biblio_object_id %]">ISBD</a></li> >+ <a href="/cgi-bin/koha/catalogue/ISBDdetail.pl?biblionumber=[% biblio_object_id | url %]">ISBD</a></li> > [% END %] > > [% IF ( moredetailview ) %]<li class="active">[% ELSE %]<li>[% END %] >- <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=[% biblio_object_id %]">Items</a></li> >+ <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=[% biblio_object_id | url %]">Items</a></li> > [% IF ( CAN_user_reserveforothers ) %] >- [% IF ( holdsview ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/reserve/request.pl?biblionumber=[% biblio_object_id %]">Holds ([% Biblio.HoldsCount( biblio_object_id ) %])</a></li> >+ [% IF ( holdsview ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/reserve/request.pl?biblionumber=[% biblio_object_id | url %]">Holds ([% Biblio.HoldsCount( biblio_object_id ) %])</a></li> > [% END %] >- [% IF ( EasyAnalyticalRecords ) %][% IF ( analyze ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblio_object_id %]&analyze=1">Analytics</a></li>[% END %] >+ [% IF ( EasyAnalyticalRecords ) %][% IF ( analyze ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblio_object_id | url %]&analyze=1">Analytics</a></li>[% END %] > >- [% IF ( subscriptionsnumber ) %]<li><a href="/cgi-bin/koha/serials/serials-search.pl?searched=1&biblionumber=[% biblio_object_id %]">Subscription(s)</a></li>[% END %] >+ [% IF ( subscriptionsnumber ) %]<li><a href="/cgi-bin/koha/serials/serials-search.pl?searched=1&biblionumber=[% biblio_object_id | url %]">Subscription(s)</a></li>[% END %] > </ul> > <ul> > [% IF ( issuehistoryview ) %]<li class="active">[% ELSE %]<li>[% END %] >-<a href="/cgi-bin/koha/catalogue/issuehistory.pl?biblionumber=[% biblio_object_id %]" >Checkout history</a></li> >-[% IF ( CAN_user_tools_view_system_logs ) %][% IF ( logview ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/tools/viewlog.pl?do_it=1&modules=CATALOGUING&action=MODIFY&object=[% biblio_object_id %]">Modification log</a> </li>[% END %] >+<a href="/cgi-bin/koha/catalogue/issuehistory.pl?biblionumber=[% biblio_object_id | url %]" >Checkout history</a></li> >+[% IF ( CAN_user_tools_view_system_logs ) %][% IF ( logview ) %]<li class="active">[% ELSE %]<li>[% END %]<a href="/cgi-bin/koha/tools/viewlog.pl?do_it=1&modules=CATALOGUING&action=MODIFY&object=[% biblio_object_id | url %]">Modification log</a> </li>[% END %] > </ul> > </div> > >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/viewlog.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/viewlog.tt >index d5f616b..472d87c 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/viewlog.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/viewlog.tt >@@ -69,12 +69,12 @@ > [% IF ( do_it ) %] > <input type="hidden" name="do_it" value="[% do_it %]" /> > [% END %] >- <input type="hidden" name="src" value="[% src %]" /> >+ <input type="hidden" name="src" value="[% src | html %]" /> > <fieldset class="rows"> > <ol> > <li> > <label for="user">Librarian:</label> >- <input type="text" name="user" id="user" value="[% user %]" /> >+ <input type="text" name="user" id="user" value="[% user | html %]" /> > </li> > <li> > <label for="modules">Modules:</label> >@@ -113,18 +113,18 @@ > </li> > <li> > <label for="object">Object: </label> >- <input type="text" id="object" name="object" value="[% object %]" /> >+ <input type="text" id="object" name="object" value="[% object | html %]" /> > </li> > <li> > <label for="info">Info:</label> >- <input type="text" id="info" name="info" value="[% info %]" /> >+ <input type="text" id="info" name="info" value="[% info | html %]" /> > </li> > <li> >- <label for="from"> Display from: </label> <input type="text" size="10" id="from" name="from" value="[% datefrom %]" class="datepickerfrom" /> >+ <label for="from"> Display from: </label> <input type="text" size="10" id="from" name="from" value="[% datefrom | html %]" class="datepickerfrom" /> > <div class="hint">[% INCLUDE 'date-format.inc' %]</div> > </li> > <li> >- <label for="to">Display to: </label> <input size="10" id="to" name="to" type="text" value="[% dateto %]" class="datepickerto" /> >+ <label for="to">Display to: </label> <input size="10" id="to" name="to" type="text" value="[% dateto | html %]" class="datepickerto" /> > <div class="hint">[% INCLUDE 'date-format.inc' %]</div> > </li> > </ol> >@@ -218,10 +218,10 @@ > <div class="dialog alert"> > No log found > [% IF ( CATALOGUING ) %] >- for <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% object %]">Bibliographic record [% object %]</a> >+ for <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% object | url %]">Bibliographic record [% object | html %]</a> > [% END %] > [% IF ( MEMBERS ) %] >- for <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% object %]">[% INCLUDE 'patron-title.inc' %]</a> >+ for <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% object | url %]">[% INCLUDE 'patron-title.inc' %]</a> > [% END %] > . > </div> >-- >2.8.1
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 17024
:
53910
|
53971
|
53973