web-dev-qa-db-ja.com

CentOS 8がCVE-2019-18348に対して脆弱かどうかを判断する方法

私は長年のLinuxシステム管理者ですが、CentOSは初めてです。このCentOSサーバーがCVE-2019-18348に対して脆弱かどうかを判断する必要があります。そのためには、インストールされているパッケージにパッチが適用されていることを確認するか、マシンの脆弱性をテストする方法を持っている必要があります。

脆弱性をテストするための信頼できる方法を見つけられなかったため、パッケージのバージョン、変更ログなどを見ていました。

最初に、脆弱性についての詳細:

CVE-2019-18348:Python 2.xから2.7.17までのurllib2およびPython 3.xから3.8.0までの。攻撃者がURLパラメータを制御している場合、CRLFインジェクションが可能です。これは、urllib.request.urlopenの最初の引数が\ r\n(特にURLのHostコンポーネント内)とそれに続くHTTPヘッダーで示されているためです。これは、 CVE-2019-9740クエリ文字列の問題とCVE-2019-9947パス文字列の問題。

GlibcでCVE-2016-10739が修正されている場合、これは悪用できません

https://nvd.nist.gov/vuln/detail/CVE-2019-18348

https://nvd.nist.gov/vuln/detail/CVE-2016-10739

ここに私のシステムのバージョンの詳細があります:

  • centos-release-8.0-0.1905.0.9.el8.x86_64
  • python36.x86_64(3.6.8-2.module_el8.0.0 + 33 + 0a10c0e1)
  • glibc 2.28-42.el8.1

システムは完全に更新されていますが、セキュリティやバックポートリポジトリが有効になっていないようです。 centosのセキュリティ更新リポジトリがあるかどうか、およびそれを有効にする方法に関する情報は見つかりませんでした。

[root@Host]# yum repolist
Last metadata expiration check: 1:37:46 ago on Fri 06 Dec 2019 07:51:08 PM UTC.
repo id     repo name                                       status
AppStream   CentOS-8 - AppStream                            5,089
BaseOS      CentOS-8 - Base                                 2,843
*epel       Extra Packages for Enterprise Linux 8 - x86_64  3,579
extras      CentOS-8 - Extras

Glibcの変更ログには、特にCVE-2019-18348がリストされていません。以前のバージョンで修正されている場合がありますが、それを確認する方法は見つかりませんでした。

[root@Host]# rpm -q --changelog glibc | grep -i cve
- Add upstream test case for CVE-2018-19591 (#1654010)
- CVE-2018-19591: File descriptor leak in if_nametoindex (#1654010)
- CVE-2018-11237: Buffer overflow in __mempcpy_avx512_no_vzeroupper (#1581275)
- CVE-2018-11236: realpath: Fix path length overflow (#1581270, swbz#22786)
- CVE-2017-18269: memory corruption in i386 memmove (#1580934)
- CVE-2017-14062, CVE-2016-6261, CVE-2016-6263:
- CVE-2018-1000001: Make getcwd fail if it cannot obtain an absolute path
- CVE-2017-16997: elf: Check for empty tokens before DST expansion (#1526866)
- CVE-2017-1000409: Count in expanded path in _dl_init_path (#1524867)
- CVE-2017-1000408: Compute correct array size in _dl_init_paths (#1524867)
- CVE-2017-17426: malloc: Fix integer overflow in tcache (swbz#22375)
- CVE-2017-15804: glob: Fix buffer overflow during GLOB_TILDE unescaping
- CVE-2017-15670: glob: Fix one-byte overflow (#1504807)
- Use execveat syscall in fexecve (swbz#22134)

pythonの変更ログにはCVEは表示されませんが、「rhbz」番号はredhat bugzillaであると想定しています。RHのサブスクリプションがいくつかありますが、表示を許可するのに十分ではないようですこれらのアイテムの詳細。

[root@Host]# rpm -q --changelog python36 | grep -i resolves
- Resolves: rhbz#1695587
- Resolves: rhbz#1658271
- Resolves: rhbz#1654867
- Resolves: rhbz#1633534
- Resolves: rhbz#1633534
- Resolves: rhbz#1633561
- Resolves: rhbz#1633534
- Resolves: rhbz#1632637
- Resolves: rhbz#1633534
- Resolves: rhbz#1615727

このRed Hadアドバイザリ修正CVE-2016-10739がパッケージglibc-2.28-72.el8.x86_64.rpmに含まれていますhttps://access.redhat.com/errata/RHSA-2019:351

しかし、このマシンはcentosであり、バージョン2.28-42.el8.1であり、RHとCentOSの間のパッチバージョンが異なるように見えるため、このボックスが脆弱であるかどうかを判断するのに役立ちません。

このシステムが脆弱であるかどうかについて洞察を提供できるか、正しい方向に私を向けることができれば、私は本当にそれを感謝します。

ありがとう

4
user1522091

Red Hat Service Advisoryに従って、順調に進んでいます。 CVE/RHSAアップストリームを解決する同じパッケージがCentOS用にリリースされます。時にはそれはすぐには利用できません。 CentOS 8用のglibc-2.28-72.el8.x86_64.rpm用のビルドがありますが、まだリポジトリに組み込まれていないようです。

https://koji.mbox.centos.org/koji/buildinfo?buildID=4751


リポジトリメタデータがまだCVEを認識していない場合は役に立ちません。ただし、CentOSシステムを実行する場合は、dnfのセキュリティオプションに慣れることをお勧めします。

DNF(8)                                                                           DNF                                                                           DNF(8)

NAME
       dnf - DNF Command Reference

...
       --cve=<cves>
              Includes  packages  that  fix a CVE (Common Vulnerabilities and Exposures) ID (http://cve.mitre.org/about/), Eg. CVE-2201-0123. Applicable for install,
              repoquery, updateinfo, and upgrade command.
...
       --security
              Includes packages that provides a fix for security issue. Applicable for upgrade command.

例:

dnf updateinfo list --cve=CVE-2016-10739
5
Aaron Copley

以下の構文を使用して、CVE情報が表示された場合、システムは脆弱です。出力がない場合は準拠しています。

yum updateinfo info --cve CVE-2019-18348
0
Reda Salih