Skip to content

Releases: cure53/DOMPurify

DOMPurify 3.4.11

17 Jun 10:17
3.4.11
0cae518

Choose a tag to compare

  • Fixed an issue with a leaky config for hooks via setConfig, thanks @trace37labs
  • Bumped vulnerable development dependencies to arrive at plain 0 with npm audit
  • Updated the osv-scanner suppression list as no vulnerable dependencies are left for now
  • Updated up the linting tool-chain and removed now-redundant lint directives
  • Updated the documentation is several spots, README, wiki, etc.
  • Bumped several dependencies where possible

DOMPurify 3.4.10

12 Jun 12:34
3.4.10
6ee5716

Choose a tag to compare

  • Refactored codebase for clarity: extracted the public type declarations into types.ts
  • Decomposed the three largest sanitizer functions into focused helpers
  • Removed duplicated defaults and dead branches, consolidated SAFE_FOR_TEMPLATES scrubbing into single shared path
  • Improved per-node performance by hoisting the mXSS probe regexes and testing textContent before innerHTML
  • Added a deterministic micro-benchmark harness (npm run bench) with a --compare mode
  • Reduced CI cost by running the full three-engine browser suite once per PR
  • Refreshed the demos/ folder so every demo runs again, and added a SVG-via-<img> demo
  • Documented the bench and test:happydom scripts in the README
  • Completed the Attack Classes & Bypass History wiki page
  • Bumped several dependencies where possible

DOMPurify 3.4.9

10 Jun 08:41
3.4.9
5210247

Choose a tag to compare

  • Further improved the handling of Trusted Types config options, thanks @offset
  • Further improved the handling of IN_PLACE sanitization, thanks @mozfreddyb
  • Added more test coverage for IN_PLACE and Trusted Types related usage
  • Bumped several dependencies where possible
  • Updated README and wiki with more accurate documentation & attack samples

DOMPurify 3.4.8

03 Jun 12:04
3.4.8
bcdd828

Choose a tag to compare

  • Cleaned up the repository root, renamed some and removed unneeded files
  • Fixed an issue with handling of Trusted Types policies, thanks @fulstadev
  • Fixed the node iterator for better template scrubbing, thanks @IamLeandrooooo
  • Included formerly missing LICENSE-MPL in published npm package, thanks @asamuzaK
  • Bumped several dependencies where possible

DOMPurify 3.4.7

27 May 11:36
3.4.7
ca30f07

Choose a tag to compare

  • Hardened the handling of Shadow Roots when using IN_PLACE, thanks @GameZoneHacker
  • Removed a problem leading to permanent hook pollution, thanks @offset
  • Refactored the test suite and expanded test coverage significantly

DOMPurify 3.4.6

26 May 13:04
3.4.6
bb7739e

Choose a tag to compare

  • Fixed several issues with DOM Clobbering in IN_PLACE mode, thanks @offset & @Bankde
  • Hardened the checks for cross-realm IN_PLACE and Shadow DOM sanitization, thanks @offset & @Bankde
  • Added more test coverage for IN_PLACE and general DOM Clobbering attacks
  • Bumped several dependencies where possible

DOMPurify 3.4.5

18 May 07:41
3.4.5
011b0c7

Choose a tag to compare

  • Fixed a bypass caused by the new HTML element selectedcontent added in 3.4.4, thanks @KabirAcharya

Note that this is a security release for an issue introduced in 3.4.4 and should be upgraded to immediately.

DOMPurify 3.4.4

17 May 10:35
3.4.4
5817ad9

Choose a tag to compare

DOMPurify 3.4.4 Pre-release
Pre-release
  • Added the selectedcontent element to default allow-list, thanks @lukewarlow
  • Added the command and commandfor attributes to default allowed-list, thanks @lukewarlow
  • Added better template scrubbing for IN_PLACE operations, thanks @DEMON1A
  • Added stronger checks for cross-realm windows, thanks @DEMON1A & @fg0x0
  • Updated demo website and made sure it uses the latest from main
  • Updated existing workflows, fuzzer, dependabot, etc., added more tests
  • Bumped several dependencies where possible

🚨 This release had been flagged as deprecated, please use DOMPurify 3.4.5 instead 🚨

DOMPurify 3.4.3

13 May 11:07
3.4.3
520edb0

Choose a tag to compare

  • Fixed an issue with handling of nested Shadow DOM trees, thanks @fishjojo1
  • Fixed the template regexes to be more robust against ReDoS attacks, thanks @aleung27
  • Updated the node iteration code to catch more Shadow DOM related issues
  • Updated Playwright and added Node 26 to test matrix
  • Updated existing workflows, fuzzer, release signing, etc., added more tests
  • Bumped several dependencies where possible

DOMPurify 3.4.2

30 Apr 13:10
3.4.2
6f67fd3

Choose a tag to compare

  • Fixed an issue with URI validation on attributes allowed via ADD_ATTR callback, thanks @nelstrom
  • Fixed an issue with source maps referring to non-existing files, thanks @cmdcolin
  • Updated existing workflows, fuzzer, release signing, etc., added more tests
  • Bumped several dependencies where possible