Dogtag's pki.client.PKIConnection class disables python-requests certificate validation. The argument `verify=False` means that no certificate validation is performed at all [2]. The client accepts any certificate. Since the verify parameter is hard-coded in all request functions, it is not possible to override the setting. PKIConnection should use requests default settings (verify with default certs) and offer an API to override default CA certs or disable requests. [2] https://requests.readthedocs.io/en/master/user/advanced/#ssl-cert-verification
Acknowledgments: Name: Christian Heimes
Created pki-core tracking bugs for this issue: Affects: fedora-all [bug 1855854]
Upstream fix : https://github.com/dogtagpki/pki/commit/50c23ec146ee9abf28c9de87a5f7787d495f0b72
Statement: In PKI, the pki.client.PKIConnection python class is used by the `pki-server` and `pkispawn` commands. `pki-server` runs locally on the server, thus not subject to a Person in the Middle attack. `pkispawn` may access remote node in decentralized or cloned contexts. Identity Management (IPA) command line interface (the vault related sub-commands) may call pki.client.PKIConnection().
This bug is now closed. Further updates for individual products will be reflected on the CVE page(s): https://access.redhat.com/security/cve/cve-2020-15720
This issue has been addressed in the following products: Red Hat Enterprise Linux 8 Via RHSA-2020:4847 https://access.redhat.com/errata/RHSA-2020:4847