つみかさね

CVE-2026-33066

Critical(9)

CVE-2026-33066 — SiYuan renderREADME 未サニタイズ HTML に よる リモートコード 実行

公開日: 2026-03-24データソース: NVD, GitHub Advisory

影響を受けるソフトウェア

製品ベンダー影響バージョン
SiYuansiyuan-note<= 3.6.0
CVESiYuanXSSRCEMarkdownCWE-79

概要

SiYuan は ローカル ファースト の 個人 ナレッジ マネジメント システム です。バージョン 3.6.0 以前 に おいて、パッケージ の README ファイル を レンダリング する renderREADME 関数 に クロスサイト スクリプティング(CWE-79)の 脆弱性 が 存在 します。この 脆弱性 は CVSS スコア 9.0 の Critical と 評価 されて います。

renderREADME 関数 は、Go 言語 の Markdown パーサー で ある lute を 使用 して パッケージ の README ファイル を HTML に 変換 して います。しかし、lute.New() を 呼び出す 際 に SetSanitize(true) が 設定 されて いない ため、Markdown 内 に 記述 された 生 の HTML タグ が サニタイズ されず に そのまま HTML 出力 に 含まれます。さらに、フロントエンド 側 で は、この レンダリング 結果 を innerHTML に 直接 代入 して いる ため、HTML エスケープ が 一切 行われません。

この 二重 の サニタイズ 不備 に より、悪意 の ある パッケージ 作者 が README ファイル に JavaScript コード を 埋め込む こと が 可能 です。ユーザー が SiYuan の パッケージ マネージャー(Bazaar)で その パッケージ の README を 閲覧 した 時点 で、埋め込まれた スクリプト が 実行 されます。SiYuan は Electron ベース で あり、nodeIntegration: true の 設定 で 動作 する ため、XSS は 直接 リモートコード 実行(RCE)に エスカレート します。攻撃者 は ファイル システム へ の アクセス、任意 コマンド の 実行、ユーザー データ の 窃取 など が 可能 と なります。

この 攻撃 は ソーシャル エンジニアリング 的 な 要素 を 含みますが、パッケージ の README を 閲覧 する と いう 日常的 な 操作 で トリガー される ため、ユーザー が 気づく こと は 困難 です。信頼 できない パッケージ ソース に 注意 が 必要 です。

CVSS ベクトル

項目
CVSS スコア9.0
深刻度Critical
CWECWE-79(クロスサイト スクリプティング)
攻撃元ネットワーク
影響機密性 高 / 完全性 高 / 可用性 高

影響 を 受ける ソフトウェア

製品影響 バージョン修正 バージョン
SiYuan3.6.0 以前3.6.1

修正 バージョン と 回避策

SiYuan バージョン 3.6.1 で は、renderREADME 関数 に おいて SetSanitize(true) が 有効化 され、Markdown 内 の 生 HTML が 適切 に サニタイズ される よう に 修正 されて います。速やか に バージョン 3.6.1 以降 に アップデート して ください。すぐ に アップデート できない 場合 は、SiYuan の Bazaar(パッケージ マーケットプレイス)から の パッケージ インストール を 控え、信頼 できない パッケージ の README を 閲覧 しない よう に して ください。ネットワーク レベル で SiYuan の パッケージ リポジトリ へ の アクセス を 制限 する こと も 暫定 的 な 対策 と なります。

関連 リンク


データソース: NVD (NIST), GitHub Advisory Database AI解説 は Claude API に より 自動生成 されています。正確性 に ついては 原文 を ご確認 ください。

Xでシェアはてブ
データソース: NVD (NIST), OSV (Google), GitHub Advisory Database, JVN iPedia (IPA/JPCERT/CC)
AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。