Skip to content

Release: Security fix for the compromised eMudhra certificates - #962

Merged
dialmaster merged 4 commits into
mainfrom
dev
Oct 22, 2026
Merged

dialmaster merged 4 commits into
mainfrom
dev

Conversation

@dialmaster

@dialmaster dialmaster commented Oct 22, 2026 •

Copy link
Copy Markdown
Collaborator

This is a small security release with one fix:

  • The private keys of eight eMudhra certificate authorities can be worked out from their public certificates (details), and every HTTPS client in the Youtarr image (Node, yt-dlp, Apprise, curl, and Deno) still trusted them. Someone able to intercept your server's traffic could have used them to pretend to be YouTube, GitHub, or plex.tv. The image now runs on Node 22 with current certificate lists and rejects those certificates. There's nothing to change in your settings; the certificate lists are built into the image, so updating is the fix. (fix: move image to Node 22 for eMudhra CA distrust #960)

Post-release merge back to dev
The keys of eight eMudhra intermediate CAs can be recovered from their
public certificates (disclosed 2026-10-20). Every TLS client in the
image (Node, yt-dlp and Apprise through certifi, curl, Deno) still
trusted chains through them, and none of them checks Certificate
Transparency, so an on-path attacker could impersonate YouTube, GitHub
(yt-dlp self-update) or plex.tv.

Node 20 is end of life and will not get the updated bundled roots, so
the image moves to node:22-bookworm-slim (22.23.4 carries the fix;
bookworm keeps Python 3.11 for the curl_cffi stage). The no-cache
release build picks up the fixed Debian ca-certificates, certifi and
Deno. CI and release workflows move to Node 22 to match.
Storybook 10.0.0 through 10.6.1 is affected by a critical advisory
(GHSA-f2ph-cmg5-wxc8, missing origin validation in the preview), which
fails the client critical-level audit in CI. Storybook is a dev
dependency and is not part of the image.

The @storybook/* packages move with the core so their versions match.
10.6.3 is newer but still inside the 5-day min-release-age window.
fix: move image to Node 22 for eMudhra CA distrust
@dialmaster dialmaster changed the title Release Release: Security fix for the compromised eMudhra certificates Oct 22, 2026
@github-actions

Copy link
Copy Markdown
Contributor

📊 Test Coverage Report

Backend Coverage

Type Coverage Status
Lines 91.26% 🟢
Statements 91.14% 🟢
Functions 91.11% 🟢
Branches 85.13% 🟢

Frontend Coverage

Type Coverage Status
Lines 89.77% 🟢
Statements 88.23% 🟢
Functions 81.99% 🟢
Branches 82.93% 🟢

Coverage Requirements

  • Minimum threshold: 70% line coverage
  • Backend: ✅ Passes
  • Frontend: ✅ Passes

Coverage report generated for commit 02a320f

@dialmaster
dialmaster merged commit e7412aa into main Oct 22, 2026
12 checks passed
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