CVE-2026-27739
📋 TL;DR
Angular SSR versions before 21.2.0-rc.1, 21.1.5, 20.3.17, and 19.2.21 have a Server-Side Request Forgery vulnerability where attackers can manipulate Host and X-Forwarded-* headers to redirect server requests to arbitrary internal destinations. This affects Angular applications using server-side rendering that perform HttpClient requests with relative URLs or manually construct URLs from untrusted headers.
💻 Affected Systems
- Angular SSR (Server-Side Rendering)
⚠️ Manual Verification Required
This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.
Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).
🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.
- Review the CVE details at NVD
- Check vendor security advisories for your specific version
- Test if the vulnerability is exploitable in your environment
- Consider updating to the latest version as a precaution
⚠️ Risk & Real-World Impact
Worst Case
Credential exfiltration, internal network reconnaissance, data breaches, and potential lateral movement within internal infrastructure.
Likely Case
Internal network probing and unauthorized access to internal services accessible from the vulnerable server.
If Mitigated
Limited to attempted attacks that are blocked by proper header validation and network segmentation.
🎯 Exploit Status
Exploitation requires specific application configurations but is straightforward when conditions are met.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 21.2.0-rc.1, 21.1.5, 20.3.17, or 19.2.21 depending on your Angular version
Vendor Advisory: https://github.com/angular/angular-cli/security/advisories/GHSA-x288-3778-4hhx
Restart Required: Yes
Instructions:
1. Identify your Angular version. 2. Upgrade to the patched version for your release line: 19.x → 19.2.21, 20.x → 20.3.17, 21.x → 21.1.5 or 21.2.0-rc.1. 3. Restart your application server.
🔧 Temporary Workarounds
Implement Header Validation Middleware
allAdd middleware to server.ts to validate Host header and enforce numeric ports
// Add to server.ts before Angular bootstrap
app.use((req, res, next) => {
const host = req.headers.host;
// Validate host format and port
if (!isValidHost(host)) {
return res.status(400).send('Invalid host header');
}
next();
});
🧯 If You Can't Patch
- Avoid using req.headers for URL construction - use trusted environment variables for base API paths
- Configure front-facing proxies, CDNs, or load balancers to strip or validate Host and X-Forwarded-* headers
🔍 How to Verify
Check if Vulnerable:
Check if your Angular application uses SSR and performs HttpClient requests with relative URLs or constructs URLs from req.headers without validation.
Check Version:
ng version
Verify Fix Applied:
Verify Angular version is 19.2.21, 20.3.17, 21.1.5, or 21.2.0-rc.1 or higher, and test that header manipulation no longer redirects requests.
📡 Detection & Monitoring
Log Indicators:
- Unusual outbound requests from SSR server to internal IPs
- Requests with manipulated Host/X-Forwarded headers
Network Indicators:
- SSR server making unexpected internal network connections
- HTTP traffic with suspicious header patterns
SIEM Query:
source="angular-ssr-server" AND (dest_ip IN internal_ranges OR http.headers.host CONTAINS suspicious_pattern)