セキュリティ研究者は最近、Linuxsystemdのpolkitに脆弱性を発見しました. CVE-2021-3560として識別, 欠陥は少なくとも7年間存在していたようです. polkitは多くのLinuxディストリビューションで使用されているため, 脆弱性の影響を過小評価してはなりません.
幸運, CVE-2021-3560にパッチが適用されました.
関連している: CVE-2020-28588: Linuxカーネルにおける情報開示の脆弱性
polkitの欠陥は7年間存在しています
不運にも, systemdはsudoの代わりにpolkitを利用しているので, この脆弱性により、権限のないユーザーに特権プロセスを実行する機能が付与された可能性があります. このような特権プロセスは、他の方法では実行できませんでした. 言い換えると, polkitは、脆弱なLinuxシステムへのrootアクセスを取得するために悪用された可能性があります.
公式のレッドハットアドバイザリーによると, polkitの脆弱性は、次の条件が原因で発生します:
polkit_system_bus_name_get_creds_syncの呼び出しが開始する直前に、要求しているプロセスがdbus-daemonから切断されたとき, プロセスは、プロセスの一意のuidとpidを取得できず、要求元のプロセスの特権を確認できません。. この脆弱性による最大の脅威は、データの機密性と整合性、およびシステムの可用性です。.
polkitの欠陥に対する緩和策はありますか? Red Hatの研究者は、緩和策が存在するかどうかを調査したと述べています, しかし、彼らは実際的な例を特定することができませんでした. これは、利用可能な更新をすぐに適用する必要があることを意味します.
CVE-2021-3560polkitバグの背景
CVE-2021-3560の脆弱性は、セキュリティ研究者のKevinBlackhouseによって発見されました. "数週間前, polkitに特権昇格の脆弱性が見つかりました. 脆弱性の開示をpolkitメンテナおよびRedHatのセキュリティチームと調整しました. 公開されました, 修正は6月にリリースされました 3, 2021, そしてそれはCVE-2021-3560に割り当てられました」と彼は彼の発見を詳述した記事に書いています. 彼はまた、脆弱性は悪用されやすいと警告しています.
Blackhouseが発見したバグは、7年前にcommitbfa5036で導入されました。, polkitバージョンで最初に出荷されました 0.113. 幸いなことに、最も人気のあるLinuxディストリビューションの多くは、最近まで脆弱なバージョンを出荷していませんでした。, 彼は言います.
でも, polkitバグの影響は、Debianとその派生物でははるかに異なります, Ubuntuのように. 理由? Debianは、バージョン番号付けスキームが異なるpolkitのフォークを利用しています.
「Debianフォークで, バグはコミットf81d021で導入され、最初にバージョンに同梱されました 0.105-26. Debianの最新の安定したリリース, Debian 10 (「バスター」), バージョンを使用 0.105-25, つまり、脆弱ではありません. でも, 一部のDebian派生物, Ubuntuなど, Debian不安定版に基づいています, 脆弱です,」研究者は言います.
脆弱なバージョンのリストは次のとおりです, ブラックハウスによると:
- RHEL 8;
- Fedora 21 以上;
- Debianは「ブルズアイ」をテストしています;
- Ubuntu 20.04.
polkitのバグは、「驚くほど簡単に悪用できる」ものです。悪用には、bashなどの標準ツールのみを使用してターミナルでいくつかのコマンドが必要です, 殺す, およびdbus-send. すぐに言った, polkitバージョンのシステム 0.113 (以上) インストールされている脆弱性. RedHatによると, 「この脆弱性による最大の脅威は、データの機密性と整合性、およびシステムの可用性です。” そう, できるだけ早くパッチを当てる.
より技術的な詳細はで利用可能です KevinBlackhouseのGitHubブログ.