Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dependency marked to v4 [SECURITY] #684

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Mar 17, 2022

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
marked (source) 1.1.1 -> 4.0.10 age adoption passing confidence

GitHub Vulnerability Alerts

CVE-2021-21306

Impact

What kind of vulnerability is it? Who is impacted?

Regular expression Denial of Service

A Denial of Service attack can affect anyone who runs user generated code through marked.

Patches

Has the problem been patched? What versions should users upgrade to?

patched in v2.0.0

Workarounds

Is there a way for users to fix or remediate the vulnerability without upgrading?

None.

References

Are there any links users can visit to find out more?

https://github.com/markedjs/marked/issues/1927
https://owasp.org/www-community/attacks/Regular_expression_Denial_of_Service_-_ReDoS

For more information

If you have any questions or comments about this advisory:

CVE-2022-21680

Impact

What kind of vulnerability is it?

Denial of service.

The regular expression block.def may cause catastrophic backtracking against some strings.
PoC is the following.

import * as marked from "marked";

marked.parse(`[x]:${' '.repeat(1500)}x ${' '.repeat(1500)} x`);

Who is impacted?

Anyone who runs untrusted markdown through marked and does not use a worker with a time limit.

Patches

Has the problem been patched?

Yes

What versions should users upgrade to?

4.0.10

Workarounds

Is there a way for users to fix or remediate the vulnerability without upgrading?

Do not run untrusted markdown through marked or run marked on a worker thread and set a reasonable time limit to prevent draining resources.

References

Are there any links users can visit to find out more?

For more information

If you have any questions or comments about this advisory:

CVE-2022-21681

Impact

What kind of vulnerability is it?

Denial of service.

The regular expression inline.reflinkSearch may cause catastrophic backtracking against some strings.
PoC is the following.

import * as marked from 'marked';

console.log(marked.parse(`[x]: x

\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](\\[\\](`));

Who is impacted?

Anyone who runs untrusted markdown through marked and does not use a worker with a time limit.

Patches

Has the problem been patched?

Yes

What versions should users upgrade to?

4.0.10

Workarounds

Is there a way for users to fix or remediate the vulnerability without upgrading?

Do not run untrusted markdown through marked or run marked on a worker thread and set a reasonable time limit to prevent draining resources.

References

Are there any links users can visit to find out more?

For more information

If you have any questions or comments about this advisory:


Release Notes

markedjs/marked

v4.0.10

Compare Source

Bug Fixes
  • security: fix redos vulnerabilities (8f80657)

v4.0.9

Compare Source

Bug Fixes

v4.0.8

Compare Source

Bug Fixes

v4.0.7

Compare Source

Bug Fixes

v4.0.6

Compare Source

Bug Fixes

v4.0.5

Compare Source

Bug Fixes

v4.0.4

Compare Source

Bug Fixes

v4.0.3

Compare Source

Bug Fixes

v4.0.2

Compare Source

Bug Fixes

v4.0.1

Compare Source

Bug Fixes

v4.0.0

Compare Source

Bug Fixes
BREAKING CHANGES
  • Default export removed. Use import { marked } from 'marked' or const { marked } = require('marked') instead.
  • /lib/marked.js removed. Use /marked.min.js in script tag instead.
  • When using marked in a script tag use marked.parse(...) instead of marked(...)

v3.0.8

Compare Source

Bug Fixes

v3.0.7

Compare Source

Bug Fixes
  • use named exports only for ESM build (#​2226)

v3.0.6

Compare Source

Bug Fixes

v3.0.5

Compare Source

Bug Fixes

v3.0.4

Compare Source

Bug Fixes

v3.0.3

Compare Source

Bug Fixes

v3.0.2

Compare Source

Bug Fixes

v3.0.1

Compare Source

Bug Fixes

v3.0.0

Compare Source

Bug Fixes
BREAKING CHANGES
  • Drop support for node 10.
  • Add module field to package.json

  • Tokenizers will create their own tokens with this.lexer.inline(text, tokens). The inline function will queue the token creation until after all block tokens are created.
  • Extensions tokenizer this object will include the lexer as a property. this.inlineTokens becomes this.lexer.inline.
  • Extensions renderer this object will include the parser as a property. this.parseInline becomes this.parser.parseInline.
  • tag and inlineText tokenizer function signatures have changed.

  • nptable tokenizer is removed and merged with table tokenizer.
  • table tokens header property changed to contain an array of objects for each header cell with text and tokens properties.
  • table tokens cells property changed to rows and is an array of rows where each row contains an array of objects for each cell with text and tokens properties.

v2 table token:

{
  "type": "table",
  "align": [null, null],
  "raw": "| a | b |\n|---|---|\n| 1 | 2 |\n",
  "header": ["a", "b"],
  "cells": [["1", "2"]],
  "tokens": {
    "header": [
      [{ "type": "text", "raw": "a", "text": "a" }],
      [{ "type": "text", "raw": "b", "text": "b" }]
    ],
    "cells": [[
      [{ "type": "text", "raw": "1", "text": "1" }],
      [{ "type": "text", "raw": "2", "text": "2" }]
    ]]
  }
}

v3 table token:

{
  "type": "table",
  "align": [null, null],
  "raw": "| a | b |\n|---|---|\n| 1 | 2 |\n",
  "header": [
    {
      "text": "a",
      "tokens": [{ "type": "text", "raw": "a", "text": "a" }]
    },
    {
      "text": "b",
      "tokens": [{ "type": "text", "raw": "b", "text": "b" }]
    }
  ],
  "rows": [
    {
      "text": "1",
      "tokens": [{ "type": "text", "raw": "1", "text": "1" }]
    },
    {
      "text": "2",
      "tokens": [{ "type": "text", "raw": "2", "text": "2" }]
    }
  ]
}

v2.1.3

Compare Source

Bug Fixes

v2.1.2

Compare Source

Bug Fixes

v2.1.1

Compare Source

Bug Fixes

v2.1.0

Compare Source

Features

v2.0.7

Compare Source

Bug Fixes

v2.0.6

Compare Source

Bug Fixes

v2.0.5

Compare Source

Bug Fixes

v2.0.4

Compare Source

Bug Fixes

v2.0.3

Compare Source

Bug Fixes

v2.0.2

Compare Source

Bug Fixes

v2.0.1

Compare Source

Bug Fixes

v2.0.0

Compare Source

Bug Fixes
BREAKING CHANGES
  • em and strong tokenizers have been merged into one emStrong tokenizer.
  • code and text tokenizers do not get passed all tokens as a second parameter.
  • No longer supporting IE 11. IE 11 may still work but we are not committed to making sure it works with every update. We still provide an es5 version in lib/marked.js but some pollyfills may be needed for IE 11 in the future.

v1.2.9

Compare Source

Bug Fixes

v1.2.8

Compare Source

Bug Fixes

v1.2.7

Compare Source

Bug Fixes

v1.2.6

Compare Source

Bug Fixes
  • fix atx heading and make regex safe (#​1853) (70ee29c)
    possible breaking change: When using the block.heading rule the text provided in capture group 2 will not be trimmed of whitespace.
  • fix link with angle brackets around href (#​1851) (656c3e4)

v1.2.5

Compare Source

Bug Fixes

v1.2.4

Compare Source

Bug Fixes

Possible Breaking Change: When using the inline.del rule the text is provided in capture group 2 instead of 1.

v1.2.3

Compare Source

Bug Fixes

v1.2.2

Compare Source

Bug Fixes

v1.2.1

Compare Source

re-release of v 1.1.2 since semantic release picked up the wrong version

v1.2.0: 1.2.0

Compare Source

Features

Fixes

Dependencies

Documentation

  • Add api dingus for babelmark #​1742
  • Update docs to use static build step and clean URLs via Vercel #​1749

v1.1.2

Compare Source

Bug Fixes

Configuration

📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot added the dependency-update A dependency was updated label Mar 17, 2022
@renovate renovate bot force-pushed the renovate/npm-marked-vulnerability branch from 266d3bf to 082a495 Compare March 17, 2022 21:11
@renovate renovate bot changed the title Update dependency marked to v2 [SECURITY] Update dependency marked to v4 [SECURITY] Mar 17, 2022
@renovate renovate bot force-pushed the renovate/npm-marked-vulnerability branch from 082a495 to 8e98c43 Compare May 20, 2022 22:07
@renovate renovate bot changed the title Update dependency marked to v4 [SECURITY] Update dependency marked to v4 [SECURITY] - autoclosed Jan 12, 2023
@renovate renovate bot closed this Jan 12, 2023
@renovate renovate bot deleted the renovate/npm-marked-vulnerability branch January 12, 2023 03:51
@renovate renovate bot changed the title Update dependency marked to v4 [SECURITY] - autoclosed Update dependency marked to v4 [SECURITY] Jan 12, 2023
@renovate renovate bot reopened this Jan 12, 2023
@renovate renovate bot restored the renovate/npm-marked-vulnerability branch January 12, 2023 07:44
@renovate renovate bot changed the title Update dependency marked to v4 [SECURITY] Update dependency marked to v4 [SECURITY] - autoclosed Jan 15, 2023
@renovate renovate bot closed this Jan 15, 2023
@renovate renovate bot deleted the renovate/npm-marked-vulnerability branch January 15, 2023 02:57
@renovate renovate bot changed the title Update dependency marked to v4 [SECURITY] - autoclosed Update dependency marked to v4 [SECURITY] Jan 15, 2023
@renovate renovate bot reopened this Jan 15, 2023
@renovate renovate bot restored the renovate/npm-marked-vulnerability branch January 15, 2023 05:53
@renovate renovate bot changed the title Update dependency marked to v4 [SECURITY] Update dependency marked to v4 [SECURITY] - autoclosed Feb 2, 2023
@renovate renovate bot closed this Feb 2, 2023
@renovate renovate bot deleted the renovate/npm-marked-vulnerability branch February 2, 2023 03:43
@renovate renovate bot changed the title Update dependency marked to v4 [SECURITY] - autoclosed Update dependency marked to v4 [SECURITY] Feb 2, 2023
@renovate renovate bot reopened this Feb 2, 2023
@renovate renovate bot restored the renovate/npm-marked-vulnerability branch February 2, 2023 07:43
@renovate
Copy link
Contributor Author

renovate bot commented Mar 24, 2023

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

⚠️ Warning: custom changes will be lost.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependency-update A dependency was updated
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant