ニュース

「Text4Shell」の影響が「Docker」にも拡大 ~悪用が容易な任意コード実行の脆弱性

人気の文字列処理ライブラリ「Apache Commons Text」に欠陥

「Apache Commons Text」のWebサイト

 文字列処理に関するアルゴリズムを扱うライブラリ「Apache Commons Text」に致命的な脆弱性「Text4Shell」(CVE-2022-42889)が発見され、影響の拡大が危惧されている。米Dockerによると、この脆弱性は公式の「Docker」イメージにも影響するとのこと。

 「Apache Commons Text」には、文字列に埋め込まれた変数を展開する機能が備わっている。標準的な書式は「${prefix:name}」で、「Apache Commons Text」は「prefix」をもとに変数を補完する「org.apache.commons.text.lookup.StringLookup」インスタンスを検索する。

 しかし、「Apache Commons Text」v1.5からv1.9の変数補完処理には既定で「script」や「dns」、「url」といった危険なものが含まれており、任意のコードの実行やリモートサーバーとの接続につながる可能性がある。深刻度の評価は「CVSS v3」の基本値で「9.8」(Critical)。

 以前に話題となった「Log4Shell」や「Spring4Shell」ほどの脅威ではないようだが、広く利用されているライブラリである点、悪用が極めて容易である点などは似ている。問題となっている変数補完処理を無効化した「Apache Commons Text 1.10.0」へのアップデートが必要だ。

 「Docker」イメージが「Text4Shell」の影響を受けるかどうかは、最新版「Docker Desktop」に搭載されている「docker scan」コマンドで確認できる。「Docker Hub」のセキュリティスキャンも「Text4Shell」に対応しているが、10月21日12:00(協定世界時)より前にトリガーされたものは「Text4Shell」を検出できないとのことなので注意したい。

 Docker社はまだ多くの「Docker」公式イメージに「Text4Shell」脆弱性が残されているとして、「Apache Commons Text」のアップデートに取り組むとしている。同社のセキュリティ情報も参照しながら、各自対策を怠らないようにしたい。