プラットフォーム
nodejs
コンポーネント
xmldom
修正版
0.6.1
0.8.13
0.9.1
0.6.1
CVE-2026-34601は、@xmldom/xmldomライブラリにおけるXML構造インジェクションの脆弱性です。この脆弱性により、攻撃者が制御する文字列をCDATAセクションに挿入し、XML構造を操作することが可能になります。影響を受けるバージョンは0.6.0以下です。現在、公式な修正パッチは提供されていません。
CVE-2026-34601 は、@xmldom/xmldom において、攻撃者が制御する文字列に CDATA ターミネーター ]]> が含まれている場合に、CDATASection ノードに挿入されることを許可します。シリアル化中に、XMLSerializer はターミネーターを拒否または安全に分割せずに、CDATA コンテンツをそのまま出力しました。その結果、テキスト専用として意図されたデータが、シリアル化された出力で アクティブな XML マークアップ になり、XML 構造のインジェクションと、その結果としてのダウンストリームのビジネスロジックの操作が可能になりました。]]> シーケンスは CDATA の内部では許可されていません。
この脆弱性は、CDATASection ノード内に ]]> を含む悪意のある文字列を挿入することで悪用されます。XMLSerializer がドキュメントをシリアル化すると、]]> を誤って CDATA セクションの終了と新しい XML 要素の開始と解釈します。これにより、攻撃者はドキュメントに任意の XML 要素を挿入できます。エクスプロイトの成功は、攻撃者が @xmldom/xmldom に渡される入力を制御できる能力と、XML 出力を処理するアプリケーションの脆弱性に依存します。エクスプロイトは、ユーザーが提供する XML データを処理する Web アプリケーション、または @xmldom/xmldom を使用して XML を生成するプロセスで発生する可能性があります。
Applications built on Node.js that utilize the @xmldom/xmldom library for XML processing are at risk. This includes applications that parse XML data from external sources, such as APIs or user uploads, without proper validation. Shared hosting environments where multiple applications share the same Node.js runtime are particularly vulnerable, as a compromise of one application could potentially impact others.
• nodejs / server:
ps aux | grep xmldom
find / -name "*xmldom*" -type d -print• generic web:
curl -I <your_application_url> | grep XML
grep -r 'CDATA[[]]' /var/log/apache2/access.logdisclosure
エクスプロイト状況
EPSS
0.05% (17% パーセンタイル)
CISA SSVC
現在、CVE-2026-34601 に対する修正 (fix) は利用できません。主な軽減策は、@xmldom/xmldom を信頼できないデータの処理に使用しないことです。ライブラリの使用が不可欠な場合は、CDATASection ノードを作成する前に、すべての入力データを厳密にサニタイズすることをお勧めします。これは、ターミネーター ]]> を削除またはエスケープすることを含みます。さらに、ライブラリのより安全なバージョンが利用可能になったら、そのバージョンに更新することを検討してください。@xmldom/xmldom のセキュリティ更新を監視することは、修正が公開されたらすぐに適用するために重要です。直接的な修正がない場合、入力の検証とサニタイズが最も重要な防御策となります。
Actualizar la biblioteca xmldom a la versión 0.6.0 o superior, o a las versiones 0.8.12 o 0.9.9 o superior, según corresponda, para corregir la vulnerabilidad de inyección XML. Esto evitará que cadenas controladas por el atacante se inserten en nodos CDATASection y se interpreten como marcado XML activo.
脆弱性分析と重要アラートをメールでお届けします。
CDATA (Character Data) は、XML ドキュメント内のセクションで、マークアップ XML として解釈されるべきではないテキストを含むために使用されます。
これにより、攻撃者は XML ドキュメントの構造を変更し、ビジネスロジックの操作や、場合によってはコードの実行につながる可能性があります。
信頼できないデータの処理を避け、CDATASection ノードを作成する前に、すべての入力を厳密にサニタイズしてください。セキュリティ更新を監視してください。
直接的な修正はありません。入力のサニタイズが最良の一時的な軽減策です。
CDATASection ノード内で信頼できないデータが処理されている場所を特定するために、@xmldom/xmldom を使用するコードを調べてください。
CVSS ベクトル