Linux Kernel の compat_sys_recvmmsg() 関数の実装に起因する権限昇格の脆弱性(Scan Tech Report) | ScanNetSecurity
2024.07.23(火)

Linux Kernel の compat_sys_recvmmsg() 関数の実装に起因する権限昇格の脆弱性(Scan Tech Report)

Linux Kernel には、recvmmsg システムコールを取り扱う際の timeout パラメータ処理に起因して、権限昇格が可能な脆弱性が存在します。

脆弱性と脅威
1.概要
Linux Kernel には、recvmmsg システムコールを取り扱う際の timeout パラメータ処理に起因して、権限昇格が可能な脆弱性が存在します。
システムにアクセス可能なローカルの悪意あるユーザに利用された場合、root 権限を取得され、システムを完全に制御される可能性があります。
Linux Kernel で x32 ABI 機能 (CONFIG_X86_X32) を有効にする環境では、脆弱性を悪用される可能性があるため、影響を受けるバージョンの Linux Kernel を利用するユーザは可能な限り以下の対策を実施することを推奨します。


2.深刻度(CVSS)
6.9
http://nvd.nist.gov/cvss.cfm?version=2&name=CVE-2014-0038&vector=%28AV%3AL/AC%3AM/Au%3AN/C%3AC/I%3AC/A%3AC%29


3.影響を受けるソフトウェア
Linux Kernel 3.4.x - 3.4.78/3.10.28/3.11.10/3.12.9/3.13.1

※1 影響を受けるバージョンの Linux Kernel が実装される openSUSE や Ubuntu などの Linux ディストリビューションもこの脆弱性の影響を受けます。


4.解説
x32 ABI (Application Binary Interface)※2 は、64 ビット環境で 32 ビットのポインタが使える機能を提供するバイナリインタフェースであり、Linux Kernel 3.4 より当該機能がサポートされています。
openSUSE や Ubuntu などの Linux ディストリビューションでは、既定で CONFIG_X86_X32 が有効 (CONFIG_X86_X32=y) になっています。

この CONFIG_X86_X32 が有効な Linux Kernel には、compat_sys_recvmmsg()関数 (net/compat.c) において、ユーザ空間から渡される timeout パラメータを適切にチェックせず、パラメータ値をそのままカーネル空間へのポインタとして処理してしまう不備があります。
このため、recvmmsg システムコールを介して、特定の関数ポインタのアドレスを指定した timeout パラメータを渡すことで、カーネルメモリ領域に任意のデータを書き込むことが可能な問題が存在します。

この脆弱性を利用することでシステムにアクセス可能なローカルの攻撃者は、root に権限昇格を行い、当該権限で任意のコマンドが実行可能となります。

※2 x32-abi
https://sites.google.com/site/x32abi/


5.対策
以下の Web サイトを参考に Linux Kernel 3.4.79/3.10.29/3.12.10/3.13.2 以降を入手しアップデートする、あるいは修正パッチを入手し適用することで、この脆弱性を解消することが可能です。

Linux Kernel:
http://www.kernel.org/

Linux Kernel linux.git 2def2ef2ae5f3990aabdbe8a755911902707d268
http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=2def2ef2ae5f3990aabdbe8a755911902707d268

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

・openSUSE 12.3/13.1
openSUSE-SU-2014:0204-1
http://lists.opensuse.org/opensuse-security-announce/2014-02/msg00002.html
openSUSE-SU-2014:0205-1
http://lists.opensuse.org/opensuse-security-announce/2014-02/msg00003.html

・Ubuntu 12.04 LTS/13.10
CVE-2014-0038
http://people.canonical.com/~ubuntu-security/cve/2014/CVE-2014-0038.html


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

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

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

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

編集部おすすめの記事

特集

脆弱性と脅威 アクセスランキング

  1. ウクライナと東京を繋げた瞬間 ~ 日本プルーフポイント 増田幸美がこだわるプレゼンテーションスライドの一枚目

    ウクライナと東京を繋げた瞬間 ~ 日本プルーフポイント 増田幸美がこだわるプレゼンテーションスライドの一枚目

  2. スマホアプリ「ピッコマ」に外部サービスの APIキーがハードコードされている問題

    スマホアプリ「ピッコマ」に外部サービスの APIキーがハードコードされている問題

  3. マイクロソフトが 7 月のセキュリティ情報公開、悪用の事実を確認済みの脆弱性が 2 件

    マイクロソフトが 7 月のセキュリティ情報公開、悪用の事実を確認済みの脆弱性が 2 件

  4. 裏目に出たサンドボックス/露北軍事同盟/MFAの穴 ほか [Scan PREMIUM Monthly Executive Summary 2024年6月度]

  5. TeamCity におけるパス文字列処理の不備に起因する認証回避の脆弱性(Scan Tech Report)

  6. スマートフォンアプリ「Lemon8」にアクセス制限不備の脆弱性

  7. Windows 版 GlobalProtect App における権限昇格につながる任意のファイル削除の脆弱性(Scan Tech Report)

  8. セキュリティホール情報<2003/05/06-1>

  9. CrowdStrike Blog:カーネル攻撃の検知と防御

  10. やけど虫の駆除方法、体液が皮膚に付いてしまった場合の対策について

アクセスランキングをもっと見る

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

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

×