最新ニュース一覧

人気のカテゴリ


Jenkinsのセキュリティ欠陥修正:リモートコード実行リスク排除

Jenkinsのセキュリティ欠陥修正:リモートコード実行リスク排除 - innovaTopia - (イノベトピア)

Last Updated on 2024-07-11 06:55 by 門倉 朋宏

【ダイジェスト】

オープンソースの継続的インテグレーション/継続的デリバリー(CI/CD)自動化ソフトウェアであるJenkinsの保守者たちは、リモートコード実行(RCE)を引き起こす可能性のある重大なバグを含む9つのセキュリティ欠陥を解決しました。この問題は、CVE-2024-23897として識別され、ビルトインのコマンドラインインターフェース(CLI)を通じた任意のファイル読み取りの脆弱性として説明されています。

Jenkinsはargs4jライブラリを使用してCLIコマンドを処理する際に、Jenkinsコントローラ上でコマンド引数とオプションを解析します。このコマンドパーサーには、引数内の@文字に続くファイルパスをファイルの内容で置き換える機能(expandAtFiles)があり、デフォルトで有効になっています。Jenkins 2.441およびそれ以前、LTS 2.426.2およびそれ以前ではこの機能が無効になっていませんでした。

攻撃者はこの特性を利用して、Jenkinsコントローラのファイルシステム上の任意のファイルを読み取ることができます。”Overall/Read”権限を持つ攻撃者はファイル全体を読むことができますが、それを持たない攻撃者はCLIコマンドに応じてファイルの最初の3行を読むことができます。さらに、この欠陥は暗号鍵を含むバイナリファイルを読み取るために悪用される可能性がありますが、一定の制限があります。

バイナリの秘密が抽出できれば、Jenkinsによると、さまざまな攻撃につながる可能性があります:
– リソースルートURLを介したリモートコード実行
– “Remember me”クッキーを介したリモートコード実行
– ビルドログを通じた格納型クロスサイトスクリプティング(XSS)攻撃によるリモートコード実行
– CSRF保護のバイパスによるリモートコード実行
– Jenkinsに格納されている秘密の復号化
– Jenkins内の任意のアイテムの削除
– Javaヒープダンプのダウンロード

Jenkinsは、「バイナリデータを含むファイルが読み取られる場合、影響を受ける機能はそれらをコントローラプロセスのデフォルト文字エンコーディングを使用して文字列として読み取ろうとします。これにより、一部のバイトが正常に読み取られず、プレースホルダー値に置き換えられる可能性があります。どのバイトが読み取れるかは、この文字エンコーディングに依存します」と述べています。

セキュリティ研究者のYaniv Nizryがこの欠陥を発見し報告し、Jenkins 2.442、LTS 2.426.3でコマンドパーサー機能を無効にすることで修正されました。パッチを適用するまでの短期的な対策として、CLIへのアクセスをオフにすることが推奨されています。

この発表は、Jenkinsがターゲットシステム上でコード実行を引き起こす可能性のあるCorePlague(CVE-2023-27898およびCVE-2023-27905)と呼ばれる2つの重大なセキュリティ脆弱性に対処してからほぼ1年後のことです。

【ニュース解説】

Jenkinsは、ソフトウェア開発のプロセスを自動化するためのオープンソースのツールであり、継続的インテグレーション(CI)や継続的デリバリー(CD)のプラクティスをサポートしています。このツールは、コードの変更があるたびに自動的にビルドやテストを行い、ソフトウェアの品質を維持するのに役立ちます。しかし、最近Jenkinsにおいて、リモートコード実行(RCE)攻撃を可能にする重大なセキュリティ脆弱性が発見されました。この脆弱性はCVE-2024-23897として識別され、Jenkinsのビルトインコマンドラインインターフェース(CLI)を通じて任意のファイルを読み取ることができるというものです。

具体的には、Jenkinsがコマンド引数を解析する際に使用するargs4jライブラリにある機能が問題となっています。この機能は、引数内の@文字に続くファイルパスをそのファイルの内容で置き換えるもので、デフォルトで有効になっていました。この脆弱性を悪用すると、攻撃者はJenkinsサーバー上の任意のファイルを読み取ることが可能になり、機密情報の漏洩やさらなる攻撃の足がかりとなる恐れがあります。

この問題は、Jenkinsの新しいバージョンである2.442およびLTS 2.426.3で修正され、問題の機能が無効化されました。しかし、すべてのユーザーがすぐにアップデートを行えるわけではないため、JenkinsはCLIへのアクセスをオフにすることを短期的な対策として推奨しています。

この脆弱性の発見と報告は、セキュリティ研究者のYaniv Nizryによって行われました。Jenkinsのユーザーは、可能な限り早急にアップデートを行うことが求められています。このような脆弱性は、サイバーセキュリティのリスクを高めるだけでなく、企業の信頼性や顧客のデータを危険にさらす可能性があるため、迅速な対応が不可欠です。

このニュースは、ソフトウェアのセキュリティと維持管理の重要性を改めて浮き彫りにしています。オープンソースソフトウェアは多くの利点を持ちますが、定期的なアップデートとセキュリティパッチの適用が不可欠であることを示しています。また、開発者やシステム管理者にとって、セキュリティのベストプラクティスを常に意識し、継続的な監視と対策を行うことの重要性を教示しています。

from Critical Jenkins Vulnerability Exposes Servers to RCE Attacks – Patch ASAP!.


読み込み中…
読み込み中…