何が起きたか
SiYuanのvalidateAssetUploadPathsは、不完全な機密パスブラックリスト(GHSA-p23f-cm6q-2qp8の不完全な修正)に依存しており、.envやその他の秘密を含むファイルが省略されています。エージェント向けMCPアセットアップロードアクションを駆動する攻撃者は、ホストユーザーの~/.envなどのローカルファイルをワークスペースのdata/assetsディレクトリにコピーでき、その後サーバーがそのファイルをHTTP(GET /assets/<name>)で返し、MCPツールをローカルファイル読み取りのオラクルに変えます。
なぜ重要か
このチェーンは完全にエージェント的に到達可能で、ファイルシステムアクセスは不要です:SiYuanのMCPサーバーと通信するエージェントを操ることができる攻撃者は、ホストのホームディレクトリの秘密(.env、.env.local、~/Library/** Keychain、Windows AppData)を読み取り、ワークスペースのHTTPルートを通じてそれらを外部に持ち出すことができます(CWE-22/CWE-200、CVSS 6.2)。
攻撃経路
MCPアセットアップロードアクションを、/home/<user>/.envなどの絶対パスで駆動します;サーバーはそれをワークスペースにコピーし、認証済みHTTPで返します。
影響を受けるシステム
SiYuan 3.8.7より前(MCPアセットアップロードツール)。
緩和策
SiYuan 3.8.7にアップグレードしてください;正しい修正は、読み取り時に拒否し、オペレーターが許可したワークスペースルート下のパスのみを受け入れることであり、名前ブラックリストを拡張することではありません。