Skip to content

Insecure SSL configuration in node-libcurl

Description

Disabling `SSL_VERIFYPEER` or `SSL_VERIFYHOST` can lead to serious security risks, including man-in-the-middle (MITM) attacks. Always ensure these checks are enabled.

Examples

Insecure Code

javascript
const { Curl } = require('node-libcurl');
const curl = new Curl();
curl.setOpt('SSL_VERIFYPEER', 0);
curl.setOpt('SSL_VERIFYHOST', 0);

Secure Code

javascript
const { Curl } = require('node-libcurl');
const curl = new Curl();
curl.setOpt('SSL_VERIFYPEER', 1);
curl.setOpt('SSL_VERIFYHOST', 2);

Remediation

Use `SSL_VERIFYPEER = 1` or `true` and `SSL_VERIFYHOST = 2`

Rule Details

FieldValue
IDCODE-0256
CategoryInsecureConfig
SeverityMEDIUM
CWECWE-599
ConfidenceHIGH
ImpactHIGH
LikelihoodMEDIUM
ExploitabilityEASY
TagsSSL, TLS, MITM
OWASPA05:2021-Security Misconfiguration