Skip to content

Update dependency @openzeppelin/contracts-upgradeable to v5.4.0 [SECURITY]#1180

Open
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/npm-openzeppelin-contracts-upgradeable-vulnerability
Open

Update dependency @openzeppelin/contracts-upgradeable to v5.4.0 [SECURITY]#1180
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/npm-openzeppelin-contracts-upgradeable-vulnerability

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate Bot commented Jul 17, 2025

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@openzeppelin/contracts-upgradeable (source) 5.3.05.4.0 age adoption passing confidence

OpenZeppelin Contracts Bytes's lastIndexOf function with position argument performs out-of-bound memory access on empty buffers

CVE-2025-54070 / GHSA-9rcw-c2f9-2j55

More information

Details

Impact

The lastIndexOf(bytes,byte,uint256) function of the Bytes.sol library may access uninitialized memory when the following two conditions hold: 1) the provided buffer length is empty (i.e. buffer.length == 0) and position is not 2**256 - 1 (i.e. pos != type(uint256).max).

The pos argument could be used to access arbitrary data outside of the buffer bounds. This could lead to the operation running out of gas, or returning an invalid index (outside of the empty buffer). Processing this invalid result for accessing the buffer would cause a revert under normal conditions.

When triggered, the function reads memory at offset buffer + 0x20 + pos. If memory at that location (outside the buffer) matches the search pattern, the function would return an out of bound index instead of the expected type(uint256).max. This creates unexpected behavior where callers receive a valid-looking index pointing outside buffer bounds.

Subsequent memory accesses that don't check bounds and use the returned index must carefully review the potential impact depending on their setup. Code relying on this function returning type(uint256).max for empty buffers or using the returned index without bounds checking could exhibit undefined behavior.

Patches

Upgrade to 5.4.0

Severity

  • CVSS Score: 6.9 / 10 (Medium)
  • Vector String: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N

References

This data is provided by the GitHub Advisory Database (CC-BY 4.0).


Release Notes

OpenZeppelin/openzeppelin-contracts-upgradeable (@​openzeppelin/contracts-upgradeable)

v5.4.0

Compare Source

Breaking changes
  • Update minimum pragma to 0.8.24 in SignatureChecker, Governor and Governor's extensions. (#​5716).
Pragma changes
  • Reduced pragma requirement of interface files.
Changes by category
Account
  • Account: Added a simple ERC-4337 account implementation with minimal logic to process user operations. (#​5657)
  • AccountERC7579: Extension of Account that implements support for ERC-7579 modules of type executor, validator, and fallback handler. (#​5657)
  • AccountERC7579Hooked: Extension of AccountERC7579 that implements support for ERC-7579 hook modules. (#​5657)
  • EIP7702Utils: Add a library for checking if an address has an EIP-7702 delegation in place. (#​5587)
  • IERC7821, ERC7821: Interface and logic for minimal batch execution. No support for additional opData is included. (#​5657)
Governance
  • GovernorNoncesKeyed: Extension of Governor that adds support for keyed nonces when voting by sig. (#​5574)
Tokens
  • ERC20Bridgeable: Implementation of ERC-7802 that makes an ERC-20 compatible with crosschain bridges. (#​5735)
Cryptography
Signers
  • AbstractSigner, SignerECDSA, SignerP256, and SignerRSA: Add an abstract contract and various implementations for contracts that deal with signature verification. (#​5657)
  • SignerERC7702: Implementation of AbstractSigner for Externally Owned Accounts (EOAs). Useful with ERC-7702. (#​5657)
  • SignerERC7913: Abstract signer that verifies signatures using the ERC-7913 workflow. (#​5659)
  • MultiSignerERC7913: Implementation of AbstractSigner that supports multiple ERC-7913 signers with a threshold-based signature verification system. (#​5659)
  • MultiSignerERC7913Weighted: Extension of MultiSignerERC7913 that supports assigning different weights to each signer, enabling more flexible governance schemes. (#​5718)
Verifiers
  • ERC7913P256Verifier and ERC7913RSAVerifier: Ready to use ERC-7913 verifiers that implement key verification for P256 (secp256r1) and RSA keys. (#​5659)
Other
  • SignatureChecker: Add support for ERC-7913 signatures alongside existing ECDSA and ERC-1271 signature verification. (#​5659)
  • ERC7739: An abstract contract to validate signatures following the rehashing scheme from ERC7739Utils. (#​5664)
  • ERC7739Utils: Add a library that implements a defensive rehashing mechanism to prevent replayability of smart contract signatures based on the ERC-7739. (#​5664)
Structures
  • EnumerableMap: Add support for BytesToBytesMap type. (#​5658)
  • EnumerableMap: Add keys(uint256,uint256) that returns a subset (slice) of the keys in the map. (#​5713)
  • EnumerableSet: Add support for StringSet and BytesSet types. (#​5658)
  • EnumerableSet: Add values(uint256,uint256) that returns a subset (slice) of the values in the set. (#​5713)
Utils
  • Arrays: Add unsafeAccess, unsafeMemoryAccess and unsafeSetLength for bytes[] and string[]. (#​5568)
  • Blockhash: Add a library that provides access to historical block hashes using EIP-2935's history storage, extending the standard 256-block limit to 8191 blocks. (#​5642)
  • Bytes: Fix lastIndexOf(bytes,byte,uint256) with empty buffers and finite position to correctly return type(uint256).max instead of accessing uninitialized memory sections. (#​5797)

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • ""
  • 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 was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot force-pushed the renovate/npm-openzeppelin-contracts-upgradeable-vulnerability branch from 1835af7 to e831d3c Compare November 11, 2025 01:56
@renovate renovate Bot changed the title Update dependency @openzeppelin/contracts-upgradeable to v5.4.0 [SECURITY] Update dependency @openzeppelin/contracts-upgradeable to v5.4.0 [SECURITY] - autoclosed Mar 27, 2026
@renovate renovate Bot closed this Mar 27, 2026
@renovate renovate Bot deleted the renovate/npm-openzeppelin-contracts-upgradeable-vulnerability branch March 27, 2026 01:13
@renovate renovate Bot changed the title Update dependency @openzeppelin/contracts-upgradeable to v5.4.0 [SECURITY] - autoclosed Update dependency @openzeppelin/contracts-upgradeable to v5.4.0 [SECURITY] Mar 30, 2026
@renovate renovate Bot reopened this Mar 30, 2026
@renovate renovate Bot force-pushed the renovate/npm-openzeppelin-contracts-upgradeable-vulnerability branch 2 times, most recently from e831d3c to 9d63215 Compare March 30, 2026 21:53
@socket-security
Copy link
Copy Markdown

socket-security Bot commented Mar 30, 2026

@renovate renovate Bot force-pushed the renovate/npm-openzeppelin-contracts-upgradeable-vulnerability branch from 9d63215 to 711921f Compare April 29, 2026 13:51
@renovate renovate Bot force-pushed the renovate/npm-openzeppelin-contracts-upgradeable-vulnerability branch from 711921f to f4dcdde Compare May 28, 2026 19:43
@socket-security
Copy link
Copy Markdown

socket-security Bot commented May 28, 2026

Caution

Review the following alerts detected in dependencies.

According to your organization's Security Policy, you must resolve all "Block" alerts before proceeding. Learn more about Socket for GitHub.

Action Severity Alert  (click "▶" to expand/collapse)
Block High
High CVE: Regular Expression Denial of Service (ReDoS) in npm cross-spawn

CVE: GHSA-3xgq-45jj-v275 Regular Expression Denial of Service (ReDoS) in cross-spawn (HIGH)

Affected versions: >= 7.0.0 < 7.0.5; < 6.0.6

Patched version: 7.0.5

From: ?npm/eslint@8.57.0npm/@ava/typescript@5.0.0npm/nyc@17.0.0npm/cross-spawn@7.0.3

ℹ Read more on: This package | This alert | What is a CVE?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Remove or replace dependencies that include known high severity CVEs. Consumers can use dependency overrides or npm audit fix --force to remove vulnerable dependencies.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/cross-spawn@7.0.3. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block High
High CVE: npm lodash vulnerable to Code Injection via `_.template` imports key names

CVE: GHSA-r5fr-rjxr-66jc lodash vulnerable to Code Injection via _.template imports key names (HIGH)

Affected versions: >= 4.0.0 < 4.18.0

Patched version: 4.18.0

From: ?npm/hardhat@2.28.6npm/wsrun@5.2.4npm/lodash@4.17.21

ℹ Read more on: This package | This alert | What is a CVE?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Remove or replace dependencies that include known high severity CVEs. Consumers can use dependency overrides or npm audit fix --force to remove vulnerable dependencies.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/lodash@4.17.21. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm @eslint/eslintrc is 100.0% likely to have a medium risk anomaly

Notes: The code is a legitimate, well-structured ESLint configuration loader/factory. It reads configuration data from various sources, resolves and loads plugins and parsers, and normalizes configurations for ESLint. While the code is not malicious by itself, it inherently executes user-provided plugin and parser code through require/imports, which is a normal but security-sensitive behavior. In the OpenVSX context, trusted inputs (config files and plugins) should be enforced; untrusted or tampered configs could introduce risk by executing arbitrary code during loading. No explicit malware indicators (exfiltration, backdoors, cryptomining) are present in this fragment.

Confidence: 1.00

Severity: 0.60

From: ?npm/eslint@8.57.0npm/eslint-plugin-unicorn@51.0.1npm/@eslint/eslintrc@2.1.4

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/@eslint/eslintrc@2.1.4. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm ajv is 100.0% likely to have a medium risk anomaly

Notes: The code represents a conventional, non-obfuscated part of AJV’s custom keyword support. No direct malicious actions are evident within this module. Security concerns mainly arise from the broader supply chain: the external rule implementation (dotjs/custom), the definition schema, and any user-supplied keyword definitions. The dynamic compilation path (compile(metaSchema, true)) should be exercised with trusted inputs. Recommended follow-up: review the contents of the external modules and monitor the inputs supplied to addKeyword/definitionSchema to ensure no unsafe behavior is introduced during validation or data handling.

Confidence: 1.00

Severity: 0.60

From: ?npm/eslint@8.57.0npm/eslint-plugin-unicorn@51.0.1npm/ajv@6.12.6

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/ajv@6.12.6. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Low CVE: npm brace-expansion Regular Expression Denial of Service vulnerability

CVE: GHSA-v6h2-p8h4-qcjw brace-expansion Regular Expression Denial of Service vulnerability (LOW)

Affected versions: = 3.0.0, 4.0.0; >= 2.0.0 < 2.0.2; >= 1.0.0 < 1.1.12; >= 3.0.0 < 3.0.1; >= 4.0.0 < 4.0.1

Patched version: 1.1.12

From: ?npm/eslint@8.57.0npm/nyc@17.0.0npm/wsrun@5.2.4npm/eslint-plugin-unicorn@51.0.1npm/brace-expansion@1.1.11

ℹ Read more on: This package | This alert | What is a mild CVE?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Remove or replace dependencies that include known low severity CVEs. Consumers can use dependency overrides or npm audit fix --force to remove vulnerable dependencies.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/brace-expansion@1.1.11. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm brace-expansion is 100.0% likely to have a medium risk anomaly

Notes: The analyzed code provides a self-contained brace expansion utility with support for sequences and nested options. There is no evidence of data exfiltration, remote communication, or destructive actions. The random escape tokens are benign and scoped to processing. Overall risk is low, with moderate trust in correctness and performance considerations for complex expansions.

Confidence: 1.00

Severity: 0.60

From: ?npm/eslint@8.57.0npm/nyc@17.0.0npm/wsrun@5.2.4npm/eslint-plugin-unicorn@51.0.1npm/brace-expansion@1.1.11

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/brace-expansion@1.1.11. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm convert-source-map is 100.0% likely to have a medium risk anomaly

Notes: The codebase largely behaves as a conventional, safe utility for source-map handling with low inherent malicious risk. The primary concerns are: (a) a definite bug due to an undefined variable in decodeBase64WithNewBuffer, (b) inconsistent and deprecated Buffer usage that should be modernized (prefer Buffer.from and avoid new Buffer), and (c) potential filesystem path exposure in error messages when map files cannot be read. If used responsibly with validated inputs and updated API usage, the risk remains low; otherwise, address the bug and update encoding paths to align with current Node.js best practices to mitigate runtime errors and potential misbehavior.

Confidence: 1.00

Severity: 0.60

From: ?npm/nyc@17.0.0npm/convert-source-map@1.9.0

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/convert-source-map@1.9.0. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm cross-spawn is 100.0% likely to have a medium risk anomaly

Notes: This file is a minimal, legitimate wrapper around Node.js child_process.spawn and spawnSync to provide improved ENOENT (command not found) error handling. It does not perform any network requests, dynamic code evaluation, secret disclosure, or telemetry. The only “sink” is the intended execution of local processes as directed by the calling application. No malicious behavior detected.

Confidence: 1.00

Severity: 0.60

From: ?npm/eslint@8.57.0npm/@ava/typescript@5.0.0npm/nyc@17.0.0npm/cross-spawn@7.0.3

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/cross-spawn@7.0.3. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm esquery is 100.0% likely to have a medium risk anomaly

Notes: The analyzed file is a legitimate PEG.js-generated parser module. It does not exhibit malicious exfiltration, backdoors, or external I/O mechanisms. The main security consideration is the potential risk around RegExp construction from user input, which should be mitigated by downstream code validating or constraining the resulting patterns. Overall, the security posture of this module is low risk when considered in isolation, with attention recommended for how parsed regexes are subsequently used by the host application.

Confidence: 1.00

Severity: 0.60

From: ?npm/eslint@8.57.0npm/eslint-plugin-unicorn@51.0.1npm/esquery@1.6.0

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/esquery@1.6.0. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm flat-cache is 100.0% likely to have a medium risk anomaly

Notes: The code implements a straightforward, non-malicious, file-backed cache with in-memory tracking and optional pruning. The primary security concern is proper input validation for docId and cacheDir to prevent path traversal outside the intended cache directory. No signs of malware or covert data leakage were observed in the provided fragment.

Confidence: 1.00

Severity: 0.60

From: ?npm/eslint@8.57.0npm/flat-cache@3.2.0

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/flat-cache@3.2.0. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm gensync is 100.0% likely to have a medium risk anomaly

Notes: The analyzed code fragment appears to be a legitimate implementation of a generator-based synchronization utility (gensync). There is no clear evidence of malicious behavior, data exfiltration, backdoors, or external communications. The security risk is low, with minimal potential for abuse within this isolated fragment. The code is readable and not obfuscated. A minor logic quirk in isIterable should be tracked, but it does not constitute an active security breach.

Confidence: 1.00

Severity: 0.60

From: ?npm/gensync@1.0.0-beta.2

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/gensync@1.0.0-beta.2. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm glob is 100.0% likely to have a medium risk anomaly

Notes: The code is a conventional, non-malicious implementation of a globbing helper with ignore pattern support. It reads inputs from configuration and filesystem state, and writes results to an internal cache/result set. There are no indicators of malware or exfiltration within this fragment.

Confidence: 1.00

Severity: 0.60

From: ?npm/eslint@8.57.0npm/nyc@17.0.0npm/wsrun@5.2.4npm/glob@7.2.3

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/glob@7.2.3. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm hardhat is 100.0% likely to have a medium risk anomaly

Notes: The code implements a subprocess-based transport to offload event sending. While this can reduce main-process dependencies, it creates a cross-process data path that exposes the serialized event via environment variables to an external subprocess. The subprocess script (not present here) becomes a critical trust boundary. Without inspecting the subprocess implementation and package contents, there is a non-trivial risk of data leakage or tampering via the external process. No explicit malware detected in this fragment, but the design warrants careful review of the subprocess code and supply chain integrity.

Confidence: 1.00

Severity: 0.60

From: packages/core/package.jsonnpm/hardhat@2.28.6

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/hardhat@2.28.6. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm istanbul-lib-processinfo is 100.0% likely to have a medium risk anomaly

Notes: No explicit malicious activity detected. The module appears to be a dedicated utility for process information management and optional external process spawning for coverage collection. However, silent JSON parse errors, potentially unsafe file deletions in expunge, and unvalidated environment injection for spawned processes warrant careful input validation, robust error handling, and strict access controls in deployment. Overall security risk remains moderate, driven by destructive capabilities and external process control rather than overt malware.

Confidence: 1.00

Severity: 0.60

From: ?npm/nyc@17.0.0npm/istanbul-lib-processinfo@2.0.3

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/istanbul-lib-processinfo@2.0.3. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm json5 is 100.0% likely to have a medium risk anomaly

Notes: The analyzed fragment appears to be a conventional JSON5 library distribution with polyfills and a JSON5 parser/stringifier. No malicious activity, data exfiltration, or backdoors were detected within the provided code block. The main risk is typical for large bundled libraries (bundle size, maintenance, and potential outdated polyfills) rather than active security abuse. Proceed with standard dependency hygiene (version pinning, integrity checks, and regular updates).

Confidence: 1.00

Severity: 0.60

From: ?npm/json5@2.2.3

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/json5@2.2.3. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm json5 is 100.0% likely to have a medium risk anomaly

Notes: This CLI wrapper for the JSON5 library reads the entire input stream into memory before parsing, which could be abused to cause a denial-of-service by supplying extremely large JSON5 payloads. In addition, the legacy ‑-convert option will write a new .json file alongside the input when no explicit output path is given, risking unintended file overwrites. There is no network activity, no dynamic code execution beyond JSON5.parse, and no embedded secrets or telemetry.

Confidence: 1.00

Severity: 0.60

From: ?npm/json5@2.2.3

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/json5@2.2.3. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm locate-path is 100.0% likely to have a medium risk anomaly

Notes: The code implements a safe and conventional filesystem path locator for a list of candidate paths, with options to follow symlinks and to restrict to files or directories. No malicious behavior detected; no obvious security vulnerabilities beyond standard filesystem access patterns. Some minor robustness improvements could include explicit error reporting for non-matching cases, and handling of undefined results in a clearer manner.

Confidence: 1.00

Severity: 0.60

From: ?npm/nyc@17.0.0npm/@openzeppelin/docs-utils@0.1.5npm/eslint-plugin-unicorn@51.0.1npm/locate-path@5.0.0

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/locate-path@5.0.0. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm lodash is 100.0% likely to have a medium risk anomaly

Notes: This is a legitimate template compiler implementation that uses dynamic code generation (Function constructor) and optional 'with' scope. It is not malicious by intent in the provided fragment, but it exposes typical high-risk behaviors: arbitrary code execution via evaluate delimiters, potential XSS from unescaped interpolation, and broader attack surface if untrusted templates or imports are used. Use only with trusted templates or ensure strict delimiter/escaping policies. No evidence of backdoor, exfiltration, or obfuscated malicious payloads found in the provided code.

Confidence: 1.00

Severity: 0.60

From: ?npm/hardhat@2.28.6npm/wsrun@5.2.4npm/lodash@4.17.21

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/lodash@4.17.21. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm node-preload is 100.0% likely to have a medium risk anomaly

Notes: The file itself is a small bootstrap that installs a spawn hook and requires a list of modules to execute. By design it executes arbitrary modules and can modify child process behavior, which is a high-impact capability. There is no direct evidence of exfiltration or malicious payloads in this fragment, but the code should be treated as potentially dangerous because it enables execution of other modules (the real risk depends on those modules). Recommend auditing ../preload-list.js, ../internal-preload-module.js, ../hook-spawn.js and every module referenced in the preload list before trusting this package.

Confidence: 1.00

Severity: 0.60

From: ?npm/nyc@17.0.0npm/node-preload@0.2.1

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/node-preload@0.2.1. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm rimraf is 100.0% likely to have a medium risk anomaly

Notes: No indicators of malware or covert exfiltration. The module intentionally performs destructive filesystem operations (deleting files/directories) and therefore poses danger if misused or called with untrusted/incorrect paths or elevated privileges. There is no evidence of obfuscation, network communication, credential harvesting, or backdoor behavior in this file.

Confidence: 1.00

Severity: 0.60

From: ?npm/eslint@8.57.0npm/nyc@17.0.0npm/rimraf@3.0.2

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/rimraf@3.0.2. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm semver is 100.0% likely to have a medium risk anomaly

Notes: Conclusion: The code is a standard, benign implementation of a semver range-exterior check. No malicious behavior, no data exfiltration, and no suspicious side effects are evident. It operates purely on in-memory data and relies on local modules for comparisons. Overall security risk appears low.

Confidence: 1.00

Severity: 0.60

From: ?npm/nyc@17.0.0npm/@typescript-eslint/eslint-plugin@7.18.0npm/@typescript-eslint/parser@7.18.0npm/@changesets/cli@2.29.3npm/eslint-plugin-unicorn@51.0.1npm/semver@7.6.3

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/semver@7.6.3. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm source-map-support is 100.0% likely to have a medium risk anomaly

Notes: The fragment is consistent with a legitimate source-map support utility (likely source-map-support) used to enhance debugging by resolving and applying source maps. While it performs long-lived network/file I/O and intensively manipulates error reporting, there is no concrete evidence of malicious activity or data exfiltration beyond what such debugging tooling normally performs. The security risk is modest and largely dependent on trust in remote map sources and logging practices.

Confidence: 1.00

Severity: 0.60

From: ?npm/hardhat@2.28.6npm/source-map-support@0.5.21

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/source-map-support@0.5.21. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Block Low
Potential code anomaly (AI signal): npm spawn-wrap is 100.0% likely to have a medium risk anomaly

Notes: The code is a legitimate spawn-wrapping utility (likely from the spawn-wrap npm package) designed to sandbox/redirect child process creation by rewriting the spawn call parameters and running within a temporary working directory. There are no explicit backdoors, data exfiltration, or malicious network behavior detected in this fragment. It does write files and create temporary binaries, but these actions are part of its documented functionality to wrap the Node runtime and manage process execution. The code does not read or leak environment variables beyond what is used to set up the wrapper, and it cleans up after itself (except when in debug mode). Overall, this appears to be a normal, purposeful tool for controlled process spawning rather than malware.

Confidence: 1.00

Severity: 0.60

From: ?npm/nyc@17.0.0npm/spawn-wrap@2.0.0

ℹ Read more on: This package | This alert | What is an AI-detected potential code anomaly?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: An AI system found a low-risk anomaly in this package. It may still be fine to use, but you should check that it is safe before proceeding.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/spawn-wrap@2.0.0. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

See 6 more rows in the dashboard

View full report

@renovate renovate Bot force-pushed the renovate/npm-openzeppelin-contracts-upgradeable-vulnerability branch from f4dcdde to 81ad371 Compare June 1, 2026 17:07
@renovate renovate Bot force-pushed the renovate/npm-openzeppelin-contracts-upgradeable-vulnerability branch from 81ad371 to 67bebba Compare June 2, 2026 14:34
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.

0 participants