Registry Mode Socket Firewall Fails to Verify TLS Certificates, Allowing Man-in-the-Middle
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Socket | Socket Firewall | unaffected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Socketdev | Firewall |
|
Vendor Solution
Upgrade to Socket Firewall 2.0.0 or later, where api_ssl_verify and upstream_ssl_verify default to true. Deployments that terminate TLS on an internal proxy or use a private CA must supply that CA via api_ssl_ca_cert / upstream_ssl_ca_cert, or explicitly disable verification for those connections.
Vendor Workaround
On versions 1.1.334 through 1.1.x, explicitly set api_ssl_verify: true and upstream_ssl_verify: true in socket.yml. On versions before 1.1.334 this setting alone is not sufficient, because the generated nginx configuration omits lua_ssl_trusted_certificate; operators had to patch the generated configuration to inject lua_ssl_trusted_certificate and lua_ssl_verify_depth.
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.205% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| Title | Registry Mode Socket Firewall Fails to Verify TLS Certificates, Allowing Man-in-the-Middle |
| Type | Values Removed | Values Added |
|---|---|---|
| Title | TLS Certificate Verification Bypass in Socket Firewall Registry Mode |
| Type | Values Removed | Values Added |
|---|---|---|
| Title | TLS Certificate Verification Bypass in Socket Firewall Registry Mode | |
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Title | Default TLS Certificate Verification Disabled in Socket Firewall Registry Mode |
| Type | Values Removed | Values Added |
|---|---|---|
| Title | Default TLS Certificate Verification Disabled in Socket Firewall Registry Mode |
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Socketdev
Socketdev firewall |
|
| Vendors & Products |
Socketdev
Socketdev firewall |
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Socket Firewall (socketdev/socket-registry-firewall) in registry mode before 2.0.0 does not verify upstream TLS certificates by default. When the api_ssl_verify and upstream_ssl_verify configuration keys are omitted from socket.yml, the generated configuration sets SOCKET_API_SSL_VERIFY='false' and UPSTREAM_SSL_VERIFY='false', and the OpenResty/Lua HTTP client used for outbound requests accepts any certificate, including self-signed and otherwise untrusted certificates, without validating the chain. An attacker positioned to intercept traffic between Socket Firewall and the Socket API or an upstream package registry can present a crafted certificate and modify responses in transit, including substituting malicious package content or altering the allow/block decisions the firewall enforces. Setting api_ssl_verify: true and upstream_ssl_verify: true enables verification; however, in versions before 1.1.334, the generated nginx configuration did not emit lua_ssl_trusted_certificate, and thus verification could not be used successfully without manually patching the generated configuration. Version 2.0.0 changes the default for both settings to true. | |
| Weaknesses | CWE-295 | |
| References |
| |
| Metrics |
cvssV3_1
|