Vulnerabilities > CVE-2019-19270 - Improper Certificate Validation vulnerability in multiple products
Attack vector
NETWORK Attack complexity
LOW Privileges required
NONE Confidentiality impact
NONE Integrity impact
HIGH Availability impact
NONE Summary
An issue was discovered in tls_verify_crl in ProFTPD through 1.3.6b. Failure to check for the appropriate field of a CRL entry (checking twice for subject, rather than once for subject and once for issuer) prevents some valid CRLs from being taken into account, and can allow clients whose certificates have been revoked to proceed with a connection to the server.
Vulnerable Configurations
Common Weakness Enumeration (CWE)
Common Attack Pattern Enumeration and Classification (CAPEC)
- Creating a Rogue Certificate Authority Certificate An attacker exploits a weakness in the MD5 hash algorithm (weak collision resistance) to generate a certificate signing request (CSR) that contains collision blocks in the "to be signed" part. The attacker specially crafts two different, but valid X.509 certificates that when hashed with the MD5 algorithm would yield the same value. The attacker then sends the CSR for one of the certificates to the Certification Authority which uses the MD5 hashing algorithm. That request is completely valid and the Certificate Authority issues an X.509 certificate to the attacker which is signed with its private key. An attacker then takes that signed blob and inserts it into another X.509 certificate that the attacker generated. Due to the MD5 collision, both certificates, though different, hash to the same value and so the signed blob works just as well in the second certificate. The net effect is that the attackers' second X.509 certificate, which the Certification Authority has never seen, is now signed and validated by that Certification Authority. To make the attack more interesting, the second certificate could be not just a regular certificate, but rather itself a signing certificate. Thus the attacker is able to start their own Certification Authority that is anchored in its root of trust in the legitimate Certification Authority that has signed the attackers' first X.509 certificate. If the original Certificate Authority was accepted by default by browsers, so will now the Certificate Authority set up by the attacker and of course any certificates that it signs. So the attacker is now able to generate any SSL certificates to impersonate any web server, and the user's browser will not issue any warning to the victim. This can be used to compromise HTTPS communications and other types of systems where PKI and X.509 certificates may be used (e.g., VPN, IPSec) .
Nessus
NASL family SuSE Local Security Checks NASL id OPENSUSE-2020-31.NASL description This update for proftpd fixes the following issues : - GeoIP has been discontinued by Maxmind (boo#1156210) This update removes module build for geoip see https://support.maxmind.com/geolite-legacy-discontinuati on-notice/ - CVE-2019-19269: Fixed a NULL pointer dereference may occur when validating the certificate of a client connecting to the server (boo#1157803) - CVE-2019-19270: Fixed a Failure to check for the appropriate field of a CRL entry prevents some valid CRLs from being taken into account (boo#1157798) - CVE-2019-18217: Fixed remote unauthenticated denial-of-service due to incorrect handling of overly long commands (boo#1154600 gh#846) Update to 1.3.6b - Fixed pre-authentication remote denial-of-service issue (Issue #846). - Backported fix for building mod_sql_mysql using MySQL 8 (Issue #824). Update to 1.3.6a : - Fixed symlink navigation (Bug#4332). - Fixed building of mod_sftp using OpenSSL 1.1.x releases (Issue#674). - Fixed SITE COPY honoring of <Limit> restrictions (Bug#4372). - Fixed segfault on login when using mod_sftp + mod_sftp_pam (Issue#656). - Fixed restarts when using mod_facl as a static module - Add missing Requires(pre): group(ftp) for Leap 15 and Tumbleweed (boo#1155834) - Add missing Requires(pre): user(ftp) for Leap 15 and Tumbleweed (boo#1155834) - Use pam_keyinit.so (boo#1144056) - Reduce hard dependency on systemd to only that which is necessary for building and installation. update to 1.3.6 : - Support for using Redis for caching, logging; see the doc/howto/Redis.html documentation. - Fixed mod_sql_postgres SSL support (Issue #415). - Support building against LibreSSL instead of OpenSSL (Issue #361). - Better support on AIX for login restraictions (Bug #4285). - TimeoutLogin (and other timeouts) were not working properly for SFTP connections (Bug#4299). - Handling of the SIGILL and SIGINT signals, by the daemon process, now causes the child processes to be terminated as well (Issue #461). - RPM .spec file naming changed to conform to Fedora guidelines. - Fix for last seen 2020-06-01 modified 2020-06-02 plugin id 132911 published 2020-01-15 reporter This script is Copyright (C) 2020 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/132911 title openSUSE Security Update : proftpd (openSUSE-2020-31) NASL family Fedora Local Security Checks NASL id FEDORA_2019-BFACF1E958.NASL description This update addresses a number of bugs affecting processing of CRLs in mod_tls, including possible NULL pointer dereferences and missing some checks. Thanks to Lionel Debroux for reporting them. Note that Tenable Network Security has extracted the preceding description block directly from the Fedora update system website. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues. last seen 2020-06-01 modified 2020-06-02 plugin id 131794 published 2019-12-09 reporter This script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/131794 title Fedora 31 : proftpd (2019-bfacf1e958) NASL family Fedora Local Security Checks NASL id FEDORA_2019-65A983B8B6.NASL description This update addresses a number of bugs affecting processing of CRLs in mod_tls, including possible NULL pointer dereferences and missing some checks. Thanks to Lionel Debroux for reporting them. Note that Tenable Network Security has extracted the preceding description block directly from the Fedora update system website. Tenable has attempted to automatically clean and format it as much as possible without introducing additional issues. last seen 2020-06-01 modified 2020-06-02 plugin id 131791 published 2019-12-09 reporter This script is Copyright (C) 2019 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/131791 title Fedora 30 : proftpd (2019-65a983b8b6)
References
- http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00009.html
- http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00009.html
- https://github.com/proftpd/proftpd/issues/859
- https://github.com/proftpd/proftpd/issues/859
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/OGBBCPLJSDPFG5EI5P5G7P4KEX7YSD5G/
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/OGBBCPLJSDPFG5EI5P5G7P4KEX7YSD5G/
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/QR65XUHPCRU3NXTSFVF2J4GWRIHC7AHW/
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/QR65XUHPCRU3NXTSFVF2J4GWRIHC7AHW/