我试图找出 mysql* 软件包已经修复了哪些漏洞,但令我惊讶的是,变更日志没有列出任何 CVE 编号。
当我运行时,rpm -qa --changelog package_name
它会显示所有变更日志,包括 CVE 编号等,如下所示:
[[email protected] ~]# rpm -qa --changelog kernel | grep -i cve | head -n10
- [mm] enlarge stack guard gap (Larry Woodman) [1452732 1452733] {CVE-2017-1000364}
- [fs] nfsd: stricter decoding of write-like NFSv2/v3 ops ("J. Bruce Fields") [1449282 1443204] {CVE-2017-7895}
- [fs] nfsd4: minor NFSv2/v3 write decoding cleanup ("J. Bruce Fields") [1449282 1443204] {CVE-2017-7895}
- [fs] nfsd: check for oversized NFSv2/v3 arguments ("J. Bruce Fields") [1447642 1442407] {CVE-2017-7645}
- [net] macsec: dynamically allocate space for sglist (Sabrina Dubroca) [1445546 1445545] {CVE-2017-7477}
- [net] macsec: avoid heap overflow in skb_to_sgvec (Sabrina Dubroca) [1445546 1445545] {CVE-2017-7477}
- [net] tcp: avoid infinite loop in tcp_splice_read() (Davide Caratti) [1430579 1430580] {CVE-2017-6214}
- [x86] kvm: x86: fix emulation of "MOV SS, null selector" (Radim Krcmar) [1414742 1414743] {CVE-2017-2583}
- [net] packet: fix overflow in check for tp_reserve (Hangbin Liu) [1441171 1441172] {CVE-2017-7308}
- [net] packet: fix overflow in check for tp_frame_nr (Hangbin Liu) [1441171 1441172] {CVE-2017-7308}
但是,当我运行检查 mysql* 包时,我没有列出任何 CVE 编号:
[[email protected] ~]# rpm -qa --changelog mysql* | grep -i cve
[[email protected] ~]#
我是否遗漏了某些内容,例如 yum 存储库上的任何配置等?
从 rpm 获取变更日志信息的地方,我可能需要为 mysql 包重建它吗?
是的,如果不查看内容,我确实可以看到更改日志,但当然没有任何 CVE:
[[email protected] ~]# rpm -qa --changelog mysql* | head -n10
* Wed Nov 08 2017 Bharathy Satish <[email protected]> - 5.7.21-1
- Add keyring_encrypted_file.so plugin
* Tue Oct 31 2017 Bjorn Munch <[email protected]> - 5.7.21-1
- Remove obsoleted mysqltest man pages
* Fri May 26 2017 Harin Vadodaria <[email protected]> - 5.7.19-1
- Add keyring_aws.so plugin to commercial server subpackage
* Tue Sep 13 2016 Balasubramanian Kandasamy <[email protected]> - 5.7.16-1
答案1
变更日志条目是自由格式的文本。一些软件包维护者将 CVE 放在那里。一些错误 ID。有些描述了每个 git 更改,有些只是在那里做了一个简短的总结。
您不能依赖变更日志。你必须找到其他方法。