Skip to content

fix(security): disclose ReDoS risk for dataset filter reg#160

Merged
Ovilia merged 2 commits intomasterfrom
fix-security
Apr 10, 2026
Merged

fix(security): disclose ReDoS risk for dataset filter reg#160
Ovilia merged 2 commits intomasterfrom
fix-security

Conversation

@Ovilia
Copy link
Copy Markdown
Contributor

@Ovilia Ovilia commented Mar 3, 2026

Background
We received a user-reported security finding about a potential ReDoS (Regular Expression Denial of Service) risk in the dataset filter transform when the reg option is driven by untrusted input.

Issue
The filter’s config.reg compiles user-supplied strings into RegExp and runs them on every row without checks on pattern complexity or length, which can lead to catastrophic backtracking and DoS (browser tab freeze or SSR blocking).

Decision
We are documenting this in the handbook instead of changing runtime behavior: the Security Guidelines (zh & en) now describe the risk and recommend mitigations (e.g. validating or restricting reg when config can be untrusted).

Copilot AI review requested due to automatic review settings March 3, 2026 02:14
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the ECharts security handbook (Chinese + English) to explicitly disclose a potential ReDoS risk when dataset.transform uses the filter transform with config.reg sourced from untrusted input, and provides mitigation guidance for callers.

Changes:

  • Add a new checklist entry warning about ReDoS risk for dataset.transform filter config.reg.
  • Add a dedicated section describing the risk scenario and recommended mitigations (zh/en).

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
contents/zh/best-practices/security.md Adds ReDoS disclosure + mitigations section for dataset filter config.reg (Chinese).
contents/en/best-practices/security.md Adds ReDoS disclosure + mitigations section for dataset filter config.reg (English).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread contents/en/best-practices/security.md Outdated
Comment thread contents/zh/best-practices/security.md Outdated
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
Member

@raboof raboof left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@Ovilia Ovilia merged commit 192f111 into master Apr 10, 2026
@Ovilia Ovilia deleted the fix-security branch April 10, 2026 01:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants