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

Andriy Redko resolved CXF-9141.
-------------------------------
    Resolution: Fixed

> MaskSensitiveHelperMasking malfunctions for empty tags
> ------------------------------------------------------
>
>                 Key: CXF-9141
>                 URL: https://issues.apache.org/jira/browse/CXF-9141
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 4.1.2
>            Reporter: Benedikt Kaiser
>            Assignee: Freeman Yue Fang
>            Priority: Minor
>             Fix For: 4.1.3, 4.0.9, 3.6.8
>
>
> We encounter a bug where {{org.apache.cxf.ext.logging.MaskSensitiveHelper}} 
> fails to match text correctly and scrambles up the message. It happens when 
> masking an element that occurs multiple times in the message string. In cases 
> where the first occurance is a self-closing tag e.g. {{<a/>}} and a later 
> occurance contains a value {{{{<a>value</a>}}}} the regex will match 
> everything from the first occurence until the second and replace it. This of 
> course leads to a invalid XML with all the data in between missing.
> For example:
> {code:java}
> <one>
>   <password/>
> </one>
> <two>
>   <password>Value</password>
> </two>{code}
> is turned into
> {code:java}
> <one>
>   <password/>XXX</password>
> </two>{code}
>  
>  
> h4. Proposal
> I opened a pull request: [https://github.com/apache/cxf/pull/2425]
>  
> The proposed solution does not match self-closing tags, by adding {{/}} to 
> the list of excluded characters in the opening tag. Ignoring self-closing 
> tags is acceptable as they have no content to mask anyways and this way the 
> regex match does not run into the described issue.



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

Reply via email to