
JavaScriptをサーバー側で動かすための基盤として世界中のWebサービスで使われている「Node.js」の開発チームは10月21日、現在サポートしている3つの系統(22.x、24.x、26.x)すべてに向けて、10件の欠陥を修正するセキュリティ更新を公開しました。
10件のうち最も深刻とされるのが、Node.jsに組み込まれている「Brotli(ブロトリ)」という圧縮データの展開(解凍)処理の不具合です。Brotliは、Webページなどのデータを小さくして送るために広く使われる圧縮方式で、受け取った側がそれを元に戻す処理にこの欠陥があります。プロジェクト側は、この欠陥が遠隔コード実行(RCE)につながりうると説明しています。遠隔コード実行とは、攻撃者が離れた場所から、狙ったコンピューター上で好きなプログラムを動かせてしまう状態のことで、セキュリティホールの中でも特に危険な部類です。
Node.jsは、自社サイトやアプリ、社内システムのバックエンドなどに幅広く使われています。外部から受け取った圧縮データを処理する機能を持つサービスでは、悪意のあるデータを送り込まれた場合に影響を受ける可能性があります。具体的にどの使い方が影響を受けるかは、公式の発表で確認する必要があります。
対策はシンプルで、Node.jsを自分で運用している場合は、使っている系統(22.x、24.x、26.x)の最新の修正版に更新することです。Dockerイメージやホスティング事業者が用意した実行環境を使っている場合は、その提供元が更新を反映しているかも確認しておきましょう。「自分のサービスがNode.jsで動いているかわからない」という場合は、開発担当者や委託先に確認するのが確実です。