Skip to content

[Aikido] Fix 11 security issues in h3, hono, socket.io-parser and 3 more#427

Closed
aikido-autofix[bot] wants to merge 1 commit intomainfrom
fix/aikido-security-update-packages-21467677-rxge
Closed

[Aikido] Fix 11 security issues in h3, hono, socket.io-parser and 3 more#427
aikido-autofix[bot] wants to merge 1 commit intomainfrom
fix/aikido-security-update-packages-21467677-rxge

Conversation

@aikido-autofix
Copy link
Copy Markdown

Upgrade dependencies to fix critical SSE injection and auth bypass vulnerabilities, plus high-severity DoS and memory exhaustion issues.

✅ 11 CVEs resolved by this upgrade, including 2 critical 🚨 CVEs

This PR will resolve the following CVEs:

Issue Severity           Description
CVE-2026-33128
🚨 CRITICAL
[h3] createEventStream is vulnerable to Server-Sent Events (SSE) injection due to missing newline sanitization, allowing attackers who control SSE message fields to inject arbitrary events to connected clients.
GHSA-4hxc-9384-m385
MEDIUM
[h3] The EventStream class fails to sanitize carriage return (\r) characters in data and comment fields, allowing attackers to inject arbitrary SSE events, spoof event types, and split single push() calls into multiple browser-parsed events. This bypasses a prior fix that only addressed newline (\n) injection.
CVE-2026-29045
🚨 CRITICAL
[hono] URL decoding inconsistency between router and serveStatic allows bypassing route-based middleware protections via encoded slashes (%2F), enabling unauthorized access to protected static resources. This vulnerability permits attackers to circumvent authorization checks through path manipulation.
CVE-2026-29085
MEDIUM
[hono] Improper input validation in streamSSE() allows injection of arbitrary SSE fields through unvalidated carriage return and newline characters in event, id, and retry fields, enabling protocol manipulation and potential information disclosure or DoS attacks.
CVE-2026-29086
MEDIUM
[hono] The setCookie() utility fails to validate semicolons, carriage returns, and newlines in domain and path options, allowing attackers to inject additional cookie attributes through untrusted input. This could lead to cookie manipulation and potential security bypasses.
GHSA-v8w9-8mx6-g223
MEDIUM
[hono] Prototype pollution vulnerability in parseBody({ dot: true }) where specially crafted form field names like __proto__.x create objects with __proto__ properties, potentially enabling prototype pollution if merged unsafely into other objects.
GHSA-gq3j-xvxp-8hrf
LOW
[hono] The basicAuth and bearerAuth middlewares used non-timing-safe string comparison for hash validation, potentially allowing timing-based analysis attacks. The vulnerability has been fixed by implementing constant-time comparison to prevent early termination.
CVE-2026-33151
HIGH
[socket.io-parser] A specially crafted Socket.IO packet can cause the server to buffer an excessive number of binary attachments, leading to memory exhaustion and denial of service.
CVE-2026-25639
HIGH
[axios] The mergeConfig function crashes with a TypeError when processing configuration objects containing proto as an own property, allowing attackers to trigger denial of service. An attacker can exploit this by providing a malicious configuration object created via JSON.parse().
CVE-2025-13465
MEDIUM
[lodash] A prototype pollution vulnerability in _.unset and _.omit functions allows attackers to delete methods from global prototypes via crafted paths. While this prevents property overwriting, it can cause denial of service by removing critical functionality.
AIKIDO-2024-10466
MEDIUM
[viem] Insufficient entropy in the signature algorithm allows nonce reuse across transactions, enabling attackers to recover the private key and compromise cryptographic security.
🔗 Related Tasks

@aikido-autofix aikido-autofix bot added the dependencies Pull requests that update a dependency file label Mar 31, 2026
@cursor
Copy link
Copy Markdown

cursor bot commented Mar 31, 2026

PR Summary

Medium Risk
Primarily dependency-version overrides to address security advisories; risk is limited but could introduce runtime incompatibilities if transitive packages rely on older h3/hono/axios/lodash/socket.io-parser behavior.

Overview
Pins several transitive dependencies to specific patched versions via pnpm.overrides (h3, hono, socket.io-parser, axios, lodash) to address reported security issues.

Also updates @abstract-foundation/agw-react dev dependency thirdweb to a specific nightly build and applies small JSON formatting changes (arrays expanded) in package.json files.

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

@changeset-bot
Copy link
Copy Markdown

changeset-bot bot commented Mar 31, 2026

⚠️ No Changeset found

Latest commit: be0e074

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

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.

"react": ">=18.3.1",
"react-dom": ">=18.3.1",
"thirdweb": "^5.68.0",
"thirdweb": "5.93.5-nightly-b51157c0ff17e9535029fc8790cfa8538d1c995f-20250326000337",
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Nightly thirdweb build pinned in devDependencies

Medium Severity

The thirdweb devDependency was changed from a stable semver range ("^5.68.0") to a specific nightly pre-release build ("5.93.5-nightly-..."). This is unrelated to any of the 11 CVEs listed in the PR description and appears to be a testing artifact that was accidentally included. A nightly build is inherently unstable and may contain unfinished features or bugs. It also conflicts with the stable peerDependency range "^5.72.0", creating an inconsistency between what the library is tested against and what end users will install.

Fix in Cursor Fix in Web

@metarsit metarsit closed this Apr 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant