Skip to content

Conversation

nejidevelops
Copy link
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 Prototype Pollution
SNYK-JS-IMMER-1019369
482 Proof of Concept
high severity Server-side Request Forgery (SSRF)
SNYK-JS-IP-6240864
482 Proof of Concept
high severity Remote Memory Exposure
SNYK-JS-DNSPACKET-1293563
482 No Known Exploit
high severity Improper Input Validation
SNYK-JS-URLPARSE-2407770
482 Proof of Concept
high severity Prototype Pollution
SNYK-JS-ASYNC-2441827
482 Proof of Concept
high severity Asymmetric Resource Consumption (Amplification)
SNYK-JS-BODYPARSER-7926860
482 No Known Exploit
high severity Improper Handling of Extra Parameters
SNYK-JS-FOLLOWREDIRECTS-6141137
482 Proof of Concept
medium severity Command Injection
SNYK-JS-REACTDEVUTILS-1083268
482 Proof of Concept
medium severity Improper Handling of Unexpected Data Type
SNYK-JS-ONHEADERS-10773729
482 No Known Exploit
medium severity Regular Expression Denial of Service (ReDoS)
SNYK-JS-PATHTOREGEXP-7925106
482 Proof of Concept
medium severity Regular Expression Denial of Service (ReDoS)
SNYK-JS-PATHTOREGEXP-8482416
482 Proof of Concept
medium severity Improper Input Validation
SNYK-JS-URLPARSE-1078283
482 No Known Exploit
medium severity Open Redirect
SNYK-JS-URLPARSE-1533425
482 Proof of Concept
medium severity Access Restriction Bypass
SNYK-JS-URLPARSE-2401205
482 Proof of Concept
medium severity Authorization Bypass
SNYK-JS-URLPARSE-2407759
482 Proof of Concept
medium severity Authorization Bypass Through User-Controlled Key
SNYK-JS-URLPARSE-2412697
482 Proof of Concept
medium severity Cross-site Scripting (XSS)
SNYK-JS-COOKIE-8163060
482 No Known Exploit
medium severity Information Exposure
SNYK-JS-EVENTSOURCE-2823375
482 Proof of Concept
medium severity Open Redirect
SNYK-JS-EXPRESS-6474509
482 No Known Exploit
medium severity Cross-site Scripting
SNYK-JS-EXPRESS-7926867
482 No Known Exploit
medium severity Information Exposure
SNYK-JS-FOLLOWREDIRECTS-2332181
482 Proof of Concept
medium severity Information Exposure
SNYK-JS-FOLLOWREDIRECTS-6444610
482 Proof of Concept
low severity Cross-site Scripting
SNYK-JS-SEND-7926862
482 No Known Exploit
low severity Cross-site Scripting
SNYK-JS-SERVESTATIC-7926865
482 No Known Exploit
critical severity Incomplete List of Disallowed Inputs
SNYK-JS-BABELTRAVERSE-5962462
482 Proof of Concept
low severity Information Exposure
SNYK-JS-FOLLOWREDIRECTS-2396346
482 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

@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.

Summary of Changes

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!

This pull request, automatically generated by Snyk, focuses on improving the project's security posture by updating the react-scripts dependency. The primary goal is to resolve a significant number of known security vulnerabilities present in the older version, thereby enhancing the application's overall resilience and safety.

Highlights

  • Dependency Upgrade: Upgrades the react-scripts dependency from version 4.0.1 to 4.0.3.
  • Security Vulnerability Resolution: This upgrade addresses a total of 26 identified security vulnerabilities, including one critical, seven high, and eighteen medium/low severity issues, as reported by Snyk. These include various types of vulnerabilities such as Prototype Pollution, Server-side Request Forgery (SSRF), Remote Memory Exposure, Improper Input Validation, Command Injection, Regular Expression Denial of Service (ReDoS), and Cross-site Scripting (XSS).
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 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 or fill out our survey 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.

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

@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 from Snyk upgrades react-scripts to version 4.0.3 to address several security vulnerabilities. This is a necessary and important change.

My review has identified one critical issue: the package-lock.json file does not appear to be updated. This must be addressed to ensure the vulnerability fix is applied.

Additionally, I've provided a couple of medium-severity suggestions regarding long-term dependency management that you may want to consider for future improvements. Please address the critical issue before merging.

@@ -5,7 +5,7 @@
"dependencies": {
"react": "^17.0.1",
"react-dom": "^17.0.1",
"react-scripts": "4.0.1"
"react-scripts": "4.0.3"

Choose a reason for hiding this comment

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

critical

This pull request appears to be missing the update to package-lock.json. When dependencies in package.json are updated, the lock file must also be updated and committed to ensure that the correct versions of dependencies are installed consistently across all environments. Without this, the security vulnerabilities this PR aims to fix may persist in your environments.

Please run npm install and commit the updated package-lock.json.

@@ -5,7 +5,7 @@
"dependencies": {
"react": "^17.0.1",
"react-dom": "^17.0.1",
"react-scripts": "4.0.1"
"react-scripts": "4.0.3"

Choose a reason for hiding this comment

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

medium

While this upgrade to 4.0.3 is a good step for security, please note that this version of react-scripts is still quite old (released in 2021). The latest major version is 5.x.

To ensure the long-term health and security of the project, I recommend creating a follow-up task to investigate upgrading to a more recent version of react-scripts. This will likely involve more significant changes but will provide access to modern features, performance improvements, and broader security coverage.

@@ -5,7 +5,7 @@
"dependencies": {
"react": "^17.0.1",
"react-dom": "^17.0.1",
"react-scripts": "4.0.1"
"react-scripts": "4.0.3"

Choose a reason for hiding this comment

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

medium

This dependency is pinned to an exact version. While this provides deterministic builds, it prevents you from automatically receiving non-breaking bug and security fixes within the same major version. Consider using a caret (^) to allow for patch and minor version updates.

However, if your project policy requires pinning dependencies for stability, feel free to disregard this suggestion.

    "react-scripts": "^4.0.3"

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants