Linux Kernelのユーザ名前空間機能に起因する権限昇格の脆弱性(Scan Tech Report) | ScanNetSecurity
2024.03.30(土)

Linux Kernelのユーザ名前空間機能に起因する権限昇格の脆弱性(Scan Tech Report)

Linux Kernel 3.8には、ユーザ名前空間(User Namespace)機能に関連する箇所においてグループID(GID)のチェックが欠落している不備により、任意のGIDを取得可能な脆弱性が報告されました。

脆弱性と脅威 エクスプロイト
1.概要
Linux Kernel 3.8には、ユーザ名前空間(User Namespace)機能に関連する箇所においてグループID(GID)のチェックが欠落している不備により、任意のGIDを取得可能な脆弱性が報告されました。ローカルの悪意あるユーザに利用された場合、本来許可されていないGIDを取得されて任意の操作が実行される可能性があります。
本脆弱性の悪用は容易であると考えられ、環境次第では深刻な影響を受ける可能性があるため、対象のユーザは速やかに以下の対策を実施することを推奨します。


2.深刻度(CVSS)
7.2
http://nvd.nist.gov/cvss.cfm?version=2&name=CVE-2014-4014&vector=(AV:L/AC:L/AU:N/C:C/I:C/A:C)


3.影響を受けるソフトウェア
Linux Kernel 3.14.8 未満

※1 影響を受けるLinux Kernelのバージョンでユーザ名前空間を実装する多くのLinuxディストリビューションがこの脆弱性の影響を受けます。


4.解説
Linux Kernel 3.8より実装されたユーザ名前空間(User Namespace)機能はUID,GIDの空間を名前空間ごとに独立して持たせる機能を提供します。この機能により、ユーザに名前空間の中と外で異なるユーザID(UID),グループID(GID)を持たせることができます。例えば特定のユーザに対してホストOS上とコンテナ内でそれぞれ異なるUID,GIDのマッピングを行い、ユーザに異なる権限を持たせた環境を提供することができます。

chmodでsetgidビットを設定するような際、このマッピングされた権限のチェックにおいて使用されるinode_capable()関数でGIDのチェックが行われていないため、任意のGIDを取得可能な脆弱性が存在します。

このため、例えば自身が所有する特定ファイルにグループ権限がrootに付与されている(GID root)ような特定の状況下においてこの脆弱性を利用することで、ローカルの攻撃者はGID rootの権限で任意の操作が可能となり、結果としてroot権限を取得される可能性があります。


5.対策
以下の Web サイトより Linux Kernel 3.14.8 以降を入手しカーネルをアップデートすることで、この脆弱性を解消することが可能です。

https://www.kernel.org

また、Linux ディストリビューションにおいては、それぞれのベンダが提供するセキュリティアドバイザリを参考に、適切なパッケージを入手しアップデートすることで、この脆弱性を解消することが可能です。


6.ソースコード
(Web非公開)

(執筆:株式会社ラック サイバー・グリッド研究所

※Web非公開該当コンテンツ閲覧をご希望の方はScan Tech Reportにご登録(有料)下さい。

Scan Tech Report
http://scan.netsecurity.ne.jp/archives/51916302.html
《株式会社ラック デジタルペンテスト部》

関連記事

Scan PREMIUM 会員限定記事

もっと見る

Scan PREMIUM 会員限定記事特集をもっと見る

カテゴリ別新着記事

「経理」「営業」「企画」「プログラミング」「デザイン」と並ぶ、事業で成功するためのビジネスセンスが「セキュリティ」
「経理」「営業」「企画」「プログラミング」「デザイン」と並ぶ、事業で成功するためのビジネスセンスが「セキュリティ」

ページ右上「ユーザー登録」から会員登録すれば会員限定記事を閲覧できます。毎週月曜の朝、先週一週間のセキュリティ動向を総括しふりかえるメルマガをお届け。(写真:ScanNetSecurity 名誉編集長 りく)

×