This is a followup to a reported security issue. Due to inability to find a working exploit we are allowed to release it as a public bugfix.

Problem/Motivation

CKEditor 5 Premium Features alters a XSS filter to avoid removing colons in attributes that store the suggestion and comment ids, however it may also prevent removing a colon in href attribute in case link element contains suggestion-start, suggestion-end, comment-start or comment-end attribute.
Example code <a suggestion-start name=foo href="javascript:alert()">Foo</a> will result in preserving a javascript in the content, however CKEditor 5 will block its execution itself. We have also checked other WYSIWYG editor available in contrib space - it also does block such script execution.

Proposed resolution

We have prepared a patch that adds skipping our XSS filter alteration if Comments or Track Changes plugins are not active or the used editor is not CKEditor 5.
Additionally regular expressions are changed to better match exactly the attributes that we need to preserve the ids.

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

salmonek created an issue. See original summary.

salmonek’s picture

Assigned: salmonek » Unassigned
Status: Active » Needs review
salmonek’s picture

Status: Needs review » Reviewed & tested by the community

Previously accepteb by DST, plus our QA team tested for regressions by our QA team.

salmonek’s picture

Status: Reviewed & tested by the community » Fixed

Released in 1.8.3

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.