[ 
https://issues.apache.org/jira/browse/JCRVLT-861?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Konrad Windszus closed JCRVLT-861.
----------------------------------

> Reject platform names containing traversal characters (.., or /)
> ----------------------------------------------------------------
>
>                 Key: JCRVLT-861
>                 URL: https://issues.apache.org/jira/browse/JCRVLT-861
>             Project: Jackrabbit FileVault
>          Issue Type: Bug
>            Reporter: Konrad Windszus
>            Assignee: Julian Reschke
>            Priority: Major
>             Fix For: 4.3.0
>
>
> The platform→repository name decoder is trusted to return a single path 
> segment, but nothing
> enforces it: %2f reintroduces / (multi-segment injection into 
> session.getNode/addNode
> relPaths), %2e%2e or a literal .. reintroduces dot-segments (normalized away 
> by the
> repository after every string-level check has already passed). The encoder
> (getPlatformName) escapes / and %, so no legitimately exported package ever 
> contains a
> platform name that decodes to one of these — the asymmetry is the attack 
> surface. Every
> consumer (workspace-filter containment, getImportMode, /etc/packages 
> subpackage-prefix
> detection, DocViewParser.getDocumentViewXmlRootNodePath on the validation 
> side) reasons over
> the unresolved string while the repository writes to the resolved path.
> https://github.com/apache/jackrabbit-filevault-private/issues/8



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to