プラットフォーム
nodejs
コンポーネント
highcharts
修正版
9.0.1
9.0.0
CVE-2021-29489は、Highcharts 8以前のバージョンに存在するクロスサイトスクリプティング(XSS)脆弱性です。この脆弱性は、悪意のあるHTMLコードがユーザーのブラウザで実行される可能性があり、機密情報の漏洩や不正な操作につながる可能性があります。影響を受けるバージョンはHighcharts 8以前です。バージョン9.0.0へのアップデートで修正されています。
この脆弱性を悪用されると、攻撃者はHighchartsのチャート設定に悪意のあるHTMLコードを挿入できます。useHTMLフラグが有効になっている場合、このコードはそのままDOMに挿入され、ユーザーのブラウザで実行されます。攻撃者は、このコードを使用して、ユーザーのCookieを盗んだり、ユーザーを悪意のあるWebサイトにリダイレクトしたり、ユーザーの代わりにアクションを実行したりする可能性があります。特に、信頼できないソースからのチャート設定を使用している場合、この脆弱性のリスクは高まります。HTMLエンティティの置き換えなどの手法を用いて、useHTMLがfalseの場合でも悪意のあるコードを挿入することが可能です。
この脆弱性は、2021年5月6日に公開されました。現時点では、この脆弱性を悪用した具体的な攻撃事例は報告されていませんが、XSS脆弱性は一般的に悪用される可能性が高いため、注意が必要です。CISA KEVカタログへの登録状況は確認されていません。公開されているPoCは確認されていません。
エクスプロイト状況
EPSS
0.20% (42% パーセンタイル)
CVSS ベクトル
この脆弱性への最も効果的な対策は、Highchartsをバージョン9.0.0以降にアップデートすることです。アップデートできない場合は、信頼できないソースからのチャート設定の使用を避けるようにしてください。WAF(Web Application Firewall)を導入し、XSS攻撃を検知・防御することも有効です。また、入力値のサニタイズやエスケープ処理を徹底し、悪意のあるHTMLコードがチャート設定に挿入されないようにする必要があります。Highchartsのチャート設定を静的な設定ファイルから読み込む、または事前にフィルタリングされたHTMLのみを使用するように構成することで、リスクを軽減できます。
Highcharts JSをバージョン9.0.0以降にアップデートしてください。アップデートできない場合は、オプション構造体にDOMPurifyを再帰的に適用して、悪意のあるマークアップをフィルタリングしてください。
脆弱性分析と重要アラートをメールでお届けします。
CVE-2021-29489は、Highcharts 8以前のバージョンに存在するクロスサイトスクリプティング(XSS)脆弱性です。悪意のあるHTMLコードがユーザーのブラウザで実行される可能性があります。
Highchartsのバージョンが8以前である場合、影響を受ける可能性があります。特に、信頼できないソースからのチャート設定を使用している場合は注意が必要です。
Highchartsをバージョン9.0.0以降にアップデートしてください。アップデートできない場合は、信頼できないソースからのチャート設定の使用を避けるようにしてください。
現時点では、この脆弱性を悪用した具体的な攻撃事例は報告されていませんが、XSS脆弱性は一般的に悪用される可能性が高いため、注意が必要です。
Highchartsの公式アドバイザリは、[https://www.highcharts.com/blog/2021/05/06/security-vulnerability-xss/](https://www.highcharts.com/blog/2021/05/06/security-vulnerability-xss/)で確認できます。