如何確定我的 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 的 urllib 中發現了一個問題。如果攻擊者控制了一個 url 參數,CRLF 注入是可能的,正如 urllib.request.urlopen 的第一個參數與 \r\n (特別是在 URL 的主機組件中)後跟 HTTP 標頭所示。這類似於 CVE-2019-9740 查詢字元串問題和 CVE-2019-9947 路徑字元串問題。
當 glibc 修復了 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
系統已完全更新,但我沒有看到任何安全或反向移植 repo 啟用。我無法找到有關是否有 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。雖然 if 可能已在以前的版本中修復,但我還沒有找到任何方法來檢查它。
[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的changlog沒有顯示任何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 公告修復了glibc-2.28-72.el8.x86_64.rpm軟體包中的CVE- 2016-10739 https://access.redhat.com/errata/RHSA-2019:3513
但是由於這台機器是centos,版本為2.28-42.el8.1,而且RH和CentOS之間的更新檔版本似乎不同,這似乎無法幫助我確定這個盒子是否存在漏洞。
如果有人可以提供有關該系統是否易受攻擊的見解,或者為我指出正確的方向,我將不勝感激。
謝謝
遵循紅帽服務諮詢,您走在了正確的軌道上。解析 CVE/RHSA 上游的相同軟體包將針對 CentOS 發布。有時它不會那麼快可用。有一個
glibc-2.28-72.el8.x86_64.rpm
針對 CentOS 8 的建構,但它看起來還沒有被放入儲存庫。https://koji.mbox.centos.org/koji/buildinfo?buildID=4751
當儲存庫元數據還不知道 CVE 時,它對您沒有幫助。
dnf
但是,如果您要執行 CentOS 系統,您可能需要熟悉安全選項。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