florence-social / mastodon-fork

Florence's fork of Mastodon
GNU Affero General Public License v3.0
137 stars 15 forks source link

Bump sanitize from 5.0.0 to 5.2.1 #198

Open dependabot[bot] opened 4 years ago

dependabot[bot] commented 4 years ago

Bumps sanitize from 5.0.0 to 5.2.1.

Release notes

Sourced from sanitize's releases.

v5.2.1

Bug Fixes

  • Fixed an HTML sanitization bypass that could allow XSS. This issue affects Sanitize versions 3.0.0 through 5.2.0.

    When HTML was sanitized using the "relaxed" config or a custom config that allows certain elements, some content in a <math> or <svg> element may not have beeen sanitized correctly even if math and svg were not in the allowlist. This could allow carefully crafted input to sneak arbitrary HTML through Sanitize, potentially enabling an XSS (cross-site scripting) attack.

    You are likely to be vulnerable to this issue if you use Sanitize's relaxed config or a custom config that allows one or more of the following HTML elements:

    • iframe
    • math
    • noembed
    • noframes
    • noscript
    • plaintext
    • script
    • style
    • svg
    • xmp

    See the security advisory for more details, including a workaround if you're not able to upgrade: GHSA-p4x4-rw2p-8j8m

    Many thanks to Michał Bentkowski of Securitum for reporting this issue and helping to verify the fix.

v5.2.0

Changes

  • The term "whitelist" has been replaced with "allowlist" throughout Sanitize's source and documentation.

    While the etymology of "whitelist" may not be explicitly racist in origin or intent, there are inherent racial connotations in the implication that white is good and black (as in "blacklist") is not.

    This is a change I should have made long ago, and I apologize for not making it sooner.

  • In transformer input, the :is_whitelisted and :node_whitelist keys are now deprecated. New :is_allowlisted and :node_allowlist keys have been added. The old keys will continue to work in order to avoid breaking existing code, but they are no longer documented and may be removed in a future semver major release.

v5.1.0

Features

  • Added a :parser_options config hash, which makes it possible to pass custom parsing options to Nokogumbo. [@austin-wang - #194]194

Bug Fixes

  • Non-characters and non-whitespace control characters are now stripped from HTML input before parsing to comply with the HTML Standard's preprocessing guidelines. Prior to this Sanitize had adhered to older W3C guidelines that have since been withdrawn. #179179
... (truncated)
Changelog

Sourced from sanitize's changelog.

5.2.1 (2020-06-16)

Bug Fixes

  • Fixed an HTML sanitization bypass that could allow XSS. This issue affects Sanitize versions 3.0.0 through 5.2.0.

    When HTML was sanitized using the "relaxed" config or a custom config that allows certain elements, some content in a <math> or <svg> element may not have beeen sanitized correctly even if math and svg were not in the allowlist. This could allow carefully crafted input to sneak arbitrary HTML through Sanitize, potentially enabling an XSS (cross-site scripting) attack.

    You are likely to be vulnerable to this issue if you use Sanitize's relaxed config or a custom config that allows one or more of the following HTML elements:

    • iframe
    • math
    • noembed
    • noframes
    • noscript
    • plaintext
    • script
    • style
    • svg
    • xmp

    See the security advisory for more details, including a workaround if you're not able to upgrade: GHSA-p4x4-rw2p-8j8m

    Many thanks to Michał Bentkowski of Securitum for reporting this issue and helping to verify the fix.

5.2.0 (2020-06-06)

Changes

  • The term "whitelist" has been replaced with "allowlist" throughout Sanitize's source and documentation.

    While the etymology of "whitelist" may not be explicitly racist in origin or intent, there are inherent racial connotations in the implication that white is good and black (as in "blacklist") is not.

    This is a change I should have made long ago, and I apologize for not making it sooner.

... (truncated)
Commits
  • 773d1af Release 5.2.1
  • a11498d Fix sanitization bypass in HTML foreign content
  • 1d0d688 Update the "Supported Versions" policy to be more realistic
  • 4166da2 Release 5.2.0
  • 3c78c7e Add Ruby 2.7.x to the test matrix
  • 78fbcc3 Stop using the term "whitelist"
  • c90bcb1 Merge pull request #199 from flavorjones/flavorjones-skip-nokogiri-patch-tests
  • 21da9b6 Avoid testing nokogiri's patch when using system libxml2
  • 245c705 Release 5.1.0
  • 0d4158f Strip control characters and non-characters before parsing
  • Additional commits viewable in compare view


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/florence-social/mastodon-fork/network/alerts).