CVE-2026-34170: Coolify SSRF in GitHub App Configuration Allows Internal Service Enumeration
Coolify, a self-hosted deployment and infrastructure management platform, contains a server-side request forgery (SSRF) vulnerability in its GitHub App integration. When an authenticated user configures a GitHub App source, Coolify fails to validate the api_url parameter, allowing that URL to point to internal services or cloud metadata endpoints instead of GitHub. An attacker with legitimate access to Coolify can exploit this to probe internal networks, access cloud provider metadata, or interact with services that should remain isolated from external requests. The vulnerability is limited to authenticated users and does not provide write capabilities, but the information disclosure risk warrants prompt patching.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 4.3 MEDIUM · CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
- Weaknesses (CWE)
- CWE-918
- Affected products
- 0 configuration(s)
- Published / Modified
- 2026-07-07 / 2026-07-07
NVD description (verbatim)
Coolify is an open-source and self-hostable tool for managing servers, applications, and databases. Prior to 4.0.0-beta.471, the GithubApp api_url field is used as the base URL for server-side HTTP requests without allowlisting or private IP blocking, allowing an authenticated user to configure a GitHub App source that causes Coolify to request internal services or cloud metadata endpoints. This issue is reported as fixed in version 4.0.0-beta.471.
2 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
CVE-2026-34170 is a server-side request forgery (CWE-918) in Coolify versions prior to 4.0.0-beta.471. The GithubApp configuration endpoint accepts an api_url parameter that is subsequently used as the base URL for HTTP requests made by the Coolify server. The vulnerability stems from the absence of URL validation, allowlisting, or private IP address blocking. An authenticated attacker can supply a malicious api_url pointing to RFC1918 addresses, localhost, or cloud metadata endpoints (e.g., 169.254.169.254 for AWS), enabling reconnaissance of internal infrastructure or extraction of sensitive environment variables and credentials. The fix in 4.0.0-beta.471 addresses this by implementing proper URL validation and blocking private IP ranges.
Business impact
This vulnerability allows internal reconnaissance by users with Coolify access credentials. In multi-tenant or shared Coolify deployments, a compromised or malicious user account can map internal infrastructure, access cloud provider metadata services, or interact with restricted internal applications. While the CVSS score of 4.3 reflects limited scope (no network propagation, no integrity impact), the practical impact depends on what sensitive services and metadata are exposed on the internal network. Organizations running Coolify in cloud environments (AWS, GCP, Azure) face heightened risk because metadata endpoints are a primary attack vector for credential theft and privilege escalation.
Affected systems
All Coolify installations prior to version 4.0.0-beta.471 are affected. The vulnerability requires authentication, so it impacts only deployments where user accounts exist. Self-hosted Coolify instances are the primary targets, as this tool is designed for infrastructure-as-code workflows in private networks. Cloud-hosted or publicly exposed Coolify instances with multiple user accounts carry elevated risk.
Exploitability
Exploitability is low-to-medium. The attack requires valid Coolify credentials, eliminating opportunistic exploitation. However, within organizations running Coolify, the barrier to triggering the vulnerability is trivial—adding a GitHub App source with a crafted api_url requires only normal UI interaction and no special knowledge. No public exploit code is known, but proof-of-concept is straightforward and does not require zero-day research. The CVSS vector (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N) correctly indicates that network access combined with low complexity and authenticated privilege makes this a practical information disclosure risk in operational environments.
Remediation
Upgrade Coolify to version 4.0.0-beta.471 or later. Verify the fix by reviewing release notes to confirm that URL validation and private IP blocking are implemented in the GitHub App configuration handler. Until patching is complete, restrict Coolify user accounts to trusted personnel and audit existing GitHub App configurations to identify any suspicious api_url values. Consider network segmentation to limit the impact of SSRF: ensure Coolify's egress is restricted to GitHub's official API endpoints via firewall rules or outbound proxy controls.
Patch guidance
Upgrade to Coolify 4.0.0-beta.471 or newer. Since Coolify is a rapid-release, beta-versioned project, verify patch availability and test in a non-production environment before deployment. After patching, validate that GitHub App configuration rejects or sanitizes non-standard api_url values. Document the patch date for compliance and audit purposes. If your Coolify installation uses a pinned version or custom build, check upstream release notes at the Coolify GitHub repository to confirm the fix is included in your target version.
Detection guidance
Monitor Coolify's GitHub App configuration logs for api_url entries that deviate from the official GitHub API domain (api.github.com or github.enterprise.com). Look for patterns such as 127.0.0.1, 192.168.*, 10.*, 172.16-31.*, or cloud metadata IP ranges (169.254.169.254, 169.254.170.2, etc.) in configuration audit logs. Check HTTP request logs for outbound connections from the Coolify process to private IP ranges or unusual domains not consistent with GitHub API access. Implement network-level detection by flagging outbound traffic from Coolify servers to RFC1918 addresses or metadata endpoints.
Why prioritize this
Although the CVSS score is MEDIUM (4.3), this vulnerability should be prioritized based on deployment context. If Coolify runs in a cloud environment or on a network with sensitive internal services, the information disclosure risk is elevated. The ease of exploitation (authenticated but trivial to trigger) and the typical use case (infrastructure-as-code, often in sensitive environments) warrant swift patching. Defer below critical patching only if Coolify is isolated, has no cloud metadata exposure, and user accounts are tightly controlled.
Risk score, explained
The CVSS 3.1 score of 4.3 reflects a network-accessible, low-complexity authenticated attack with low confidentiality impact and no integrity or availability impact. The score assumes a single-user scope and no amplification. In practice, organizations should assign a higher internal risk rating if: (1) Coolify is deployed in cloud environments with metadata endpoints; (2) internal network services are sensitive or credential-bearing; (3) user accounts are provisioned broadly or to third-party integrators. The CVSS baseline is appropriate for the technical properties, but context-driven risk assessment is essential.
Frequently asked questions
Can an unauthenticated attacker exploit this vulnerability?
No. The vulnerability requires valid Coolify credentials and the ability to access the GitHub App configuration endpoint. It is not exploitable over the internet without an account.
Does this vulnerability allow remote code execution or data modification?
No. The vulnerability is limited to server-side request forgery, enabling information disclosure through HTTP requests. An attacker cannot execute code or modify data on the Coolify system or remote targets, only probe for and read responses from internal services.
What if we use Coolify on an isolated internal network with no cloud metadata?
The risk is reduced but not eliminated. An attacker could still probe other internal services, steal credentials from environment variables exposed by internal APIs, or exfiltrate data from internal databases or config servers. Patching remains necessary.
How do I know if my Coolify instance was exploited before patching?
Audit the GitHub App configuration history and request logs. Look for api_url values pointing to private IP ranges or cloud metadata endpoints, and cross-reference with HTTP request logs to identify outbound connections to those targets. If found, assume internal reconnaissance was performed and review exposed services for signs of data access.
This analysis is provided for informational purposes and reflects publicly disclosed information as of the publication date. Versions, patch status, and remediation steps are based on vendor advisories and should be verified against official Coolify release notes and security announcements. Organizations must conduct their own risk assessment based on deployment architecture, user access controls, and network exposure. No guarantee is made regarding the completeness or accuracy of detection methods; network and application logging should be tuned to your environment. Always test patches in a non-production setting before production deployment. Source: NVD (public-domain), retrieved 2026-08-15. Analysis generated by SEC.co (claude-haiku-4-5).
Weaknesses (CWE)
Related vulnerabilities
- CVE-2025-36324MEDIUMIBM watsonx.data Intelligence SSRF Vulnerability - Patch & Detection Guide
- CVE-2025-58175MEDIUMGeoServer SSRF Vulnerability in Proxy Configuration
- CVE-2026-0285MEDIUMPAN-OS Server-Side Request Forgery (SSRF) – Palo Alto Networks
- CVE-2026-10052MEDIUMQuay SSRF in LDAP/SMTP Validation—Internal Network Reconnaissance Risk
- CVE-2026-10177MEDIUMSSRF in Aider-AI Aider 0.86.3 AWS Metadata Endpoint
- CVE-2026-10239MEDIUMJeecgBoot Server-Side Request Forgery (SSRF) in Word Editing Module
- CVE-2026-10240MEDIUMJeecgBoot SSRF Vulnerability in /airag/airagModel/test Endpoint
- CVE-2026-10241MEDIUMJimuReport SSRF in File Download Function – Patch to 3.9.2