Ubuntu 16.04 LTS / 18.04 LTS / 20.04 LTS / 22.04 LTS / 23.10 : libgit2 の脆弱性 (USN-6678-1)

critical Nessus プラグイン ID 191559

概要

リモート Ubuntu ホストに 1 つ以上のセキュリティ更新がありません。

説明

リモートの Ubuntu 16.04 LTS / 18.04 LTS / 20.04 LTS / 22.04 LTS / 23.10 ホストには、USN-6678-1 のアドバイザリに記載された複数の脆弱性の影響を受けるパッケージがインストールされています。

- libgit2 0.28.4 より前および 0.99.0 より前の 0.9x で問題が発見されました。path.c は NTFS 代替データストリームのために存在する同等のファイル名を不適切に処理します。これにより、リポジトリの複製時にリモートコード実行が可能になる場合があります。この問題は CVE-2019-1352 に類似しています。(CVE-2020-12278)

- libgit2 0.28.4 より前および 0.99.0 より前の 0.9x で問題が発見されました。checkout.c は NTFS ショートネームのために存在する同等のファイル名を不適切に処理します。これにより、リポジトリの複製時にリモートコード実行が可能になる場合があります。この問題は CVE-2019-1353 に類似しています。(CVE-2020-12279)

- libgit2 は、クロスプラットフォームの、Git のリンク可能ライブラリの実装です。オプションの libssh2 バックエンドで SSH リモートを使用する場合、libgit2 はデフォルトでは証明書チェックを実行しません。以前のバージョンの libgit2 では、呼び出し元は、libgit2 の「git_remote_callbacks」構造の「certificate_check」フィールドを設定する必要があります - 証明書チェックコールバックが設定されていない場合、libgit2 は証明書チェックを実行しません。
これは、デフォルトでは、証明書チェックコールバックを設定しないと、クライアントはサーバーの SSH キーで検証を実行せず、中間者攻撃を受ける可能性があることを意味します。ユーザーは、v1.4.5 または v1.5.1 にアップグレードすることが推奨されます。アップグレードできないユーザーは、関連するすべての証明書を手動でチェックする必要があります。(CVE-2023-22742)

- libgit2 は、堅牢な API を持つリンク可能なライブラリとして提供される Git コアメソッドのポータブルな C 実装であり、アプリケーションに Git 機能を構築することが可能です。「git_revparse_single」に対して巧妙に細工された入力を使用すると、関数が無限ループに陥る可能性があり、呼び出し元のアプリケーションでサービス拒否攻撃を引き起こす可能性があります。「src/libgit2/revparse.c」の revparse 関数は、ユーザー提供の仕様文字列を解析するためにループを使用します。解析中にエッジケースが存在し、悪意のある攻撃者がループ条件を強制して任意のメモリにアクセスする可能性があります。抽出された rev 仕様が攻撃者に反映された場合、これによりメモリが漏洩する可能性があります。このため、1.4.0 より前のバージョンの libgit2 は影響を受けません。ユーザーは、バージョン 1.6.5 または 1.7.2 にアップグレードする必要があります。(CVE-2024-24575)

- libgit2 は、堅牢な API を持つリンク可能なライブラリとして提供される Git コアメソッドのポータブルな C 実装であり、アプリケーションに Git 機能を構築することが可能です。「git_index_add」に対して巧妙に細工された入力を使用すると、ヒープ破損が発生し、任意のコード実行に利用される可能性があります。解放すべきでないエントリを解放する「src/libgit2/index.c」の「has_dir_name」関数に問題があります。解放されたエントリは後で使用されて、攻撃者が制御する可能性のあるデータで上書きされ、制御されたヒープ破損につながります。libgit2 を使用するアプリケーションによっては、これが任意のコードの実行につながる可能性があります。この問題には、バージョン 1.6.5 および 1.7.2 でパッチが適用されています。(CVE-2024-24577)

Nessus はこれらの問題をテストしておらず、代わりにアプリケーションが自己報告するバージョン番号にのみ依存していることに注意してください。

ソリューション

影響を受けるパッケージを更新してください。

参考資料

https://ubuntu.com/security/notices/USN-6678-1

プラグインの詳細

深刻度: Critical

ID: 191559

ファイル名: ubuntu_USN-6678-1.nasl

バージョン: 1.1

タイプ: local

エージェント: unix

公開日: 2024/3/5

更新日: 2024/3/6

サポートされているセンサー: Agentless Assessment, Frictionless Assessment Agent, Frictionless Assessment AWS, Frictionless Assessment Azure, Nessus Agent, Nessus

リスク情報

VPR

リスクファクター: Medium

スコア: 6.7

CVSS v2

リスクファクター: High

基本値: 7.5

現状値: 5.5

ベクトル: CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P

CVSS スコアのソース: CVE-2020-12279

CVSS v3

リスクファクター: Critical

基本値: 9.8

現状値: 8.5

ベクトル: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

現状ベクトル: CVSS:3.0/E:U/RL:O/RC:C

CVSS スコアのソース: CVE-2024-24577

脆弱性情報

CPE: cpe:/o:canonical:ubuntu_linux:16.04:-:lts, cpe:/o:canonical:ubuntu_linux:22.04:-:lts, p-cpe:/a:canonical:ubuntu_linux:libgit2-1.1, p-cpe:/a:canonical:ubuntu_linux:libgit2-26, p-cpe:/a:canonical:ubuntu_linux:libgit2-24, cpe:/o:canonical:ubuntu_linux:18.04:-:lts, cpe:/o:canonical:ubuntu_linux:23.10, p-cpe:/a:canonical:ubuntu_linux:libgit2-dev, p-cpe:/a:canonical:ubuntu_linux:libgit2-fixtures, p-cpe:/a:canonical:ubuntu_linux:libgit2-28, cpe:/o:canonical:ubuntu_linux:20.04:-:lts, p-cpe:/a:canonical:ubuntu_linux:libgit2-1.5

必要な KB アイテム: Host/cpu, Host/Ubuntu, Host/Ubuntu/release, Host/Debian/dpkg-l

エクスプロイトの容易さ: No known exploits are available

パッチ公開日: 2024/3/5

脆弱性公開日: 2024/3/5

参照情報

CVE: CVE-2020-12278, CVE-2020-12279, CVE-2023-22742, CVE-2024-24575, CVE-2024-24577

USN: 6678-1