Skip to content

[Snyk] Upgrade react-scripts from 4.0.1 to 4.0.3#51

Open
nejidevelops wants to merge 1 commit intomasterfrom
snyk-upgrade-fbf3f6311d10a2d960f0b9f979c668ae
Open

[Snyk] Upgrade react-scripts from 4.0.1 to 4.0.3#51
nejidevelops wants to merge 1 commit intomasterfrom
snyk-upgrade-fbf3f6311d10a2d960f0b9f979c668ae

Conversation

@nejidevelops
Copy link
Copy Markdown
Owner

snyk-top-banner

Snyk has created this PR to upgrade react-scripts from 4.0.1 to 4.0.3.

ℹ️ Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.


  • The recommended version is 2 versions ahead of your current version.

  • The recommended version was released 4 years ago.

Issues fixed by the recommended upgrade:

Issue Score Exploit Maturity
high severity Improper Input Validation
SNYK-JS-URLPARSE-2407770
265 Proof of Concept
high severity Remote Memory Exposure
SNYK-JS-DNSPACKET-1293563
265 No Known Exploit
high severity Improper Handling of Extra Parameters
SNYK-JS-FOLLOWREDIRECTS-6141137
265 Proof of Concept
high severity Prototype Pollution
SNYK-JS-ASYNC-2441827
265 Proof of Concept
high severity Prototype Pollution
SNYK-JS-IMMER-1019369
265 Proof of Concept
high severity Server-side Request Forgery (SSRF)
SNYK-JS-IP-6240864
265 Proof of Concept
high severity Asymmetric Resource Consumption (Amplification)
SNYK-JS-BODYPARSER-7926860
265 No Known Exploit
medium severity Improper Input Validation
SNYK-JS-URLPARSE-1078283
265 No Known Exploit
medium severity Open Redirect
SNYK-JS-URLPARSE-1533425
265 Proof of Concept
medium severity Access Restriction Bypass
SNYK-JS-URLPARSE-2401205
265 Proof of Concept
medium severity Authorization Bypass
SNYK-JS-URLPARSE-2407759
265 Proof of Concept
medium severity Authorization Bypass Through User-Controlled Key
SNYK-JS-URLPARSE-2412697
265 Proof of Concept
medium severity Information Exposure
SNYK-JS-EVENTSOURCE-2823375
265 Proof of Concept
medium severity Open Redirect
SNYK-JS-EXPRESS-6474509
265 No Known Exploit
medium severity Cross-site Scripting
SNYK-JS-EXPRESS-7926867
265 No Known Exploit
medium severity Information Exposure
SNYK-JS-FOLLOWREDIRECTS-2332181
265 Proof of Concept
medium severity Information Exposure
SNYK-JS-FOLLOWREDIRECTS-6444610
265 Proof of Concept
medium severity Regular Expression Denial of Service (ReDoS)
SNYK-JS-PATHTOREGEXP-7925106
265 Proof of Concept
medium severity Regular Expression Denial of Service (ReDoS)
SNYK-JS-PATHTOREGEXP-8482416
265 Proof of Concept
medium severity Cross-site Scripting (XSS)
SNYK-JS-COOKIE-8163060
265 No Known Exploit
medium severity Command Injection
SNYK-JS-REACTDEVUTILS-1083268
265 Proof of Concept
low severity Information Exposure
SNYK-JS-FOLLOWREDIRECTS-2396346
265 No Known Exploit
critical severity Incomplete List of Disallowed Inputs
SNYK-JS-BABELTRAVERSE-5962462
265 Proof of Concept
low severity Cross-site Scripting
SNYK-JS-SEND-7926862
265 No Known Exploit
low severity Cross-site Scripting
SNYK-JS-SERVESTATIC-7926865
265 No Known Exploit
Release notes
Package name: react-scripts
  • 4.0.3 - 2021-02-22
  • 4.0.2 - 2021-02-03
  • 4.0.1 - 2020-11-23
from react-scripts GitHub release notes

Important

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

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

For more information:

Snyk has created this PR to upgrade react-scripts from 4.0.1 to 4.0.3.

See this package in npm:
react-scripts

See this project in Snyk:
https://app.snyk.io/org/newtonombese1/project/29adeb13-c4eb-4415-a5ea-c03bbd0957c1?utm_source=github&utm_medium=referral&page=upgrade-pr
Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Hello @nejidevelops, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

Summary of Changes

Hello team, gemini-code-assist here to provide a summary of this pull request. This PR, automatically generated by Snyk, aims to upgrade the react-scripts dependency from version 4.0.1 to 4.0.3. The primary motivation for this upgrade is to address a significant number of security vulnerabilities identified in the current version, including several high and critical severity issues related to various underlying dependencies used by react-scripts.

Highlights

  • Dependency Upgrade: The core change is the upgrade of the react-scripts package to version 4.0.3.
  • Security Fixes: This upgrade is specifically intended to fix multiple security vulnerabilities reported by Snyk, ranging from low to critical severity. These include issues like Improper Input Validation, Remote Memory Exposure, Prototype Pollution, SSRF, and more, affecting dependencies like url-parse, dns-packet, follow-redirects, async, immer, ip, body-parser, express, path-to-regexp, cookie, react-dev-utils, eventsource, babel-traverse, send, and serve-static.
  • Automated PR: This pull request was automatically created by Snyk based on configured security scanning and upgrade policies.

Changelog

  • package.json
    • Updated the react-scripts dependency version from 4.0.1 to 4.0.3 in the dependencies section.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in issue comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist is currently in preview and may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments to provide feedback.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.


A version bump so small,
Fixes issues, standing tall.
Security's the aim,
Playing the upgrade game,
Protecting one and all.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request, automatically generated by Snyk, upgrades react-scripts from version 4.0.1 to 4.0.3. This is a positive change as it addresses a number of security vulnerabilities detailed in the PR description. The change itself is a straightforward version update in package.json.

Summary of Findings

  • Dependency Age and Future Upgrade Path: The upgrade to react-scripts@4.0.3 is beneficial as it patches several known vulnerabilities. However, this version itself is from early 2021. It is strongly recommended to plan a follow-up migration to react-scripts@5.x.x (the current major version) to ensure the project benefits from the latest security updates, bug fixes, and features, thereby reducing long-term maintenance and security risks.

Merge Readiness

This pull request provides a valuable security update by upgrading react-scripts to version 4.0.3 and addresses several vulnerabilities. The change is minimal and focused.

Therefore, this PR is a positive step and can be considered for merging. However, as noted in the review comment, react-scripts@4.0.3 is still an older version. It is highly recommended that the team prioritizes a subsequent upgrade to react-scripts@5.x.x to ensure long-term security, maintainability, and access to modern features.

As an AI, I am not authorized to approve pull requests. Please ensure this change is reviewed and approved by the appropriate maintainers before merging.

Comment thread package.json
"react": "^17.0.1",
"react-dom": "^17.0.1",
"react-scripts": "4.0.1"
"react-scripts": "4.0.3"
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

This upgrade to react-scripts@4.0.3 is a good incremental step for security, addressing the listed vulnerabilities.

However, it's important to note that react-scripts@4.0.3 was released in February 2021. The current latest major version is react-scripts@5.x.x.

Given the age of the 4.x line, could the team consider planning a subsequent upgrade to react-scripts@5.x.x in the near future? Migrating to a more current major version would likely offer:

  • More comprehensive security patches.
  • Additional bug fixes and better compatibility with modern Node.js versions and other development tools.
  • Access to newer features and potential performance improvements inherent in Create React App v5.

While this PR is beneficial, relying on an older major version long-term might lead to increased maintenance overhead and missing out on broader ecosystem improvements.

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