boost::asio 使用已弃用的硬编码协议¶
ID: cpp/boost/use-of-deprecated-hardcoded-security-protocol
Kind: problem
Security severity: 7.5
Severity: error
Precision: medium
Tags:
- security
- external/cwe/cwe-327
Query suites:
- cpp-security-extended.qls
- cpp-security-and-quality.qls
使用 boost::asio 库但指定了已弃用的硬编码协议。
建议¶
仅使用现代协议,例如 TLS 1.2 或 TLS 1.3。
示例¶
在以下示例中,指定了 sslv2
协议。此协议已过时,不建议使用。
void useProtocol_bad()
{
boost::asio::ssl::context ctx_sslv2(boost::asio::ssl::context::sslv2); // BAD: outdated protocol
// ...
}
在更正后的示例中,改为使用 tlsv13
协议。
void useProtocol_good()
{
boost::asio::ssl::context cxt_tlsv13(boost::asio::ssl::context::tlsv13);
// ...
}
参考¶
常见弱点枚举:CWE-327。