Linux Kernel の脆弱性 CVE-2022-0847 が FIX:Dirty Pipe という問題とは?

Researchers Warn of Linux Kernel ‘Dirty Pipe’ Arbitrary File Overwrite Vulnerability

2022/03/07 TheHackerNews — Linux ディストリビューターたちは、任意の読み取り専用ファイルへの上書きにより、攻撃者たちにシステムの完全な乗っ取りを許す、カーネルの新たな脆弱性に対するパッチを発行しているところである。IONOS のソフトウェア開発者である Max Kellermann により、Dirty Pipe と名付けられた脆弱性 CVE-2022-0847 (CVSS:7.8) は、非特権プロセスから root プロセスにコードを注入できるため、特権拡大につながるものとなる。

Kellermann によると、このバグは、クラウド/ホスティング・プロバイダーの顧客の1人が提起した、Web サーバーのアクセス・ログの破損に関する問題を掘り下げたときに発見されようだ。この Linux カーネルの脆弱性は Ver 5.8 から存在していたとされ、2016年10月に明らかにされた Dirty Cow (CVE-2016-5195) と類似した脆弱性であると指摘されている。

Red Hat は月曜日のアドバイザリで、「Linux カーネルの copy_page_to_iter_pipe 関数と push_pipe 関数において、新しいパイプ・バッファ構造体 flags のメンバーが適切な初期化を行っていないため、古い値が含まれる可能性が生じるという欠陥が発見された」と 説明している。

Red Hat は、「この欠陥により、権限のないローカル・ユーザーが、読み取り専用ファイルにバックアップされた、ページ・キャッシュへの書き込みが可能となり、システム上での特権拡大が許されてしまう」と付け加えている。

パイプラインは、一方向のプロセス間通信メカニズムであり、一連のプロセスが連鎖的に接続され、各プロセスが前のプロセスから入力を受け取り、次のプロセスのために出力を生成する仕組みになっている。

この弱点を利用するには、パイプを作成し、パイプに任意のデータを入れ、パイプを排出し、対象の読み取り専用ファイルからデータを継ぎ合せ、パイプに任意のデータを書き込む、という手順が必要になる。

この脆弱性の悪用に成功すると、/etc/passwd などの機密ファイルを改ざんし、root ユーザー・パスワードの削除や、リモートアクセス用 SSH 鍵の追加、最高権限での任意のバイナリ実行などの、多様な悪意ある行為が可能となるため、簡単に言えば危険度の高い問題となる。

Dirty Pipe が許してしまう、もう1つの有害な行為には、脅威アクターがホスト上の1つのコンテナにアクセスできる場合に、コンテナ・イメージ内のファイルを変更するとい問題も挙げられる。Aqua Security の Rory McCune は「このようなアクセス権が存在し、カーネルのバージョンが脆弱であれば、コンテナの作成に使用されたイメージからアクセスできるファイルや、基盤となるホストから読み取り専用でマウントされているファイルの、変更が可能になってしまう」と報告書で述べている

彼は、「この脆弱性の興味深いところは、書き込み権限がなくても機能するだけでなく、不変のファイルや、読み取り専用の btrfs スナップショット、読み取り専用のマウント (CD-ROMマウントを含む) に対しても機能する点だ。つまり、ページ・キャッシュは、常にカーネルにより書き込みが可能であり、パイプへの書き込みでは、アクセス許可がチェックされたいためである」とも述べている。

この問題は、Linux カーネル・セキュリティ・チームに報告されてから3日後の、2022年2月23日において、Linux Ver 5.16.11/5.15.25/5.10.102 で修正されている。また、Google は、2022年2月24日に、Android カーネルに修正プログラムをマージしている。

このセキュリティ上の欠陥は、悪用が容易であり、また、PoC エクスプロイトが公開されている。したがってユーザーは、Linux サーバーを直ちにアップデートし、他のディストリビューターからのパッチが利用可能になり次第、それらを適用することが推奨される。

一言でいうと、異なる権限をまたいでしまうプロセスの問題となるのでしょう。Linux のような OS でも、まだ、このような欠陥が残っているのですね。パイプと言っても、ちょっと正確の異なるものになりますが、2月16日には「ポイズンド・パイプライン:CI/CD 環境における攻撃メソッドについて」という記事をポストしています。なかなか、興味深い内容となっていますので、おろしければ、ご参照ください。

%d bloggers like this: