Skip to content

[Aikido] Fix 16 security issues in activestorage, msgpack, erb and 5 more - #377

Closed
aikido-autofix[bot] wants to merge 1 commit into
mainfrom
fix/AIK-18614-update-packages-90227184-kmz4
Closed

[Aikido] Fix 16 security issues in activestorage, msgpack, erb and 5 more#377
aikido-autofix[bot] wants to merge 1 commit into
mainfrom
fix/AIK-18614-update-packages-90227184-kmz4

Conversation

@aikido-autofix

Copy link
Copy Markdown

Upgrade dependencies to fix critical security vulnerabilities including arbitrary file read via unsafe libvips operations in Active Storage, data leakage in MessagePack, code execution via ERB deserialization, and memory safety issues in SQLite3 and other libraries.

✅ 16 CVEs resolved by this upgrade

This PR will resolve the following CVEs:

Issue Severity           Description
CVE-2026-66066
MEDIUM
[activestorage] Unsafe libvips operations are not disabled for untrusted image uploads, allowing attackers to read arbitrary files and environment variables accessible to the Rails process. This can lead to credential exposure and remote code execution.
AIKIDO-2026-333731
MEDIUM
[activestorage] Crafted uploaded images can exploit libvips unfuzzed loaders/savers to read arbitrary files and environment variables during variant processing, potentially leading to RCE. An unauthenticated attacker can trigger this via file upload and variant processing to access sensitive credentials.
AIKIDO-2026-963257
MEDIUM
[msgpack] A memory ownership bug allows chunks from released pages to be reused by other buffers, causing data leaks and corruption across requests. Additionally, deeply nested recursive extensions can crash the VM instead of raising a proper stack error.
AIKIDO-2026-467095
MEDIUM
[erb] A marshal deserialization vulnerability allows attackers to bypass execution guards in ERB by overriding the equal? method on a crafted @_init object, enabling arbitrary code execution through template evaluation. The fix uses BasicObject#equal? to prevent the bypass.
AIKIDO-2026-152796
LOW
[sqlite3] A heap-allocated array in Ruby bindings can cause earlier arguments to be freed during garbage collection while later arguments are still being converted in multi-argument aggregate functions, leading to incorrect objects or segmentation faults.
AIKIDO-2026-652269
LOW
[rbs] The RBS parser's C lexer fails to advance when encountering invalid bytes in the input encoding, causing infinite loops while holding the VM lock or process crashes. This allows denial of service attacks when parsing untrusted signature text.
AIKIDO-2026-622262
LOW
[loofah] HTML5 sanitizer fails to restrict the href attribute on SVG elements, allowing Cross-site Scripting (XSS) attacks through external document references in elements like <use> and <feImage>. This enables arbitrary script execution or external content loading when sanitizing user-supplied SVG.
CVE-2026-73490
LOW
[loofah] HTML5 sanitizer fails to restrict plain href attributes on SVG elements, allowing crafted SVG to reference arbitrary same-origin documents and potentially execute scripts or load external content. This bypasses intended local-reference restrictions affecting applications using Loofah's default allowlist.
AIKIDO-2026-349881
LOW
[loofah] A Cross-site Scripting (XSS) vulnerability exists due to improper validation of URIs with numeric character references lacking trailing semicolons, allowing malicious scripts like javascript&#58alert(1) to bypass filtering and execute in browsers.
AIKIDO-2026-498891
LOW
[loofah] A vulnerability in the allowed_uri? helper fails to reject javascript: URIs when the scheme is split by HTML5 named character references like &Tab; or &NewLine;, allowing attackers to bypass URI validation and execute arbitrary JavaScript. This affects callers of the public helper method and higher-level features like Action Text markdown link validation that render approved URIs into HTML attributes.
GHSA-5qhf-9phg-95m2
LOW
[loofah] A bypass vulnerability in URI validation allows javascript: and vbscript: schemes to evade filtering when split by numeric character references without trailing semicolons, enabling XSS attacks through browser URI decoding.
CVE-2026-73491
LOW
[loofah] A vulnerability in the URI validation function allows javascript: URIs with HTML-encoded whitespace characters to bypass security checks, potentially enabling XSS attacks when HTML-encoded strings are passed directly to the validation function.
AIKIDO-2026-769167
LOW
[json] A heap use-after-free vulnerability in the resumable parser allows attackers to crash the Ruby process by feeding crafted truncated JSON with duplicate keys and calling partial_value, which reads freed memory through stale state pointers.
CVE-2026-71847
LOW
[json] A heap-use-after-free vulnerability in the native C extension allows attackers to cause process termination (DoS) by supplying malicious JSON stream data with duplicate keys to applications using JSON::ResumableParser's partial_value method.
AIKIDO-2026-663658
LOW
[rails-html-sanitizer] A Cross-site Scripting (XSS) vulnerability exists due to incomplete attribute restrictions on SVG elements, allowing href attributes to reference external documents and potentially execute scripts or load external content for tracking purposes.
CVE-2026-73648
LOW
[rails-html-sanitizer] A sanitization bypass in SVG handling allows external references through the plain href attribute on SVG elements, enabling script execution or external image loading in sanitized documents when non-default SVG tags are allowed.
🔗 Related Tasks

@codecov

codecov Bot commented Aug 16, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@aikido-autofix

Copy link
Copy Markdown
Author

Closed by Aikido: a new AutoFix has been created → #385

@aikido-autofix aikido-autofix Bot closed this Aug 20, 2026
@aikido-autofix
aikido-autofix Bot deleted the fix/AIK-18614-update-packages-90227184-kmz4 branch August 20, 2026 23:29
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