You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Lars Krapf (JIRA)" <ji...@apache.org> on 2018/07/12 13:47:00 UTC

[jira] [Created] (SLING-7777) XSSFilter is rejecting URLs containing only queries or fragments

Lars Krapf created SLING-7777:
---------------------------------

             Summary: XSSFilter is rejecting URLs containing only queries or fragments
                 Key: SLING-7777
                 URL: https://issues.apache.org/jira/browse/SLING-7777
             Project: Sling
          Issue Type: Bug
          Components: XSS Protection API
    Affects Versions: XSS Protection API 2.0.10
            Reporter: Lars Krapf
         Attachments: sling_xssfilter_patch.txt

The XSSFilter is erroneously rejecting URLs that consist only of queries, (potentially empty) fragments or both, e.g. "#", "#test", "?foo=bar" etc. 

Even though the RELATIVE_PART regexp contains an PATH_EMPTY group, it is explicitly matching the *entire* string, so will fail if the QUERY or FRAGMENT groups match.

A potential solution (see attached patch and tests) might be to remove the PATH_EMPTY group from the RELATIVE_PART, and make the entire RELATIVE_PART optional by adding ? to the group in RELATIVE_REF. This will still match completely empty URLs. 

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)