こんにちは。SIOS OSSエバンジェリスト/セキュリティ担当の面 和毅です。
06/21/2019にlibvirtの複数の脆弱性情報(Important: CVE-2019-10161, CVE-2019-10166, CVE-2019-10167, CVE-2019-10168)が公開されています。今回はこれらの脆弱性の概要と、各ディストリビューションの対応について簡単にまとめてみます。
一次情報源
https://bugzilla.redhat.com/show_bug.cgi?id=1720115″> Bug 1720115 (CVE-2019-10161) – CVE-2019-10161 libvirt: arbitrary file read/exec via virDomainSaveImageGetXMLDesc API
Priority
- CVE-2019-10161
Important
- Red Hat
- CVSS v3 Base Score: 8.8 High
- Vector: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
- CVE-2019-10166
Important
- Red Hat
- CVSS v3 Base Score: 7.8 High
- Vector: CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H
- CVE-2019-10167
Important
- Red Hat
- CVSS v3 Base Score: 8.8 High
- Vector: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
- CVE-2019-10168
Important
- Red Hat
- CVSS v3 Base Score: 8.8 High
- Vector: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
修正方法
各ディストリビューションの情報を確認してください。
CVE概要(詳細はCVEのサイトをご確認ください)
- Bug 1720115 (CVE-2019-10161) – CVE-2019-10161 libvirt: arbitrary file read/exec via virDomainSaveImageGetXMLDesc API
- ファイル存在の検査、又はDoSの可能性
- 重要度 – Important
- libvirtdに、Read-onlyクライアントがlibvirtdプロセスがアクセス可能な任意のパスに対してvirDomainSaveImageGetXMLDesc() APIの使用を許可してしまうという問題が見つかりました。libvirtdソケットにアクセス可能な攻撃者はこれを利用して、ファイルの存在を検査したり、libvirtdが任意のプログラムを実行できるようにDoSを引き起こす事が可能です。
- Bug 1720114 (CVE-2019-10166) – CVE-2019-10166 libvirt: virDomainManagedSaveDefineXML API exposed to readonly clients
- 任意のプログラムを実行できる可能性
- 重要度 – Important
- Read-onlyのクライアントが、Managed Saveのファイルを変更する権限をもつvirDomainManagedSaveDefineXML() APIを使用出来るという問題が見つかりました。Managed saveが特権ユーザにより既に作らている場合、ローカルの攻撃者はこのファイルを変更してlibvirtdが任意のプログラムを実行できるようにすることが可能です。
- Bug 1720117 (CVE-2019-10167) – CVE-2019-10167 libvirt: arbitrary command execution via virConnectGetDomainCapabilities API
- 任意のプログラムを実行できる可能性
- 重要度 – Important
- libvirt APIのvirConnectGetDomainCapabilities()は、”emulatorbin”引数でドメインに対して提供するエミュレーションのプログラムを許可しています。v1.2.19からは、libvirtはドメインのケーパビリティを探すためにプログラムを実行します。Read-onlyのクライアントは任意のパスをこの引数に指定することで、libvirtdに細工されたものをその権限で実行させることが可能です。
- Bug 1720118 (CVE-2019-10168) – CVE-2019-10168 libvirt: arbitrary command execution via virConnectBaselineHypervisorCPU and virConnectCompareHypervisorCPU APIs
- 任意のプログラムを実行できる可能性
- 重要度 – Important
- libvirt APIの virConnectBaselineHypervisorCPU()とvirConnectCompareHypervisorCPU()は、”emulatorbin”引数でドメインに対して提供するエミュレーションのプログラムを許可しています。v1.2.19からは、libvirtはドメインのケーパビリティを探すためにプログラムを実行します。Read-onlyのクライアントは任意のパスをこの引数に指定することで、libvirtdに細工されたものをその権限で実行させることが可能です。
主なディストリビューションの対応方法
詳細は、各ディストリビューションの提供元にご確認ください
- Debian
https://security-tracker.debian.org/tracker/CVE-2019-10161
https://security-tracker.debian.org/tracker/CVE-2019-10166
- Red Hat Enterprise Linux/CentOS
https://access.redhat.com/security/cve/CVE-2019-10161
https://access.redhat.com/security/cve/CVE-2019-10166
- Ubuntu
https://people.canonical.com/~ubuntu-security/cve/2019/CVE-2019-10161.html
https://people.canonical.com/~ubuntu-security/cve/2019/CVE-2019-10166.html
https://people.canonical.com/~ubuntu-security/cve/2019/CVE-2019-10167.html
https://people.canonical.com/~ubuntu-security/cve/2019/CVE-2019-10168.html
- SUSE/openSUSE
https://www.suse.com/security/cve/CVE-2019-10161.html
https://www.suse.com/security/cve/CVE-2019-10166.html
- Arch
対処方法
各ディストリビューションの案内に従い、アップデートを行ってください。全てのRed Hat製品でパッチが行き渡っているかを確認するには、Red Hat SatelliteやKatello、Spacewalk等を使うと管理が便利でしょう。
セキュリティ系連載案内
- OSSセキュリティ技術の会による日経Linuxでの連載「IoT時代の最新SELinux入門」がITPro上で読めるようになりました。技術の会代表で第一人者である中村さん等による、最新のSELinuxの情報やコマンド類等も更新されているのでお薦めです。
- OSSセキュリティ技術の会によるThinkITでの連載「開発者のためのセキュリティ実践講座」がThinkIT上で開始しました。技術の会の中の人間で、最新の代表的なOSSセキュリティ技術を紹介していきます。
- OSSセキュリティ技術の会により、ThinkITでLinuxSecuritySummit 2018のレポートが紹介されています。
- OSSセキュリティ技術の会の面により、@ITで「OSS脆弱性ウォッチ」が連載されています。
- OSSセキュリティ技術の会の面により、@ITで「OpenSCAPで脆弱性対策はどう変わる?」が連載されています。
- OSSセキュリティ技術の会のメンバーにより、@ITで「Berkeley Packet Filter(BPF)入門」が連載されています。
セミナー情報1
2019/07/31 10:00-17:00で開催される、一般社団法人 日本情報システム・ユーザ協会(JUAS)様による有料ハンズオンセミナー「ハンズオンで学ぶ!クラウド時代の運用管理とセキュリティ対策 」にて当ブログの筆者「面 和毅」が講師を努めます。
本セミナーでは、大手ベンダーや外資系企業、ユーザー企業などでセキュリティの専門家として20年以上の経験を持ち、現在、セキュリティエバンジェリストとして活躍する講師が実体験を交えながら、クラウド上のサーバーを安価に守る方法を、演習をまじえ、具体的にお伝えします。
https://juasseminar.jp/seminars/view/4119290にて申し込みを行っております。奮ってご参加ください。
セミナー情報2
2019/07/23 18:30-20:30で、「再演「やってはイケナイ」をやってみよう」セミナーを行います。
このセミナーは前回の「「やってはイケナイ」をやってみよう」セミナーの再演で、実際に色々な「やってはイケナイ」をデモを交えて行い、実際にどのような問題が発生するのかを確認し、その様な万が一の場合を防ぐために行っておくべき対策を紹介していきます。
https://sios.connpass.com/event/134622/がプログラム内容と申し込みの詳細になります。奮ってご参加下さい。