Missing certification authority list
Certificate for authentication cannot be trusted
Description
This defect occurs when you use a context to handle TLS/SSL connections with these functions, but you do not load a certification authority (CA) list into the context.
SSL_connectSSL_acceptSSL_do_handshakeSSL_writeSSL_readBIO_do_connectBIO_do_acceptBIO_do_handshake
A CA is a trusted third party entity that issues digital certificates to other entities. The certificate contains information about its owner. Server or clients use this information to authenticate connections to the certificate owner.
The checker raises a defect if:
For server authentication, the client has no CA list to determine whether the server certificate is from a trusted source.
For client authentication, the server has no CA list to determine whether the client certificate is from a trusted source.
Risk
Without a CA list, you cannot determine if the certificate is issued by a trusted CA. The entity that presents the certificate for authentication might not be the entity described in the certificate. Your connection is vulnerable to man-in-the-middle (MITM) attacks.
Fix
Load a certification authority list into the context you create to handle TLS/SSL connections.
Examples
Result Information
| Group: Cryptography |
| Language: C | C++ |
| Default: Off |
Command-Line Syntax:
CRYPTO_SSL_NO_CA |
| Impact: Medium |
Version History
Introduced in R2019b
See Also
Find defects
(-checkers) | Missing X.509 certificate
Topics
- Interpret Bug Finder Results in Polyspace Desktop User Interface
- Address Results in Polyspace User Interface Through Bug Fixes or Justifications
- Interpret Bug Finder Results in Polyspace Access Web Interface (Polyspace Access)
- Address Results in Polyspace Access Through Bug Fixes or Justifications (Polyspace Access)