Skip to content

[Snyk] Security upgrade jsrsasign from 8.0.24 to 11.1.1#29

Open
revan-zhang wants to merge 1 commit intomasterfrom
snyk-fix-e211ee49e08a6b7fa6e56c3f5117e6f6
Open

[Snyk] Security upgrade jsrsasign from 8.0.24 to 11.1.1#29
revan-zhang wants to merge 1 commit intomasterfrom
snyk-fix-e211ee49e08a6b7fa6e56c3f5117e6f6

Conversation

@revan-zhang
Copy link
Copy Markdown

@revan-zhang revan-zhang commented Mar 28, 2026

snyk-top-banner

Snyk has created this PR to fix 6 vulnerabilities in the npm dependencies of this project.

Snyk changed the following file(s):

  • libs/combined/package.json

Vulnerabilities that will be fixed with an upgrade:

Issue Score
critical severity Missing Cryptographic Step
SNYK-JS-JSRSASIGN-15370941
  745  
critical severity Improper Verification of Cryptographic Signature
SNYK-JS-JSRSASIGN-15370940
  730  
high severity Infinite loop
SNYK-JS-JSRSASIGN-15370938
  710  
high severity Incorrect Conversion between Numeric Types
SNYK-JS-JSRSASIGN-15371175
  710  
critical severity Incomplete Comparison with Missing Factors
SNYK-JS-JSRSASIGN-15370939
  665  
medium severity Division by zero
SNYK-JS-JSRSASIGN-15371176
  530  

Important

  • Check the changes in this PR to ensure they won't cause issues with your project.
  • Max score is 1000. Note that the real score may have changed since the PR was raised.
  • This PR was automatically created by Snyk using the credentials of a real user.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.

For more information:
🧐 View latest project report
📜 Customise PR templates
🛠 Adjust project settings
📚 Read about Snyk's upgrade logic


Learn how to fix vulnerabilities with free interactive lessons:

🦉 Learn about vulnerability in an interactive lesson of Snyk Learn.


Open with Devin

Note

Medium Risk
Upgrades a cryptography dependency across a major version, which could introduce subtle behavioral/compatibility changes in any signing/verification usage despite being a targeted dependency-only change.

Overview
Updates libs/combined/package.json to upgrade jsrsasign from ^8.x to ^11.1.1 as a security remediation, leaving the rest of the dependency set unchanged.

Written by Cursor Bugbot for commit 2a48161. This will update automatically on new commits. Configure here.

@revan-zhang
Copy link
Copy Markdown
Author

revan-zhang commented Mar 28, 2026

Snyk checks have passed. No issues have been found so far.

Status Scan Engine Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues
Licenses 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

Copy link
Copy Markdown

@devin-ai-integration devin-ai-integration bot left a comment

Choose a reason for hiding this comment

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

Devin Review found 1 potential issue.

View 2 additional findings in Devin Review.

Open in Devin Review

"handshake-util": "1.2.0",
"javascript-biginteger": "0.9.2",
"jsrsasign": "^8.0.19",
"jsrsasign": "^11.1.1",
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🔴 package-lock.json not updated to match new jsrsasign version range

The package.json bumps jsrsasign from ^8.0.19 to ^11.1.1, but libs/combined/package-lock.json still pins jsrsasign to version 8.0.24 (libs/combined/package-lock.json:5061-5064). Version 8.0.24 does not satisfy the new ^11.1.1 range (different major version). This means npm ci will fail due to the mismatch between package.json and package-lock.json, and the security fix this PR intends to deliver will not actually be installed in reproducible builds.

Prompt for agents
Run `npm install` (or `npm i`) inside the libs/combined directory to regenerate the package-lock.json file so that it resolves jsrsasign to a version satisfying ^11.1.1. Then commit the updated libs/combined/package-lock.json alongside the package.json change. Without this, `npm ci` will fail and the intended version upgrade will not take effect.
Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Copy link
Copy Markdown

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

"handshake-util": "1.2.0",
"javascript-biginteger": "0.9.2",
"jsrsasign": "^8.0.19",
"jsrsasign": "^11.1.1",
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Lock file not updated, security fix ineffective

High Severity

The package-lock.json was not updated alongside this package.json change. The lockfile still pins jsrsasign at 8.0.24 (the vulnerable version), so npm ci will either fail due to the mismatch or continue installing the vulnerable version. Additionally, jsrsasign is not directly imported in index.js — it's only consumed as a transitive dependency of elastos-wallet-js, which requires ^8.0.12. Since ^11.1.1 doesn't satisfy ^8.0.12, npm will still install a vulnerable 8.x copy nested under elastos-wallet-js, meaning the security fix does not actually protect the code that uses the library.

Fix in Cursor Fix in Web

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.

2 participants