<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>リンカー on 思いつきそうで思いつかなくていたときに</title><link>https://blog.fuga.jp/tags/%E3%83%AA%E3%83%B3%E3%82%AB%E3%83%BC/</link><description>Recent content in リンカー on 思いつきそうで思いつかなくていたときに</description><generator>Hugo -- gohugo.io</generator><language>ja-jp</language><copyright>Copyright(c) 2022-2025 SATO Daisuke. All rights reserved.</copyright><lastBuildDate>Mon, 26 Oct 2026 00:00:00 +0900</lastBuildDate><atom:link href="https://blog.fuga.jp/tags/%E3%83%AA%E3%83%B3%E3%82%AB%E3%83%BC/index.xml" rel="self" type="application/rss+xml"/><item><title>Nextcloud の内蔵オフィスに KEV 入りの穴、systemd が Rust を受け入れ、OBS Studio 33.0 の CEF 更新、Wild 0.11 がカーネルモジュールをリンク、Node2Shell の修正版（2026/10/26 Linux・OSSトレンド）</title><link>https://blog.fuga.jp/posts/2026-10-26-linux-oss-trend/</link><pubDate>Mon, 26 Oct 2026 00:00:00 +0900</pubDate><guid>https://blog.fuga.jp/posts/2026-10-26-linux-oss-trend/</guid><description>&lt;h2 id="はじめに"&gt;&lt;a href="#%e3%81%af%e3%81%98%e3%82%81%e3%81%ab" class="header-anchor"&gt;&lt;/a&gt;はじめに&#10;&lt;/h2&gt;&lt;p&gt;便利な「全部入り」の製品ほど、中に何が同梱されているかは見えにくくなります。今回の5本は、その同梱物を知っておく話として読めます。Nextcloud の内蔵オフィスの穴は、米国の連邦機関に課された対策の期限が10月26日（月）です。systemd は、何を入れないかを決めてから Rust を受け入れました。OBS Studio 33.0 はブラウザ部品の Chromium が 127 から 150 になり、Wild 0.11 は Linux カーネルモジュールをリンクできるようになりました。Node.js に同梱された Brotli には、Node2Shell と呼ばれる脆弱性の修正版が出ています。&lt;/p&gt;&#10;&lt;p&gt;5本に共通点を見るのは、あくまで書き手の考察です。動画で一次情報と食い違った発言は、各節末の「動画の訂正」にまとめました。&lt;/p&gt;&#10;&lt;div class="video-wrapper"&gt;&#10; &lt;iframe loading="lazy" &#10; src="https://www.youtube.com/embed/85Chr_kxMd8" &#10; allowfullscreen &#10; title="YouTube Video"&#10; &gt;&#10; &lt;/iframe&gt;&#10;&lt;/div&gt;&#10;&#10;&lt;h2 id="1-nextcloud-の内蔵-code-server--cve-2026-110447-が-kev-入り連邦機関の期限は10月26日"&gt;&lt;a href="#1-nextcloud-%e3%81%ae%e5%86%85%e8%94%b5-code-server--cve-2026-110447-%e3%81%8c-kev-%e5%85%a5%e3%82%8a%e9%80%a3%e9%82%a6%e6%a9%9f%e9%96%a2%e3%81%ae%e6%9c%9f%e9%99%90%e3%81%af10%e6%9c%8826%e6%97%a5" class="header-anchor"&gt;&lt;/a&gt;1. Nextcloud の内蔵 CODE Server — CVE-2026-110447 が KEV 入り、連邦機関の期限は10月26日&#10;&lt;/h2&gt;&lt;p&gt;Nextcloud 用のアプリ Collabora Online - Built-in CODE Server（パッケージ名 richdocumentscode）に、認証なしで OS コマンドを実行できる脆弱性が見つかりました。番号は &lt;a class="link" href="https://nvd.nist.gov/vuln/detail/CVE-2026-110447" target="_blank" rel="noopener"&#10; &gt;CVE-2026-110447&lt;/a&gt; です。&lt;/p&gt;&#10;&lt;h3 id="深刻度と-kev-入り"&gt;&lt;a href="#%e6%b7%b1%e5%88%bb%e5%ba%a6%e3%81%a8-kev-%e5%85%a5%e3%82%8a" class="header-anchor"&gt;&lt;/a&gt;深刻度と KEV 入り&#10;&lt;/h3&gt;&lt;ul&gt;&#10;&lt;li&gt;CVSS v4.0 は 9.2（Critical）です。NVD に載っている採点は、CVE レコードの側（CNA は MITRE）で付けられたもので、NVD 自身の採点ではありません。Collabora 自身の&lt;a class="link" href="https://github.com/CollaboraOnline/online/security/advisories/GHSA-g3vx-3m76-fghh" target="_blank" rel="noopener"&#10; &gt;アドバイザリ&lt;/a&gt;にも、同じ CVSS v4.0 で 9.2 が書かれています&lt;/li&gt;&#10;&lt;li&gt;アドバイザリの題名は &amp;ldquo;Unauthenticated OS command injection in the richdocumentscode proxy&amp;rdquo; で、認証は要りません。NVD の説明文は &amp;ldquo;as exploited in the wild in September and October 2026&amp;rdquo; と書いており、実際の攻撃がすでにあります&lt;/li&gt;&#10;&lt;li&gt;CISA の &lt;a class="link" href="https://www.cisa.gov/sites/default/files/feeds/known_exploited_vulnerabilities.json" target="_blank" rel="noopener"&#10; &gt;KEV カタログ（JSON）&lt;/a&gt;には、&lt;code&gt;dateAdded&lt;/code&gt; が 2026-10-23、&lt;code&gt;dueDate&lt;/code&gt; が 2026-10-26 で載っています。10月23日は米国の日付で、カタログの更新は UTC 19:30、日本時間では10月24日 4:30 です&lt;/li&gt;&#10;&lt;li&gt;期限は、連邦文民行政部門（FCEB）の機関に対するものです。&lt;a class="link" href="https://www.cisa.gov/news-events/directives/bod-26-04-prioritizing-security-updates-based-risk" target="_blank" rel="noopener"&#10; &gt;BOD 26-04&lt;/a&gt; は対象をそう定めており、民間の事業者や個人の期限ではありません&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="対象になるもの"&gt;&lt;a href="#%e5%af%be%e8%b1%a1%e3%81%ab%e3%81%aa%e3%82%8b%e3%82%82%e3%81%ae" class="header-anchor"&gt;&lt;/a&gt;対象になるもの&#10;&lt;/h3&gt;&lt;p&gt;NVD の説明文は、Collabora Online Built-in CODE Server の 26.4.303 より前の版を対象とし、&amp;ldquo;The vulnerability is not present in standalone Collabora Online servers&amp;rdquo; と書いています。Collabora Online を独立したサーバーとして立てている構成は対象外です。このアプリは、Nextcloud と同じマシンの上で変換サーバーを動かす仕組みで、アプリ自身の説明は &amp;ldquo;for local testing and non-production use&amp;rdquo;（ローカルでのテストと非本番用途）です。&lt;/p&gt;&#10;&lt;h3 id="どこが突かれるか"&gt;&lt;a href="#%e3%81%a9%e3%81%93%e3%81%8c%e7%aa%81%e3%81%8b%e3%82%8c%e3%82%8b%e3%81%8b" class="header-anchor"&gt;&lt;/a&gt;どこが突かれるか&#10;&lt;/h3&gt;&lt;p&gt;入口は proxy.php です。NVD の説明文は &amp;ldquo;This is an OS command injection in proxy.php when the CODE server isn&amp;rsquo;t running&amp;rdquo; と書いています。つまり、変換サーバーが動いていない間だけ成立します。アドバイザリによれば、停止が生まれるのはコンテナの再起動、アップグレード、クラッシュのときです。&lt;/p&gt;&#10;&lt;p&gt;26.4.303 の&lt;a class="link" href="https://github.com/CollaboraOnline/richdocumentscode/compare/26.4.302...26.4.303" target="_blank" rel="noopener"&#10; &gt;差分&lt;/a&gt;を見ると、変換サーバーを起動するコマンドの組み立てに escapeshellarg が使われるようになっています。攻撃は Web サーバーのユーザーの権限で実行されます。&lt;/p&gt;&#10;&lt;h3 id="攻撃の痕跡"&gt;&lt;a href="#%e6%94%bb%e6%92%83%e3%81%ae%e7%97%95%e8%b7%a1" class="header-anchor"&gt;&lt;/a&gt;攻撃の痕跡&#10;&lt;/h3&gt;&lt;p&gt;GitHub の &lt;a class="link" href="https://github.com/CollaboraOnline/richdocumentscode/issues/354" target="_blank" rel="noopener"&#10; &gt;issue #354&lt;/a&gt; で、ある管理者が被害を報告しています。そこに貼られたサーバーのログで最も古い攻撃は、&lt;code&gt;10/Sep/2026:19:51:52 +0200&lt;/code&gt; です。これは UTC+2 で書かれた時刻で、日本時間に直すと9月11日 2:51 にあたります。修正版 26.4.303 の&lt;a class="link" href="https://github.com/CollaboraOnline/richdocumentscode/releases/tag/26.4.303" target="_blank" rel="noopener"&#10; &gt;リリース&lt;/a&gt;は、UTC の9月11日 13:43（日本時間 22:43）です。この「最初の日」は、この issue の報告者のログの範囲での話です。&lt;/p&gt;&#10;&lt;p&gt;置かれていたのは Web シェルとみられる PHP ファイルで、報告された名前は shrf4645.php、shxa35d0.php など、&lt;code&gt;shx*.php&lt;/code&gt; に限りません。同じ issue は、攻撃者が資格情報や暗号資産に関わるファイルを探すコマンドを実行したと書く一方、確認したリクエストの中に、ファイルを固めて外へ送り出すコマンドは見当たらなかったとも書いています。Censys は、2026年10月16日の時点で、このアプリを入れたホストを 19,454 件検出したと&lt;a class="link" href="https://censys.com/advisory/cve-2026-110447" target="_blank" rel="noopener"&#10; &gt;書いています&lt;/a&gt;。&lt;/p&gt;&#10;&lt;h3 id="対策"&gt;&lt;a href="#%e5%af%be%e7%ad%96" class="header-anchor"&gt;&lt;/a&gt;対策&#10;&lt;/h3&gt;&lt;ul&gt;&#10;&lt;li&gt;Nextcloud 30 以上は、管理画面から richdocumentscode を 26.4.303 以上へ更新します。Nextcloud の&lt;a class="link" href="https://apps.nextcloud.com/apps/richdocumentscode" target="_blank" rel="noopener"&#10; &gt;アプリストア&lt;/a&gt;で、26.4.303 は Nextcloud 30 以上、35 以下に対応しています&lt;/li&gt;&#10;&lt;li&gt;Nextcloud 29 以前（サポート切れ）は、アドバイザリによれば、Nextcloud を更新するか、このアプリを削除します。26.4.303 は Nextcloud 29 では動きません&lt;/li&gt;&#10;&lt;li&gt;アプリを無効にするだけでは足りません。アドバイザリは &amp;ldquo;It is not sufficient to disable the app to avoid the problem, it must be upgraded to &amp;gt;= 26.4.303 or removed.&amp;rdquo; と書いています。理由はアドバイザリにはありませんが、WZ-IT の&lt;a class="link" href="https://wz-it.com/en/blog/nextcloud-built-in-code-server-cve-2026-110447-rce-webshell/" target="_blank" rel="noopener"&#10; &gt;解説&lt;/a&gt;は、無効にしてもファイルが外から届く場所に残るためだと説明しています&lt;/li&gt;&#10;&lt;li&gt;侵害の確認は、Nextcloud の apps ディレクトリ（&lt;code&gt;apps_paths&lt;/code&gt; の設定先）にある richdocumentscode の中に、見覚えのない PHP ファイルがないかを見ます。&lt;code&gt;shx*.php&lt;/code&gt; 以外の名前もあります。Nextcloud 公式の&lt;a class="link" href="https://docs.nextcloud.com/server/latest/admin_manual/issues/code_signing.html" target="_blank" rel="noopener"&#10; &gt;整合性チェック&lt;/a&gt;の &lt;code&gt;occ integrity:check-app richdocumentscode&lt;/code&gt; も手がかりになります&lt;/li&gt;&#10;&lt;li&gt;見つかった場合、issue #354 の報告者は、Web サーバーのアカウントで読めるデータや秘密は、漏えいや改ざんの可能性があるものとして扱うよう書いています。書き手としても、データベースのパスワードなどの認証情報を入れ替えることを勧めます&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;動画の訂正です。&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;動画では、KEV の期限が追加から3日というのを「異例の短さです」と紹介しましたが、3日は現在の KEV では標準的な期限です。CISA の KEV カタログ（JSON）の &lt;code&gt;dateAdded&lt;/code&gt; と &lt;code&gt;dueDate&lt;/code&gt; から数えると、BOD 26-04 が出た2026年6月10日以降に追加された139件のうち113件が3日で、10月に追加された26件のうち23件が3日です。BOD 26-04 は forensic triage の対象に3日の期限を定めており、この CVE のエントリもその区分です。3日であること自体が、この CVE の攻撃の激しさを示すわけではありません（&lt;a class="link" href="https://www.cisa.gov/sites/default/files/feeds/known_exploited_vulnerabilities.json" target="_blank" rel="noopener"&#10; &gt;KEV カタログ&lt;/a&gt;、&lt;a class="link" href="https://www.cisa.gov/news-events/directives/bod-26-04-prioritizing-security-updates-based-risk" target="_blank" rel="noopener"&#10; &gt;BOD 26-04&lt;/a&gt;）。&lt;/li&gt;&#10;&lt;li&gt;動画では、Nextcloud 29 以前の場合を「アプリを完全にアンインストールするしかありません」と紹介しましたが、Collabora のアドバイザリは &amp;ldquo;Users of EOL Nextcloud &amp;lt;= 29 should upgrade their Nextcloud or remove this app.&amp;rdquo; と書いており、Nextcloud 自体を更新する選択肢もあります（&lt;a class="link" href="https://github.com/CollaboraOnline/online/security/advisories/GHSA-g3vx-3m76-fghh" target="_blank" rel="noopener"&#10; &gt;アドバイザリ&lt;/a&gt;）。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="2-systemd-が-rust-で書いたプログラムのビルドに対応--pr-44324-が10月24日にマージ"&gt;&lt;a href="#2-systemd-%e3%81%8c-rust-%e3%81%a7%e6%9b%b8%e3%81%84%e3%81%9f%e3%83%97%e3%83%ad%e3%82%b0%e3%83%a9%e3%83%a0%e3%81%ae%e3%83%93%e3%83%ab%e3%83%89%e3%81%ab%e5%af%be%e5%bf%9c--pr-44324-%e3%81%8c10%e6%9c%8824%e6%97%a5%e3%81%ab%e3%83%9e%e3%83%bc%e3%82%b8" class="header-anchor"&gt;&lt;/a&gt;2. systemd が Rust で書いたプログラムのビルドに対応 — PR #44324 が10月24日にマージ&#10;&lt;/h2&gt;&lt;p&gt;systemd は、Rust で書いたプログラムをビルドできるようにする変更を、&lt;a class="link" href="https://github.com/systemd/systemd/pull/44324" target="_blank" rel="noopener"&#10; &gt;PR #44324&lt;/a&gt; で main に取り込みました。マージは UTC の10月24日 6:21（日本時間 15:21）で、題名は &amp;ldquo;rust: support programs written in Rust&amp;rdquo; です。Rust 対応は任意で、PR の説明によれば &lt;code&gt;-Drust=&lt;/code&gt; の既定は auto です。この時点でマージされた Rust 製プログラムはまだありません。&lt;/p&gt;&#10;&lt;h3 id="5つの制約"&gt;&lt;a href="#5%e3%81%a4%e3%81%ae%e5%88%b6%e7%b4%84" class="header-anchor"&gt;&lt;/a&gt;5つの制約&#10;&lt;/h3&gt;&lt;p&gt;PR の説明と、マージ時点の &lt;a class="link" href="https://github.com/systemd/systemd/blob/021112961bd64aec54a1f1e6a6c8fda8b732b705/docs/CODING_STYLE.md" target="_blank" rel="noopener"&#10; &gt;CODING_STYLE.md&lt;/a&gt; から、制約を5つ挙げます。&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;Cargo は使いません。PR の説明は &amp;ldquo;No cargo. Everything is built with meson.&amp;rdquo; と書いています。Meson は、systemd が以前から使っているビルドシステムです&lt;/li&gt;&#10;&lt;li&gt;外部のクレートは使いません。Rust のコードは &lt;code&gt;no_std&lt;/code&gt; で、リポジトリの中にある &lt;code&gt;systemd_shared&lt;/code&gt; クレートが共通の部品を提供します&lt;/li&gt;&#10;&lt;li&gt;使ってよい標準のクレートも絞られています。PR の説明は &amp;ldquo;Only the core, alloc and libc crates.&amp;rdquo; と書く一方、同じ説明が &amp;ldquo;like the kernel we don&amp;rsquo;t use alloc either&amp;rdquo; とも書き、CODING_STYLE.md は &amp;ldquo;Only the &lt;code&gt;core&lt;/code&gt; and &lt;code&gt;libc&lt;/code&gt; crates are permitted. &lt;code&gt;std&lt;/code&gt;, &lt;code&gt;alloc&lt;/code&gt; and any other crate are not&amp;rdquo; と書いています。マージされた規則では alloc は禁止です&lt;/li&gt;&#10;&lt;li&gt;systemd の他の部分とは C リンケージだけでつなぎます&lt;/li&gt;&#10;&lt;li&gt;Rust を使うのは、他から依存されない新しい独立プログラム（leaf component）だけです。既存の C コードは、CODING_STYLE.md によれば当面は Rust に書き換えません&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;h3 id="慎重な設計になった経緯"&gt;&lt;a href="#%e6%85%8e%e9%87%8d%e3%81%aa%e8%a8%ad%e8%a8%88%e3%81%ab%e3%81%aa%e3%81%a3%e3%81%9f%e7%b5%8c%e7%b7%af" class="header-anchor"&gt;&lt;/a&gt;慎重な設計になった経緯&#10;&lt;/h3&gt;&lt;p&gt;提案者は Christian Brauner 氏で、最初の提案は RFC の &lt;a class="link" href="https://github.com/systemd/systemd/pull/43551" target="_blank" rel="noopener"&#10; &gt;PR #43551&lt;/a&gt;（8月27日、UTC）でした。10月20日（UTC）に閉じられ、#44324 に出し直されています。PR #44324 の説明は、メンテナーが Berlin のハッカソンで合意した方針に沿って作り直したものだと書いています。&lt;/p&gt;&#10;&lt;p&gt;#43551 では、次の懸念が出ていました。&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Cargo と crates.io の依存関係をたどるサプライチェーンの問題と、ビルド時に任意のコードが走る build.rs の仕組みです。GitHub ハンドル bluca の&lt;a class="link" href="https://github.com/systemd/systemd/pull/43551#issuecomment-5445121831" target="_blank" rel="noopener"&#10; &gt;コメント&lt;/a&gt;にあります。crates.io は Cargo の既定のレジストリで、build.rs は Cargo がビルドの直前に実行するスクリプトです&lt;/li&gt;&#10;&lt;li&gt;共有ライブラリのサポートがないことです。GitHub ハンドル daandemeyer の&lt;a class="link" href="https://github.com/systemd/systemd/pull/43551#issuecomment-5449592164" target="_blank" rel="noopener"&#10; &gt;コメント&lt;/a&gt;は、これを大きな問題だと書いています。bluca は、標準ライブラリに安定した ABI がないことを挙げています&lt;/li&gt;&#10;&lt;li&gt;Cargo の文化への懸念です。Lennart Poettering 氏は&lt;a class="link" href="https://github.com/systemd/systemd/pull/43551#issuecomment-5660679501" target="_blank" rel="noopener"&#10; &gt;コメント&lt;/a&gt;の冒頭で Rust の採用には概ね賛成の立場を示したうえで、&amp;ldquo;I am concerned about Cargo&amp;rsquo;s ecosystem and culture&amp;rdquo; と書き、&amp;ldquo;I have serious issues with accepting that for systemd&amp;rdquo; と続けています。さらに、PR が Cargo を認めない形なら &amp;ldquo;I guess I could get behind that&amp;rdquo; とも書いています&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;同じ日の次のコメントで氏は、&amp;ldquo;no crates for now, as long as the culture is how it is&amp;rdquo;（文化が今のままの間はクレートを使わない）ことと、共有ライブラリの境界をすべて C にすることを提案しています。今回の制約は、この懸念を踏まえた形といえます。&lt;/p&gt;&#10;&lt;h3 id="安全面と大きさ"&gt;&lt;a href="#%e5%ae%89%e5%85%a8%e9%9d%a2%e3%81%a8%e5%a4%a7%e3%81%8d%e3%81%95" class="header-anchor"&gt;&lt;/a&gt;安全面と大きさ&#10;&lt;/h3&gt;&lt;p&gt;&lt;a class="link" href="https://github.com/systemd/systemd/blob/021112961bd64aec54a1f1e6a6c8fda8b732b705/docs/HACKING.md" target="_blank" rel="noopener"&#10; &gt;HACKING.md&lt;/a&gt; によれば、&lt;code&gt;systemd_shared&lt;/code&gt; の &lt;code&gt;Box&lt;/code&gt; と &lt;code&gt;Vec&lt;/code&gt; は、メモリの確保に失敗するとエラーを返します。鍵やパスフレーズ用には、解放や移動の前にメモリを消去する Erasing アロケーターがあります。プログラムは &lt;code&gt;-C panic=abort&lt;/code&gt; と、整数オーバーフローの検査を有効にしてビルドされます。&lt;/p&gt;&#10;&lt;p&gt;大きさは、出典によって数値が違います。PR の説明文では、ストリップ後の test-cli-rust が LTO ありで 32 KB、C 版が 20 KB です。同じ PR が追加した HACKING.md では、test-cli-rust が 29 KB（LTO ありで 24 KB）、C 版が 16 KB で、文書は &amp;ldquo;not much bigger&amp;rdquo; と説明しています。&lt;/p&gt;&#10;&lt;h3 id="第1号と読者に関わる範囲"&gt;&lt;a href="#%e7%ac%ac1%e5%8f%b7%e3%81%a8%e8%aa%ad%e8%80%85%e3%81%ab%e9%96%a2%e3%82%8f%e3%82%8b%e7%af%84%e5%9b%b2" class="header-anchor"&gt;&lt;/a&gt;第1号と、読者に関わる範囲&#10;&lt;/h3&gt;&lt;p&gt;第1号の Rust 製プログラムとして予定されている systemd-keyring-setup は、&lt;a class="link" href="https://github.com/systemd/systemd/pull/44114" target="_blank" rel="noopener"&#10; &gt;PR #44114&lt;/a&gt; の説明によれば、起動時に X.509 証明書をカーネルのキーリングに登録します。2026年10月26日の確認時点で、この PR は未マージです。PR の説明は、このサービスを既定では有効にしないと書いています。v263 に入るかどうかは、一次資料では確認できませんでした。Rust 対応のビルド基盤そのものは、&lt;a class="link" href="https://github.com/systemd/systemd/blob/main/NEWS" target="_blank" rel="noopener"&#10; &gt;NEWS&lt;/a&gt; の &amp;ldquo;CHANGES WITH 263 in spe&amp;rdquo; に載っています。&lt;/p&gt;&#10;&lt;p&gt;一般のユーザーは、Rust 製のプログラムが出荷されて各ディストリビューションが対応するまで、変化はほぼありません。パッケージを作る側は注意が要ります。PR の説明は、Arch と openSUSE の OBS（Open Build Service）のビルドが、&lt;code&gt;--auto-features=enabled&lt;/code&gt; でビルドしているのに rustc と bindgen を引き込まないため失敗すると書き、&lt;code&gt;-Drust=disabled&lt;/code&gt; にするか、両方をビルド依存に加えるよう求めています。NEWS によれば、Rust 対応には rustc 1.85 以上と bindgen 0.71.1 以上が要ります。&lt;/p&gt;&#10;&lt;p&gt;動画の訂正です。&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;動画では、使える基本部品を「coreとallocとlibcの3つに絞る」と紹介し、画面にも「core / alloc / libc のみ」と出しましたが、マージされた CODING_STYLE.md は core と libc のみを許可し、alloc は禁止しています。PR の説明も、alloc は使わないと書いています（&lt;a class="link" href="https://github.com/systemd/systemd/blob/021112961bd64aec54a1f1e6a6c8fda8b732b705/docs/CODING_STYLE.md" target="_blank" rel="noopener"&#10; &gt;CODING_STYLE.md&lt;/a&gt;、&lt;a class="link" href="https://github.com/systemd/systemd/pull/44324" target="_blank" rel="noopener"&#10; &gt;PR #44324&lt;/a&gt;）。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="3-obs-studio-330--ブラウザ部品-cef-が-chromium-127-から-150-へ"&gt;&lt;a href="#3-obs-studio-330--%e3%83%96%e3%83%a9%e3%82%a6%e3%82%b6%e9%83%a8%e5%93%81-cef-%e3%81%8c-chromium-127-%e3%81%8b%e3%82%89-150-%e3%81%b8" class="header-anchor"&gt;&lt;/a&gt;3. OBS Studio 33.0 — ブラウザ部品 CEF が Chromium 127 から 150 へ&#10;&lt;/h2&gt;&lt;p&gt;&lt;a class="link" href="https://github.com/obsproject/obs-studio/releases/tag/33.0.0" target="_blank" rel="noopener"&#10; &gt;OBS Studio 33.0.0&lt;/a&gt; の安定版は、GitHub の公開が UTC の10月23日 22:20、日本時間では10月24日 7:20 です。前の 32.2.0 は&lt;a class="link" href="https://blog.fuga.jp/posts/2026-07-23-linux-oss-trend/" target="_blank" rel="noopener"&#10; &gt;7月23日の記事&lt;/a&gt;で取り上げました。&lt;/p&gt;&#10;&lt;h3 id="cef-の更新"&gt;&lt;a href="#cef-%e3%81%ae%e6%9b%b4%e6%96%b0" class="header-anchor"&gt;&lt;/a&gt;CEF の更新&#10;&lt;/h3&gt;&lt;p&gt;ブラウザソースを描画しているのは、Chromium を他のアプリに組み込むための CEF（Chromium Embedded Framework）です。リリースノートは &amp;ldquo;Updated CEF from 127/6533 to 150/7871&amp;rdquo; と書いています（&lt;a class="link" href="https://github.com/obsproject/obs-studio/pull/13900" target="_blank" rel="noopener"&#10; &gt;PR #13900&lt;/a&gt;、UTC の2026年9月18日にマージ）。&lt;/p&gt;&#10;&lt;p&gt;Chromium 127 の安定版は&lt;a class="link" href="https://chromiumdash.appspot.com/fetch_milestone_schedule?mstone=127" target="_blank" rel="noopener"&#10; &gt;2024年7月23日&lt;/a&gt;、Chromium 150 の安定版は&lt;a class="link" href="https://chromiumdash.appspot.com/fetch_milestone_schedule?mstone=150" target="_blank" rel="noopener"&#10; &gt;2026年6月30日&lt;/a&gt;で、約1年11か月の差です。リリースノートは &amp;ldquo;from the July 2024 release to September 2026&amp;rdquo; と書いていますが、これは OBS に取り込まれた時期まで含めた言い方です。&lt;/p&gt;&#10;&lt;p&gt;更新が滞っていた理由は、OBS の &lt;a class="link" href="https://github.com/obsproject/obs-studio/discussions/3853" target="_blank" rel="noopener"&#10; &gt;Discussion #3853&lt;/a&gt; に説明があります。OBS 31（2024年12月）は Chromium 127 でした。CEF 128 で Chromium runtime が既定になり、従来の Alloy runtime が完全に削除されたため、OBS は Chrome Runtime への対応が必要でした。同じ場所で、WizardCM 氏は &amp;ldquo;Thanks to fantastic work by @reitowo and others&amp;rdquo; と書き、共有テクスチャの実装などの貢献に触れています。&lt;a class="link" href="https://github.com/obsproject/obs-browser/pull/523" target="_blank" rel="noopener"&#10; &gt;obs-browser PR #523&lt;/a&gt; は、CEF/Chrome の 128 から 150 までに完全に対応したと書いています。&lt;/p&gt;&#10;&lt;p&gt;リリースノートは、これを &amp;ldquo;a massive update to the underlying framework used for browser sources and docks&amp;rdquo; と呼び、&amp;ldquo;All of this work is on the backend and should be invisible to users&amp;rdquo; と書いたうえで、&amp;ldquo;Please be sure to report any new weirdness or problems you run into with browser sources!&amp;rdquo; と呼びかけています。リリース候補は3回で、rc1 が UTC の10月9日、rc2 が10月16日、rc3 が10月20日です。新しい JavaScript・CSS・WebRTC の機能が使えるようになる、という説明はリリースノートにはありません。Chromium が更新される以上、ブラウザソースで使える Web 技術も新しくなる、というのは書き手の説明です。&lt;/p&gt;&#10;&lt;p&gt;大事な配信の前は、手元でオーバーレイの表示を確かめてから更新するのが無難です。戻す場合の候補は、直前の安定版の 32.2.2（UTC の8月14日公開）です。これは公式の推奨ではなく、書き手の助言です。設定のバックアップも忘れずに取ります。&lt;/p&gt;&#10;&lt;h3 id="arm64-windows-の-nvenc"&gt;&lt;a href="#arm64-windows-%e3%81%ae-nvenc" class="header-anchor"&gt;&lt;/a&gt;ARM64 Windows の NVENC&#10;&lt;/h3&gt;&lt;p&gt;リリースノートは &amp;ldquo;Enabled NVENC on Arm64&amp;rdquo; と書いています（&lt;a class="link" href="https://github.com/obsproject/obs-studio/pull/13827" target="_blank" rel="noopener"&#10; &gt;PR #13827&lt;/a&gt;）。PR の作者が動作を確かめたのは Windows on Arm です。32.2.2 の時点では、ビルドの設定で NVENC が x64 に限られていました。NVENC のプラグインには H.264・HEVC・AV1 の項目がありますが、使えるコーデックは GPU によって変わります。GPU のエンコーダーに任せられるようになるのは、ARM 版 Windows に NVIDIA の GPU がある場合です。&lt;/p&gt;&#10;&lt;h3 id="プラグインの置き場所"&gt;&lt;a href="#%e3%83%97%e3%83%a9%e3%82%b0%e3%82%a4%e3%83%b3%e3%81%ae%e7%bd%ae%e3%81%8d%e5%a0%b4%e6%89%80" class="header-anchor"&gt;&lt;/a&gt;プラグインの置き場所&#10;&lt;/h3&gt;&lt;p&gt;リリースノートは、プラグイン読み込みの全面的な見直しとして、公式のプラグインを core という新しいフォルダに置き、他者製のプラグインは配置場所とフォルダ構成が変わると書いています。&lt;a class="link" href="https://obsproject.com/kb/legacy-plugin-locations" target="_blank" rel="noopener"&#10; &gt;Knowledge Base&lt;/a&gt; によれば、Windows の新しい配置は &lt;code&gt;C:\ProgramData\obs-studio\plugins\example-plugin\example-plugin.dll&lt;/code&gt; で、旧来の配置は &lt;code&gt;bin\64bit\&lt;/code&gt; の下に置く形です。旧来の場所のプラグインは、リリースノートによれば OBS Studio 34.0 になるまで（&amp;ldquo;until OBS Studio 34.0&amp;rdquo;）読み込まれ、プラグインマネージャーに Legacy と表示されます。KB は macOS の配置は変わらず、Linux は &amp;ldquo;Details coming soon&amp;rdquo; と書いています。なお KB の冒頭には、現時点では KB へのリンクを控えてほしいという注意書きがあります。&lt;/p&gt;&#10;&lt;p&gt;開発者向けには、libnsgif が 1.0.0 になり、gs_image_file を使うプラグインに修正が必要な破壊的変更が入っています。Linux では、&amp;ldquo;Removed support for Ubuntu 24.04&amp;rdquo; とあり、33.0.0 の公式の Ubuntu 向け .deb は 26.04 用だけです。&lt;/p&gt;&#10;&lt;p&gt;動画の訂正です。&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;動画では、Chromium の更新を「2024年7月ごろから2026年9月ごろまで、約2年3か月分」と紹介し、画面にも「2024年7月 → 2026年9月 相当」と出しましたが、Chromium 127 の安定版は2024年7月23日、Chromium 150 の安定版は2026年6月30日で、間は約1年11か月です。OBS のリリースノートの &amp;ldquo;July 2024 release to September 2026&amp;rdquo; は、OBS が Chromium 150 を取り込んだ時期まで含めた言い方です（&lt;a class="link" href="https://chromiumdash.appspot.com/fetch_milestone_schedule?mstone=127" target="_blank" rel="noopener"&#10; &gt;Chromium 127&lt;/a&gt;、&lt;a class="link" href="https://chromiumdash.appspot.com/fetch_milestone_schedule?mstone=150" target="_blank" rel="noopener"&#10; &gt;Chromium 150&lt;/a&gt;、&lt;a class="link" href="https://github.com/obsproject/obs-studio/pull/13900" target="_blank" rel="noopener"&#10; &gt;PR #13900&lt;/a&gt;）。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="4-rust-製リンカー-wild-011--カーネルモジュールのリンクwasm-標準有効スレッド上限-32"&gt;&lt;a href="#4-rust-%e8%a3%bd%e3%83%aa%e3%83%b3%e3%82%ab%e3%83%bc-wild-011--%e3%82%ab%e3%83%bc%e3%83%8d%e3%83%ab%e3%83%a2%e3%82%b8%e3%83%a5%e3%83%bc%e3%83%ab%e3%81%ae%e3%83%aa%e3%83%b3%e3%82%afwasm-%e6%a8%99%e6%ba%96%e6%9c%89%e5%8a%b9%e3%82%b9%e3%83%ac%e3%83%83%e3%83%89%e4%b8%8a%e9%99%90-32" class="header-anchor"&gt;&lt;/a&gt;4. Rust 製リンカー Wild 0.11 — カーネルモジュールのリンク、Wasm 標準有効、スレッド上限 32&#10;&lt;/h2&gt;&lt;p&gt;リンカーは、部品ごとに機械語へ翻訳されたものを、実行できる1つのファイルにまとめる道具です。&lt;a class="link" href="https://github.com/wild-linker/wild/releases/tag/0.11.0" target="_blank" rel="noopener"&#10; &gt;Wild 0.11.0&lt;/a&gt; は、UTC の10月24日 4:21（日本時間 13:21）に公開されました。&lt;/p&gt;&#10;&lt;h3 id="速さの目安"&gt;&lt;a href="#%e9%80%9f%e3%81%95%e3%81%ae%e7%9b%ae%e5%ae%89" class="header-anchor"&gt;&lt;/a&gt;速さの目安&#10;&lt;/h3&gt;&lt;p&gt;Wild の 0.3.0 の &lt;a class="link" href="https://github.com/wild-linker/wild/blob/0.3.0/README.md" target="_blank" rel="noopener"&#10; &gt;README&lt;/a&gt; には、2024年11月30日時点の Wild の測定が載っていました。rustc-driver のリンクが、Wild で 486 ms、mold 2.34.1 で 946 ms、lld 18.1.8 で 1601 ms、GNU ld 2.38 で 20774 ms でした。4コア8スレッドのノート PC で、&lt;code&gt;--strip-debug&lt;/code&gt; を付けた条件です。この表は、0.11.0 の README にはありません。0.11 の速さではなく、2024年11月の時点の数値です。&lt;/p&gt;&#10;&lt;p&gt;この数値で1日に200回リンクすると、GNU ld との差は (20.774 − 0.486) 秒 × 200 回 ≒ 4058 秒、約1.1時間です。これは書き手の試算で、毎回 rustc-driver 級のリンクをする、という前提を置いています。&lt;/p&gt;&#10;&lt;h3 id="011-の変更"&gt;&lt;a href="#011-%e3%81%ae%e5%a4%89%e6%9b%b4" class="header-anchor"&gt;&lt;/a&gt;0.11 の変更&#10;&lt;/h3&gt;&lt;ul&gt;&#10;&lt;li&gt;カーネルモジュール。リリースノートは &amp;ldquo;Wild now supports enough of the linker script syntax that it can link Linux kernel modules and is close to being able to link the Linux kernel itself.&amp;rdquo; と書いています。カーネルのビルドは、&lt;a class="link" href="https://github.com/wild-linker/wild/blob/0.11.0/LINKER_SCRIPT_SUPPORT.md" target="_blank" rel="noopener"&#10; &gt;対応表&lt;/a&gt;によれば、リンカースクリプトの豊富な機能を使います。リリースノートには、PHDRS 表の中の FILEHDR / PHDRS（#2314）や、式の中の ASSERT の解析（#2402）などが並びます。カーネル本体は、リリースノートの言葉で &amp;ldquo;close to being able to link&amp;rdquo; の段階です&lt;/li&gt;&#10;&lt;li&gt;Wasm。リリースノートは &amp;ldquo;The Wasm feature is now enabled by default&amp;rdquo; と書き、デバッグ情報はまだ未対応だと注記しています&lt;/li&gt;&#10;&lt;li&gt;スレッド数。リリースノートは、上書きしない限り 32 に制限し、Linux の inode ごとのロックの競合による性能低下を避けると書いています。&lt;a class="link" href="https://github.com/wild-linker/wild/pull/2670" target="_blank" rel="noopener"&#10; &gt;PR #2670&lt;/a&gt; の作者は、64コア128スレッドの EPYC で、32スレッドを超えると改善せず、約40を超えると大きく悪化したと書いています。ロックの種類の記述は、リリースノート（per-inode mutex）と PR（per-inode page cache spinlock）で違います&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="プロジェクトの現在地"&gt;&lt;a href="#%e3%83%97%e3%83%ad%e3%82%b8%e3%82%a7%e3%82%af%e3%83%88%e3%81%ae%e7%8f%be%e5%9c%a8%e5%9c%b0" class="header-anchor"&gt;&lt;/a&gt;プロジェクトの現在地&#10;&lt;/h3&gt;&lt;p&gt;Wild は、Rust Foundation の告知（&lt;a class="link" href="https://rustfoundation.org/media/welcoming-wild-to-the-rust-innovation-lab/" target="_blank" rel="noopener"&#10; &gt;2026年6月30日付&lt;/a&gt;）によれば Rust Innovation Lab に加わり、David Lattimore 氏がリードメンテナーです。開発は AWS が財政面で支えています。0.11.0 のリリースノートは、Rust Innovation Lab 経由の支援者として AWS と OpenAI を挙げています。&lt;/p&gt;&#10;&lt;p&gt;GCC は、16.1（2026年4月30日リリース）の&lt;a class="link" href="https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/Link-Options.html" target="_blank" rel="noopener"&#10; &gt;マニュアル&lt;/a&gt;に &lt;code&gt;-fuse-ld=wild&lt;/code&gt; があります。Gentoo と Alpine には Wild のパッケージがありますが、確認した時点の収録版は 0.8.0 でした。&lt;/p&gt;&#10;&lt;h3 id="誰に向く道具か"&gt;&lt;a href="#%e8%aa%b0%e3%81%ab%e5%90%91%e3%81%8f%e9%81%93%e5%85%b7%e3%81%8b" class="header-anchor"&gt;&lt;/a&gt;誰に向く道具か&#10;&lt;/h3&gt;&lt;p&gt;Wild の README は冒頭で &amp;ldquo;a linker with the goal of being very fast for iterative development&amp;rdquo; と書き、Rust Foundation の告知も、主な目標は開発中の反復の速さだと書いています。手元の開発ループを速くする道具として試すのが向いています。使い方は &lt;a class="link" href="https://github.com/wild-linker/wild/blob/0.11.0/USAGE.md" target="_blank" rel="noopener"&#10; &gt;USAGE.md&lt;/a&gt; にあります。&lt;/p&gt;&#10;&lt;p&gt;動画の訂正です。&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;動画では、リンカースクリプトに「今回追加された命令には、プログラムヘッダーの配置を指示するPHDRSや、条件を確かめるASSERTなどがあります」と紹介しましたが、PHDRS コマンドも ASSERT 文も 0.10.0 の時点で対応済みです。0.11.0 で加わったのは、PHDRS 表の中の FILEHDR / PHDRS キーワード（#2314）と、式の中の ASSERT の解析（#2402）です（&lt;a class="link" href="https://github.com/wild-linker/wild/blob/0.10.0/LINKER_SCRIPT_SUPPORT.md" target="_blank" rel="noopener"&#10; &gt;0.10.0 の対応表&lt;/a&gt;、&lt;a class="link" href="https://github.com/wild-linker/wild/releases/tag/0.11.0" target="_blank" rel="noopener"&#10; &gt;0.11.0 のリリースノート&lt;/a&gt;）。&lt;/li&gt;&#10;&lt;li&gt;動画では「GCC側でもWildに対応するパッチが提案されていて」と紹介しましたが、GCC 16.1（2026年4月30日リリース）のマニュアルにはすでに &lt;code&gt;-fuse-ld=wild&lt;/code&gt; が載っています。提案段階の話ではなく、取り込み済みです（&lt;a class="link" href="https://gcc.gnu.org/onlinedocs/gcc-16.1.0/gcc/Link-Options.html" target="_blank" rel="noopener"&#10; &gt;GCC 16.1 のマニュアル&lt;/a&gt;、&lt;a class="link" href="https://github.com/wild-linker/wild/blob/0.11.0/USAGE.md" target="_blank" rel="noopener"&#10; &gt;Wild の USAGE.md&lt;/a&gt;）。&lt;/li&gt;&#10;&lt;li&gt;動画では「本番のビルドには従来のリンカーを使うよう推奨されています」と紹介しましたが、この趣旨の文言は 0.5.0 の README にあったもので、2025年9月26日のコミットで削除されています。0.11.0 の README、FAQ、USAGE.md に同趣旨の推奨はありません（&lt;a class="link" href="https://github.com/wild-linker/wild/blob/0.5.0/README.md" target="_blank" rel="noopener"&#10; &gt;0.5.0 の README&lt;/a&gt;、&lt;a class="link" href="https://github.com/wild-linker/wild/blob/0.11.0/README.md" target="_blank" rel="noopener"&#10; &gt;0.11.0 の README&lt;/a&gt;）。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="5-node2shell--nodejs-同梱の-brotlicve-2026-111497-の修正版は10月21日"&gt;&lt;a href="#5-node2shell--nodejs-%e5%90%8c%e6%a2%b1%e3%81%ae-brotlicve-2026-111497-%e3%81%ae%e4%bf%ae%e6%ad%a3%e7%89%88%e3%81%af10%e6%9c%8821%e6%97%a5" class="header-anchor"&gt;&lt;/a&gt;5. Node2Shell — Node.js 同梱の Brotli、CVE-2026-111497 の修正版は10月21日&#10;&lt;/h2&gt;&lt;p&gt;Node.js に同梱された Brotli デコーダーに、範囲外書き込みの脆弱性が見つかりました。番号は &lt;a class="link" href="https://nvd.nist.gov/vuln/detail/CVE-2026-111497" target="_blank" rel="noopener"&#10; &gt;CVE-2026-111497&lt;/a&gt; です。Node.js の&lt;a class="link" href="https://nodejs.org/en/blog/vulnerability/october-2026-security-releases" target="_blank" rel="noopener"&#10; &gt;セキュリティリリース&lt;/a&gt;は、&amp;ldquo;A flaw in the Brotli decoder bundled with Node.js allows malformed compressed input to write past the end of an internal decoder buffer.&amp;rdquo; と書き、node:zlib で展開する Brotli データを攻撃者が渡せれば、クラッシュ、プロセスのメモリの漏えい、リモートコード実行につながりうると説明しています。&lt;/p&gt;&#10;&lt;h3 id="深刻度"&gt;&lt;a href="#%e6%b7%b1%e5%88%bb%e5%ba%a6" class="header-anchor"&gt;&lt;/a&gt;深刻度&#10;&lt;/h3&gt;&lt;p&gt;NVD の CVSS v4.0 は 9.2（Critical）で、採点者は CVE の発行元の Google（cve-coordination@google.com）です。NVD 自身の分析は、2026年10月26日時点で &amp;ldquo;Awaiting Analysis&amp;rdquo; です。Node.js の公式は、重大度を High と書いています。数値と重大度の尺度が違うだけで、矛盾ではありません。この CVSS v4.0 の 9.2 は、1本目の CVE-2026-110447 とは別の採点です。&lt;/p&gt;&#10;&lt;p&gt;Node2Shell は、セキュリティ企業 Imperva のレッドチームが付けた名前です。Imperva の&lt;a class="link" href="https://www.imperva.com/blog/node2shell-from-brotli-data-to-remote-code-execution/" target="_blank" rel="noopener"&#10; &gt;ブログ&lt;/a&gt;によれば、公式の Node.js 24.22.0 の Linux arm64 イメージで、細工した Brotli データを渡すと、アプリがそのデータの中のコードを実行しました。毎回成功したわけではなく、同じ入力は 24.22.1 では拒否されました。結果はこの環境でのもので、すべてのビルドやアプリを試したわけではないとも書いています。&lt;/p&gt;&#10;&lt;h3 id="原因"&gt;&lt;a href="#%e5%8e%9f%e5%9b%a0" class="header-anchor"&gt;&lt;/a&gt;原因&#10;&lt;/h3&gt;&lt;p&gt;Node.js のセキュリティリリースは、無効なブロックの切り替えが、恒久的なフォーマットエラーではなく、一時的な「入力が足りない」として報告されたため、ストリーミングデコーダーが8バイトの内部バッファへ入力を追記し続けた、と説明しています。修正は、上流の&lt;a class="link" href="https://github.com/google/brotli/commit/0ed4268a4401abcb4472096340477cf4af7d1a2b" target="_blank" rel="noopener"&#10; &gt;google/brotli のコミット 0ed4268&lt;/a&gt; です。DecodeBlockTypeAndLength が、ブロックの種類が1つなのに切り替えが要求されたとき、&lt;code&gt;BROTLI_FALSE&lt;/code&gt;（入力待ちと同じ戻り値）を返していた箇所を、&lt;code&gt;BROTLI_DECODER_ERROR_FORMAT_BLOCK_SWITCH&lt;/code&gt; を返すように直しています。&lt;/p&gt;&#10;&lt;p&gt;このコミットは2026年2月27日付で、メッセージは &amp;ldquo;Detect and report invalid stream earlier.&amp;rdquo; だけです。CVE やセキュリティの語は含まれません。上流の修正版 1.0.10・1.1.1・1.2.1 の公開は、UTC の10月21日（日本時間 10月22日 4:27 前後）です。NVD によれば、影響は Brotli の 1.0.3 から 1.2.0 までです。&lt;/p&gt;&#10;&lt;h3 id="経路"&gt;&lt;a href="#%e7%b5%8c%e8%b7%af" class="header-anchor"&gt;&lt;/a&gt;経路&#10;&lt;/h3&gt;&lt;p&gt;経路ごとに、帰属を分けて整理します。&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;自分のコードが直接展開する場合。Node.js のセキュリティリリースが挙げる経路で、node:zlib で信頼できない入力を展開していれば対象です&lt;/li&gt;&#10;&lt;li&gt;リクエスト本文。Imperva が検証したのは、Express 5.0.0〜5.3.0、body-parser 2.0.0〜2.3.0 です。ただし Imperva は、&amp;ldquo;The vulnerable code is in Node.js&amp;rdquo; と書き、この範囲は検証した時点の最新までです。body-parser が Brotli に対応したのは&lt;a class="link" href="https://github.com/expressjs/body-parser/blob/master/HISTORY.md" target="_blank" rel="noopener"&#10; &gt;2.0.0&lt;/a&gt;で、10月22日公開の 2.4.0 にも Brotli を展開する処理が残っています。Express 4 系と body-parser 1 系の標準のパーサーは Brotli を展開しないため、この経路の対象外です。脆弱なのは Node.js 側で、Express や body-parser はその入口になりうる、という位置づけです&lt;/li&gt;&#10;&lt;li&gt;fetch のレスポンス。Node.js 24.22.1 に同梱された undici のソースは、HTTPS の URL では &lt;code&gt;accept-encoding&lt;/code&gt; に &lt;code&gt;br, gzip, deflate&lt;/code&gt; を付けます。接続先のサーバーが悪意のある Brotli データを返す場合に限り、対象になります。乗っ取られた API や悪意のあるサイトにつなぐ可能性があるかどうかが、判断の目安です&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;レスポンス側について、Vercel の&lt;a class="link" href="https://vercel.com/kb/bulletin/node-js-security-advisory" target="_blank" rel="noopener"&#10; &gt;アドバイザリ&lt;/a&gt;は、同社の WAF の対象は同社のネットワークを通る通信で、関数が他のサーバーから取得するレスポンスは対象外だと説明しています。&lt;/p&gt;&#10;&lt;h3 id="対策-1"&gt;&lt;a href="#%e5%af%be%e7%ad%96-1" class="header-anchor"&gt;&lt;/a&gt;対策&#10;&lt;/h3&gt;&lt;ul&gt;&#10;&lt;li&gt;修正版は、10月21日に出た 26.12.1、24.22.1、22.23.4 です。Node.js のブログは、この脆弱性が 26.x、24.x、22.x に影響すると書き、修正を出したのもこの3系列です&lt;/li&gt;&#10;&lt;li&gt;Node.js プロジェクトからの修正が出ないのは、20系以前だけではありません。21・23・25 系も同じです。リリーススケジュール（&lt;a class="link" href="https://github.com/nodejs/Release/blob/main/schedule.json" target="_blank" rel="noopener"&#10; &gt;schedule.json&lt;/a&gt;）では、20系は2026年4月30日、21系は2024年6月1日、23系は2025年6月1日、25系は2026年6月1日でサポートが終了しています。Node.js のブログは &amp;ldquo;End-of-Life versions are always affected when a security release occurs&amp;rdquo; と書いています。ディストリビューションや商用サポートの提供元が別に修正を出す場合はあるので、使っている提供元の案内も確認します&lt;/li&gt;&#10;&lt;li&gt;npm の brotli パッケージは、&amp;ldquo;A port of the Brotli compression algorithm as used in WOFF2&amp;rdquo; と説明される別の実装で、今回の同梱ライブラリとは別物です。Imperva は &amp;ldquo;Complete remediation requires updating Node.js.&amp;rdquo; と書いています&lt;/li&gt;&#10;&lt;li&gt;コンテナは、Imperva の助言に沿って、各イメージやホストの中の Node.js のバージョンを確かめ、ベースイメージを更新して作り直します&lt;/li&gt;&#10;&lt;li&gt;すぐに更新できない場合、Imperva は、信頼できない Brotli のトラフィックを一時的に制限するよう助言しています。リバースプロキシで Brotli のリクエストを拒否するのは、その具体例の1つで、書き手の助言です。Node.js のブログには回避策の記載がなく、この方法は fetch で受け取るレスポンスを防げないため、部分的です&lt;/li&gt;&#10;&lt;li&gt;確かめるには、&lt;code&gt;node -p process.version&lt;/code&gt; で、動かしている Node.js のバージョンを見ます&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="周辺の情報"&gt;&lt;a href="#%e5%91%a8%e8%be%ba%e3%81%ae%e6%83%85%e5%a0%b1" class="header-anchor"&gt;&lt;/a&gt;周辺の情報&#10;&lt;/h3&gt;&lt;p&gt;Python の Brotli パッケージも、GitHub の&lt;a class="link" href="https://github.com/advisories/GHSA-9v8h-qqgm-4m35" target="_blank" rel="noopener"&#10; &gt;アドバイザリ&lt;/a&gt;では影響を受け、brotli は 1.2.1、brotlicffi は 1.2.1.0 で修正されたと書かれています。Bun は、自身のリポジトリの &lt;a class="link" href="https://github.com/oven-sh/bun/issues/46352" target="_blank" rel="noopener"&#10; &gt;issue #46352&lt;/a&gt; で、この CVE の修正が入っていないと認め、&lt;a class="link" href="https://github.com/oven-sh/bun/pull/46392" target="_blank" rel="noopener"&#10; &gt;PR #46392&lt;/a&gt; で Brotli を更新しました。&lt;a class="link" href="https://bun.com/blog/bun-v1.4.4" target="_blank" rel="noopener"&#10; &gt;Bun 1.4.4&lt;/a&gt; は、UTC の10月22日の公開です。&lt;/p&gt;&#10;&lt;p&gt;2026年10月26日に確認した CISA の KEV カタログ（catalogVersion 2026.10.23）には、CVE-2026-111497 は載っていません。NVD の記録にある CISA の SSVC 評価（10月23日付）は、悪用を &amp;ldquo;none&amp;rdquo; としています。&lt;/p&gt;&#10;&lt;p&gt;動画の訂正はありません。&lt;/p&gt;&#10;&lt;h2 id="まとめ"&gt;&lt;a href="#%e3%81%be%e3%81%a8%e3%82%81" class="header-anchor"&gt;&lt;/a&gt;まとめ&#10;&lt;/h2&gt;&lt;p&gt;Nextcloud の内蔵 CODE Server は、26.4.303 以上への更新か削除が必要です。無効にするだけでは足りません。連邦機関の期限が10月26日でも、民間の事業者や個人の期限ではありません。systemd は、Cargo を使わず、外部クレートも使わず、新しい独立プログラムだけに Rust を使う形で、ビルドに対応しました。OBS Studio 33.0 は、大事な配信の前に手元で確かめてから更新するのが安全です。Wild 0.11 は、カーネルモジュールをリンクできるところまで来ましたが、開発中の反復を速くする道具という位置づけです。Node.js は、22.23.4、24.22.1、26.12.1 以降への更新が必要で、修正の出ない系列は 20 以前だけではありません。&lt;/p&gt;&#10;&lt;p&gt;5本に共通する「同梱された部品を知っておく」という見方は、書き手の考察です。&lt;/p&gt;&#10;&lt;p&gt;まず確かめることを挙げます。&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Nextcloud の richdocumentscode が入っているかを確かめ、26.4.303 以上へ更新するか削除し、apps ディレクトリの中の不審な PHP ファイルを探す&lt;/li&gt;&#10;&lt;li&gt;動いている Node.js のバージョンを &lt;code&gt;node -p process.version&lt;/code&gt; で確かめ、22.23.4、24.22.1、26.12.1 以降に更新する。20系以前と 21・23・25 系は、移行先を考える&lt;/li&gt;&#10;&lt;li&gt;OBS Studio を 33.0 に上げる前に、オーバーレイの表示を手元で確かめる。旧来の場所に置いたプラグインがあれば、新しい配置に対応しているかを確かめる&lt;/li&gt;&#10;&lt;li&gt;systemd のパッケージを作る側は、&lt;code&gt;--auto-features=enabled&lt;/code&gt; でビルドしているなら、Rust の道具を揃えるか &lt;code&gt;-Drust=disabled&lt;/code&gt; で明示する&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="参考リンク"&gt;&lt;a href="#%e5%8f%82%e8%80%83%e3%83%aa%e3%83%b3%e3%82%af" class="header-anchor"&gt;&lt;/a&gt;参考リンク&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;&lt;a class="link" href="https://nvd.nist.gov/vuln/detail/CVE-2026-110447" target="_blank" rel="noopener"&#10; &gt;NVD: CVE-2026-110447&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a class="link" href="https://github.com/CollaboraOnline/online/security/advisories/GHSA-g3vx-3m76-fghh" target="_blank" rel="noopener"&#10; &gt;Collabora のアドバイザリ（GHSA-g3vx-3m76-fghh）&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a class="link" href="https://github.com/CollaboraOnline/richdocumentscode/issues/354" target="_blank" rel="noopener"&#10; &gt;richdocumentscode の issue #354&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a class="link" href="https://www.cisa.gov/sites/default/files/feeds/known_exploited_vulnerabilities.json" target="_blank" rel="noopener"&#10; &gt;CISA の KEV カタログ（JSON）&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a class="link" href="https://github.com/systemd/systemd/pull/44324" target="_blank" rel="noopener"&#10; &gt;systemd の PR #44324&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a class="link" href="https://github.com/obsproject/obs-studio/releases/tag/33.0.0" target="_blank" rel="noopener"&#10; &gt;OBS Studio 33.0.0 のリリースノート&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a class="link" href="https://github.com/wild-linker/wild/releases/tag/0.11.0" target="_blank" rel="noopener"&#10; &gt;Wild 0.11.0 のリリースノート&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a class="link" href="https://nodejs.org/en/blog/vulnerability/october-2026-security-releases" target="_blank" rel="noopener"&#10; &gt;Node.js のセキュリティリリース（2026年10月21日）&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a class="link" href="https://www.imperva.com/blog/node2shell-from-brotli-data-to-remote-code-execution/" target="_blank" rel="noopener"&#10; &gt;Imperva の Node2Shell の解説&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;（2026/10/26 Linux・OSSトレンド）&lt;/p&gt;&#10;</description></item></channel></rss>