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.
Published: 2026-09-12
Score: 8.1 High
EPSS: < 1% Very Low
KEV: No
Impact: Package Integrity Compromise
Action: Immediate Patch
AI Analysis

Impact

Socket Firewall in registry mode before version 2.0.0 does not verify upstream TLS certificates when the api_ssl_verify or upstream_ssl_verify keys are omitted from socket.yml. The generated configuration sets these variables to false, and the OpenResty/Lua HTTP client accepts any certificate, including self‑signed ones, without validating the chain. An attacker able to intercept traffic between the firewall and the Socket API or an upstream package registry can present a forged certificate, modify responses, inject malicious package content, or alter the firewall’s allow/deny decisions. The flaw is an instance of improper validation Based on the description, it is inferred that this flaw could allow remote code execution on clients that retrieve compromised packages.

Affected Systems

All installations of Socket:Socket Firewall running registry mode versions earlier than 2.0.0 are affected. This includes the 1.x series, particularly 1.1.x where default verification is false and the generated Nginx configuration omits lua_ssl_trusted_certificate. Beginning with version 2.0.0, the default for api_ssl_verify and upstream_ssl_verify is true are retained.

Risk and Exploitability

The CVSS score of 8.1 indicates high severity, while the EPSS score of < 1% shows a very low but nonzero likelihood of exploitation. The vulnerability is not listed in CISA’s KEV catalog. Attackers would need network proximity or control over the TLS termination point to launch a man‑in‑the‑middle; this vector is inferred from the description. Because Socket Firewall is widely deployed in production, the risk remains significant if the default settings are not overridden.

Generated by OpenCVE AI on September 15, 2026 at 18:46 UTC.

Remediation

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.


OpenCVE Recommended Actions

  • Upgrade to Socket Firewall 2.0.0 or later to enforce TLS verification by default.
  • For deployments that remain on earlier versions, set api_ssl_verify: true and upstream_ssl_verify: true in socket.yml.
  • If the firewall terminates TLS on an internal proxy or uses a private CA, supply the CA via api_ssl_ca_cert or upstream_ssl_ca_cert, or explicitly disable verification for those connections.
  • For versions before 1.1.334, patch the generated Nginx configuration to add lua_ssl_trusted_certificate and set lua_ssl_verify_depth.

Generated by OpenCVE AI on September 15, 2026 at 18:46 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 15 Sep 2026 19:15:00 +0000

Type Values Removed Values Added
Title Registry Mode Socket Firewall Fails to Verify TLS Certificates, Allowing Man-in-the-Middle

Tue, 15 Sep 2026 02:30:00 +0000

Type Values Removed Values Added
Title TLS Certificate Verification Bypass in Socket Firewall Registry Mode

Mon, 14 Sep 2026 21:00:00 +0000

Type Values Removed Values Added
Title TLS Certificate Verification Bypass in Socket Firewall Registry Mode
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Mon, 14 Sep 2026 06:00:00 +0000

Type Values Removed Values Added
Title Default TLS Certificate Verification Disabled in Socket Firewall Registry Mode

Sun, 13 Sep 2026 20:45:00 +0000

Type Values Removed Values Added
Title Default TLS Certificate Verification Disabled in Socket Firewall Registry Mode

Sun, 13 Sep 2026 19:15:00 +0000

Type Values Removed Values Added
First Time appeared Socketdev
Socketdev firewall
Vendors & Products Socketdev
Socketdev firewall

Sun, 13 Sep 2026 00:00:00 +0000

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

{'score': 8.1, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:H/A:L'}


Subscriptions

Socketdev Firewall
cve-icon MITRE

Status: PUBLISHED

Assigner: mitre

Published:

Updated: 2026-09-14T18:15:58.290Z

Reserved: 2026-09-12T23:55:40.704Z

Link: CVE-2026-90651

cve-icon Vulnrichment

Updated: 2026-09-14T14:56:55.452Z

cve-icon NVD

Status : Deferred

Published: 2026-09-13T00:17:07.203

Modified: 2026-09-22T20:00:03.713

Link: CVE-2026-90651

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-15T19:00:15Z

Weaknesses
  • CWE-295

    Improper Certificate Validation