CWE-918
AllowedServer-Side Request Forgery (SSRF)
Abstraction: Base · Status: Incomplete
The web server receives a URL or similar request from an upstream component and retrieves the contents of this URL, but it does not sufficiently ensure that the request is being sent to the expected destination.
4755 vulnerabilities reference this CWE, most recent first.
GHSA-FPX8-73GF-7X73
Vulnerability from github – Published: 2026-03-05 21:43 – Updated: 2026-03-09 13:12Summary
The webhook URL validation in plane/app/serializers/webhook.py only checks ip.is_loopback, allowing attackers with workspace ADMIN role to create webhooks pointing to private/internal network addresses (10.x.x.x, 172.16.x.x, 192.168.x.x, 169.254.169.254, etc.). When webhook events fire, the server makes requests to these internal addresses and stores the response — enabling SSRF with full response read-back.
Impact
- Cloud metadata exfiltration: Access AWS/GCP/Azure instance metadata (IAM credentials, tokens)
- Internal service scanning: Probe internal network services not exposed to the internet
- Data exfiltration via response logs: Full response body from internal services is stored and returned to the attacker through the webhook logs API
- Bypass vectors:
10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,169.254.0.0/16,0.0.0.0,::ffff:mapped addresses
{
"affected": [
{
"database_specific": {
"last_known_affected_version_range": "\u003c= 1.2.1"
},
"package": {
"ecosystem": "PyPI",
"name": "plane"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "1.2.3"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2026-30242"
],
"database_specific": {
"cwe_ids": [
"CWE-918"
],
"github_reviewed": true,
"github_reviewed_at": "2026-03-05T21:43:15Z",
"nvd_published_at": "2026-03-06T22:16:01Z",
"severity": "HIGH"
},
"details": "### Summary\nThe webhook URL validation in `plane/app/serializers/webhook.py` only checks `ip.is_loopback`, allowing attackers with workspace ADMIN role to create webhooks pointing to private/internal network addresses (`10.x.x.x`, `172.16.x.x`, `192.168.x.x`, `169.254.169.254`, etc.). When webhook events fire, the server makes requests to these internal addresses and stores the response \u2014 enabling SSRF with full response read-back.\n\n### Impact\n- **Cloud metadata exfiltration**: Access AWS/GCP/Azure instance metadata (IAM credentials, tokens)\n- **Internal service scanning**: Probe internal network services not exposed to the internet\n- **Data exfiltration via response logs**: Full response body from internal services is stored and returned to the attacker through the webhook logs API\n- Bypass vectors: `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`, `169.254.0.0/16`, `0.0.0.0`, `::ffff:` mapped addresses",
"id": "GHSA-fpx8-73gf-7x73",
"modified": "2026-03-09T13:12:11Z",
"published": "2026-03-05T21:43:15Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/makeplane/plane/security/advisories/GHSA-fpx8-73gf-7x73"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-30242"
},
{
"type": "PACKAGE",
"url": "https://github.com/makeplane/plane"
},
{
"type": "WEB",
"url": "https://github.com/makeplane/plane/releases/tag/v1.2.3"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N",
"type": "CVSS_V3"
}
],
"summary": "Plane has SSRF via Incomplete IP Validation in Webhook URL Serializer"
}
GHSA-FPX9-9HQ8-W2XC
Vulnerability from github – Published: 2026-04-14 18:30 – Updated: 2026-04-16 01:32A Server-Side Request Forgery (SSRF) in the /settings/webhooks/create component of Webkul Krayin CRM v2.2.x allows attackers to scan internal resources via supplying a crafted POST request.
{
"affected": [
{
"package": {
"ecosystem": "Packagist",
"name": "krayin/laravel-crm"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"last_affected": "2.2.0"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2026-38527"
],
"database_specific": {
"cwe_ids": [
"CWE-918"
],
"github_reviewed": true,
"github_reviewed_at": "2026-04-16T01:32:29Z",
"nvd_published_at": "2026-04-14T16:16:43Z",
"severity": "HIGH"
},
"details": "A Server-Side Request Forgery (SSRF) in the /settings/webhooks/create component of Webkul Krayin CRM v2.2.x allows attackers to scan internal resources via supplying a crafted POST request.",
"id": "GHSA-fpx9-9hq8-w2xc",
"modified": "2026-04-16T01:32:29Z",
"published": "2026-04-14T18:30:35Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-38527"
},
{
"type": "WEB",
"url": "https://github.com/TREXNEGRO/Security-Advisories/tree/main/CVE-2026-38527"
},
{
"type": "PACKAGE",
"url": "https://github.com/krayin/laravel-crm"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N",
"type": "CVSS_V3"
}
],
"summary": "Webkul Krayin CRM has Server-Side Request Forgery (SSRF)"
}
GHSA-FQ6M-725P-M7WR
Vulnerability from github – Published: 2022-05-05 00:00 – Updated: 2022-05-13 00:01Jspxcms v10.2.0 allows attackers to execute a Server-Side Request Forgery (SSRF) via /cmscp/ext/collect/fetch_url.do?url=.
{
"affected": [],
"aliases": [
"CVE-2022-28090"
],
"database_specific": {
"cwe_ids": [
"CWE-918"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2022-05-04T14:15:00Z",
"severity": "MODERATE"
},
"details": "Jspxcms v10.2.0 allows attackers to execute a Server-Side Request Forgery (SSRF) via /cmscp/ext/collect/fetch_url.do?url=.",
"id": "GHSA-fq6m-725p-m7wr",
"modified": "2022-05-13T00:01:10Z",
"published": "2022-05-05T00:00:19Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2022-28090"
},
{
"type": "WEB",
"url": "https://gitee.com/jspxcms/Jspxcms/issues/I4ZKDR"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-FQ78-33G3-P22Q
Vulnerability from github – Published: 2022-05-24 17:44 – Updated: 2022-05-24 17:44IBM Planning Analytics 2.0 could be vulnerable to a Server-Side Request Forgery (SSRF) attack by constucting URLs from user-controlled data . This could enable attackers to make arbitrary requests to the internal network or to the local file system. IBM X-Force ID: 190852.
{
"affected": [],
"aliases": [
"CVE-2020-4882"
],
"database_specific": {
"cwe_ids": [
"CWE-918"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2021-03-22T17:15:00Z",
"severity": "MODERATE"
},
"details": "IBM Planning Analytics 2.0 could be vulnerable to a Server-Side Request Forgery (SSRF) attack by constucting URLs from user-controlled data . This could enable attackers to make arbitrary requests to the internal network or to the local file system. IBM X-Force ID: 190852.",
"id": "GHSA-fq78-33g3-p22q",
"modified": "2022-05-24T17:44:59Z",
"published": "2022-05-24T17:44:59Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2020-4882"
},
{
"type": "WEB",
"url": "https://exchange.xforce.ibmcloud.com/vulnerabilities/190852"
},
{
"type": "WEB",
"url": "https://www.ibm.com/support/pages/node/6430643"
}
],
"schema_version": "1.4.0",
"severity": []
}
GHSA-FQFJ-CMH6-HJ49
Vulnerability from github – Published: 2019-06-13 16:15 – Updated: 2023-07-05 19:06Ruby OpenID (aka ruby-openid) through 2.8.0 is vulnerable to SSRF. Ruby-openid performs discovery first, and then verification. This allows an attacker to change the URL used for discovery and trick the server into connecting to the URL, which might be a private server not publicly accessible. Severity can range from medium to critical, depending on how a web application developer chose to employ the ruby-openid library. Developers who based their OpenID integration heavily on the "example app" provided by the project are at highest risk.
{
"affected": [
{
"package": {
"ecosystem": "RubyGems",
"name": "ruby-openid"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "2.9.0"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2019-11027"
],
"database_specific": {
"cwe_ids": [
"CWE-918"
],
"github_reviewed": true,
"github_reviewed_at": "2019-06-13T15:45:16Z",
"nvd_published_at": null,
"severity": "CRITICAL"
},
"details": "Ruby OpenID (aka ruby-openid) through 2.8.0 is vulnerable to SSRF. Ruby-openid performs discovery first, and then verification. This allows an attacker to change the URL used for discovery and trick the server into connecting to the URL, which might be a private server not publicly accessible. Severity can range from medium to critical, depending on how a web application developer chose to employ the ruby-openid library. Developers who based their OpenID integration heavily on the \"example app\" provided by the project are at highest risk.",
"id": "GHSA-fqfj-cmh6-hj49",
"modified": "2023-07-05T19:06:46Z",
"published": "2019-06-13T16:15:56Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2019-11027"
},
{
"type": "WEB",
"url": "https://github.com/openid/ruby-openid/issues/122"
},
{
"type": "WEB",
"url": "https://github.com/openid/ruby-openid/commit/d181a8a2099c64365a1d24b29f6b6b646673a131"
},
{
"type": "PACKAGE",
"url": "https://github.com/openid/ruby-openid"
},
{
"type": "WEB",
"url": "https://github.com/openid/ruby-openid/releases/tag/v2.9.0"
},
{
"type": "WEB",
"url": "https://github.com/rubysec/ruby-advisory-db/blob/master/gems/ruby-openid/CVE-2019-11027.yml"
},
{
"type": "WEB",
"url": "https://lists.debian.org/debian-lts-announce/2019/10/msg00014.html"
},
{
"type": "WEB",
"url": "https://marc.info/?l=openid-security\u0026m=155154717027534\u0026w=2"
},
{
"type": "WEB",
"url": "https://security.gentoo.org/glsa/202003-09"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"type": "CVSS_V3"
}
],
"summary": "ruby-openid SSRF via claimed_id request"
}
GHSA-FQGF-87C4-QVQM
Vulnerability from github – Published: 2023-06-20 09:30 – Updated: 2024-01-12 09:30IPv4-mapped IPv6 addresses did not get recognized as "local" by the code and a connection attempt is made. Attackers with access to user accounts could use this to bypass existing deny-list functionality and trigger requests to restricted network infrastructure to gain insight about topology and running services. We now respect possible IPV4-mapped IPv6 addresses when checking if contained in a deny-list. No publicly available exploits are known.
{
"affected": [],
"aliases": [
"CVE-2023-26431"
],
"database_specific": {
"cwe_ids": [
"CWE-918"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2023-06-20T08:15:09Z",
"severity": "MODERATE"
},
"details": "IPv4-mapped IPv6 addresses did not get recognized as \"local\" by the code and a connection attempt is made. Attackers with access to user accounts could use this to bypass existing deny-list functionality and trigger requests to restricted network infrastructure to gain insight about topology and running services. We now respect possible IPV4-mapped IPv6 addresses when checking if contained in a deny-list. No publicly available exploits are known.\n\n",
"id": "GHSA-fqgf-87c4-qvqm",
"modified": "2024-01-12T09:30:25Z",
"published": "2023-06-20T09:30:23Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2023-26431"
},
{
"type": "WEB",
"url": "https://documentation.open-xchange.com/appsuite/security/advisories/csaf/2023/oxas-adv-2023-0002.json"
},
{
"type": "WEB",
"url": "https://documentation.open-xchange.com/security/advisories/csaf/oxas-adv-2023-0002.json"
},
{
"type": "WEB",
"url": "https://software.open-xchange.com/products/appsuite/doc/Release_Notes_for_Patch_Release_6219_7.10.6_2023-03-20.pdf"
},
{
"type": "WEB",
"url": "http://packetstormsecurity.com/files/173083/OX-App-Suite-SSRF-Resource-Consumption-Command-Injection.html"
},
{
"type": "WEB",
"url": "http://seclists.org/fulldisclosure/2023/Jun/8"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N",
"type": "CVSS_V3"
}
]
}
GHSA-FQH4-X256-62FM
Vulnerability from github – Published: 2022-05-24 17:09 – Updated: 2022-05-24 17:09OX App Suite through 7.10.2 allows SSRF.
{
"affected": [],
"aliases": [
"CVE-2019-18846"
],
"database_specific": {
"cwe_ids": [
"CWE-918"
],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2020-02-21T21:15:00Z",
"severity": "MODERATE"
},
"details": "OX App Suite through 7.10.2 allows SSRF.",
"id": "GHSA-fqh4-x256-62fm",
"modified": "2022-05-24T17:09:26Z",
"published": "2022-05-24T17:09:26Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2019-18846"
},
{
"type": "WEB",
"url": "http://packetstormsecurity.com/files/156474/Open-Xchange-App-Suite-Documents-Server-Side-Request-Forgery.html"
},
{
"type": "WEB",
"url": "http://packetstormsecurity.com/files/158070/OX-App-Suite-OX-Documents-7.10.3-XSS-SSRF-Improper-Validation.html"
}
],
"schema_version": "1.4.0",
"severity": []
}
GHSA-FQPH-J6V6-JVGX
Vulnerability from github – Published: 2026-05-07 03:15 – Updated: 2026-05-14 20:54Impact
The URLInputHandler class in docling_graph/core/input/handlers.py makes HTTP requests to user-supplied URLs without validating whether the target resolves to a private, loopback, or link-local IP address. The URLValidator only checks for a valid scheme and non-empty netloc, performing no IP-level validation. Additionally, requests.head() was called with allow_redirects=True, allowing an attacker to redirect requests to internal endpoints via an intermediary URL.
An attacker who can control the --source CLI argument or PipelineConfig.source API parameter can trigger Server-Side Request Forgery (SSRF) to reach:
- Cloud metadata endpoints (e.g. 169.254.169.254) to steal IAM credentials
- Internal services on loopback (127.0.0.1) or private network ranges (10.x, 172.16.x, 192.168.x)
This affects deployments where docling-graph processes URLs from untrusted input, such as multi-tenant pipelines or server-side automation.
Patches
The vulnerability is fixed in v1.5.1.
Users should upgrade immediately:
pip install --upgrade docling-graph
The fix adds IP validation via ipaddress and socket.gethostbyname() before any request is made, blocks private/loopback/link-local/reserved addresses, and disables redirect following (allow_redirects=False) with explicit validation of any Location header before following it.
Workarounds
If upgrading is not immediately possible, ensure that all URLs passed to URLInputHandler come exclusively from trusted, internal sources, never from user-supplied or external input. There is no safe code-level workaround short of applying the patch, as the vulnerability is in the library itself.
Resources
{
"affected": [
{
"database_specific": {
"last_known_affected_version_range": "\u003c= 1.5.0"
},
"package": {
"ecosystem": "PyPI",
"name": "docling-graph"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "1.5.1"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2026-44520"
],
"database_specific": {
"cwe_ids": [
"CWE-601",
"CWE-918"
],
"github_reviewed": true,
"github_reviewed_at": "2026-05-07T03:15:46Z",
"nvd_published_at": "2026-05-14T18:16:50Z",
"severity": "MODERATE"
},
"details": "### Impact\n\nThe `URLInputHandler` class in `docling_graph/core/input/handlers.py` makes HTTP requests to user-supplied URLs without validating whether the target resolves to a private, loopback, or link-local IP address. The `URLValidator` only checks for a valid scheme and non-empty `netloc`, performing no IP-level validation. Additionally, `requests.head()` was called with `allow_redirects=True`, allowing an attacker to redirect requests to internal endpoints via an intermediary URL.\n\nAn attacker who can control the `--source` CLI argument or `PipelineConfig.source` API parameter can trigger Server-Side Request Forgery (SSRF) to reach:\n- Cloud metadata endpoints (e.g. `169.254.169.254`) to steal IAM credentials\n- Internal services on loopback (`127.0.0.1`) or private network ranges (`10.x`, `172.16.x`, `192.168.x`)\n\nThis affects deployments where `docling-graph` processes URLs from untrusted input, such as multi-tenant pipelines or server-side automation.\n\n### Patches\n\nThe vulnerability is fixed in **v1.5.1**.\n\nUsers should upgrade immediately:\n```\npip install --upgrade docling-graph\n```\n\nThe fix adds IP validation via `ipaddress` and `socket.gethostbyname()` before any request is made, blocks private/loopback/link-local/reserved addresses, and disables redirect following (`allow_redirects=False`) with explicit validation of any `Location` header before following it.\n\n### Workarounds\n\nIf upgrading is not immediately possible, ensure that **all URLs passed to `URLInputHandler` come exclusively from trusted, internal sources**, never from user-supplied or external input. There is no safe code-level workaround short of applying the patch, as the vulnerability is in the library itself.\n\n### Resources\n\n- [CWE-918: Server-Side Request Forgery](https://cwe.mitre.org/data/definitions/918.html)\n- [OWASP SSRF Prevention Cheat Sheet](https://cheatsheetseries.owasp.org/cheatsheets/Server_Side_Request_Forgery_Prevention_Cheat_Sheet.html)\n- [AWS Instance Metadata endpoint](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html)",
"id": "GHSA-fqph-j6v6-jvgx",
"modified": "2026-05-14T20:54:24Z",
"published": "2026-05-07T03:15:46Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/docling-project/docling-graph/security/advisories/GHSA-fqph-j6v6-jvgx"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-44520"
},
{
"type": "WEB",
"url": "https://cheatsheetseries.owasp.org/cheatsheets/Server_Side_Request_Forgery_Prevention_Cheat_Sheet.html"
},
{
"type": "PACKAGE",
"url": "https://github.com/docling-project/docling-graph"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:N/A:N",
"type": "CVSS_V3"
}
],
"summary": "docling-graph has SSRF via Missing Internal IP Validation in URLInputHandler"
}
GHSA-FQVV-JVHR-G5JC
Vulnerability from github – Published: 2026-05-05 18:21 – Updated: 2026-05-13 14:18Impact
The POST /api/v2/firefighter/raid/jira_bot endpoint (CreateJiraBotView) is
reachable without authentication (permission_classes = [permissions.AllowAny]).
Its attachments payload is fetched server-side via httpx.get() with no URL
validation, then uploaded as an attachment on the Jira ticket that gets created.
An unauthenticated caller able to reach the ingress can coerce the pod into
fetching arbitrary URLs — including the cloud metadata endpoint at
http://169.254.169.254/ — and exfiltrate the response as a Jira attachment.
On EC2/EKS deployments that do not enforce IMDSv2, this allows theft of the temporary AWS credentials attached to the pod's IAM role. The docstring on the view claims a Bearer token is required, but the code does not enforce it.
Affected code paths:
- src/firefighter/raid/views/__init__.py — CreateJiraBotView
- src/firefighter/raid/serializers.py — LandbotIssueRequestSerializer.attachments
- src/firefighter/raid/client.py — RaidJiraClient.add_attachments_to_issue
### Patches
Fixed in firefighter-incident 0.0.54:
- CreateJiraBotView now enforces BearerTokenAuthentication + IsAuthenticated.
- attachments URLs are validated: http(s) scheme only, max 10 URLs, rejection
of any host resolving to a private, loopback, link-local, reserved, multicast
or unspecified IP (IPv4 and IPv6).
- Fixes an unrelated KeyError('attachments') surfaced during regression testing.
Users should upgrade to 0.0.54 or later.
### Workarounds
Until upgrade is possible, any one of the following blocks end-to-end exploitation:
- Restrict ingress access to /api/v2/firefighter/raid/jira_bot to trusted
networks only (VPN, internal load balancer).
- Rotate or revoke the Jira API token configured as RAID_JIRA_API_PASSWORD;
this breaks jira.create_issue() before the vulnerable attachment fetch is
reached (legitimate traffic is also blocked — emergency mitigation only).
- Enforce IMDSv2 with HttpPutResponseHopLimit=1 on EC2/EKS nodes. This does
not fix the SSRF itself but neutralises the IAM-credential-theft path.
### Resources - CWE-918: Server-Side Request Forgery - CWE-306: Missing Authentication for Critical Function
{
"affected": [
{
"package": {
"ecosystem": "PyPI",
"name": "firefighter-incident"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "0.0.54"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2026-42864"
],
"database_specific": {
"cwe_ids": [
"CWE-306",
"CWE-918"
],
"github_reviewed": true,
"github_reviewed_at": "2026-05-05T18:21:17Z",
"nvd_published_at": "2026-05-11T19:16:24Z",
"severity": "CRITICAL"
},
"details": "### Impact\n The `POST /api/v2/firefighter/raid/jira_bot` endpoint (`CreateJiraBotView`) is\n reachable without authentication (`permission_classes = [permissions.AllowAny]`).\n Its `attachments` payload is fetched server-side via `httpx.get()` with no URL\n validation, then uploaded as an attachment on the Jira ticket that gets created.\n\n An unauthenticated caller able to reach the ingress can coerce the pod into\n fetching arbitrary URLs \u2014 including the cloud metadata endpoint at\n `http://169.254.169.254/` \u2014 and exfiltrate the response as a Jira attachment.\n\n On EC2/EKS deployments that do not enforce IMDSv2, this allows theft of the\n temporary AWS credentials attached to the pod\u0027s IAM role. The docstring on the\n view claims a Bearer token is required, but the code does not enforce it.\n\n Affected code paths:\n - `src/firefighter/raid/views/__init__.py` \u2014 `CreateJiraBotView`\n - `src/firefighter/raid/serializers.py` \u2014 `LandbotIssueRequestSerializer.attachments`\n - `src/firefighter/raid/client.py` \u2014 `RaidJiraClient.add_attachments_to_issue`\n\n ### Patches\n Fixed in `firefighter-incident` `0.0.54`:\n - `CreateJiraBotView` now enforces `BearerTokenAuthentication` + `IsAuthenticated`.\n - `attachments` URLs are validated: http(s) scheme only, max 10 URLs, rejection\n of any host resolving to a private, loopback, link-local, reserved, multicast\n or unspecified IP (IPv4 and IPv6).\n - Fixes an unrelated `KeyError(\u0027attachments\u0027)` surfaced during regression testing.\n\n Users should upgrade to `0.0.54` or later.\n\n ### Workarounds\n Until upgrade is possible, any one of the following blocks end-to-end exploitation:\n - Restrict ingress access to `/api/v2/firefighter/raid/jira_bot` to trusted\n networks only (VPN, internal load balancer).\n - Rotate or revoke the Jira API token configured as `RAID_JIRA_API_PASSWORD`;\n this breaks `jira.create_issue()` before the vulnerable attachment fetch is\n reached (legitimate traffic is also blocked \u2014 emergency mitigation only).\n - Enforce IMDSv2 with `HttpPutResponseHopLimit=1` on EC2/EKS nodes. This does\n not fix the SSRF itself but neutralises the IAM-credential-theft path.\n\n ### Resources\n - CWE-918: Server-Side Request Forgery\n - CWE-306: Missing Authentication for Critical Function",
"id": "GHSA-fqvv-jvhr-g5jc",
"modified": "2026-05-13T14:18:22Z",
"published": "2026-05-05T18:21:17Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/ManoManoTech/firefighter-incident/security/advisories/GHSA-fqvv-jvhr-g5jc"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-42864"
},
{
"type": "WEB",
"url": "https://github.com/ManoManoTech/firefighter-incident/commit/2586679e6f32c12d223668b73e98f4c4de7b771f"
},
{
"type": "PACKAGE",
"url": "https://github.com/ManoManoTech/firefighter-incident"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:L",
"type": "CVSS_V3"
}
],
"summary": "FireFighter has unauthenticated SSRF in its Raid jira_bot endpoint that allows IAM credential theft"
}
GHSA-FR5H-RQP8-MJ6G
Vulnerability from github – Published: 2024-05-09 21:18 – Updated: 2025-09-10 21:12Impact
A Server-Side Request Forgery (SSRF) vulnerability was identified in Next.js Server Actions by security researchers at Assetnote. If the Host header is modified, and the below conditions are also met, an attacker may be able to make requests that appear to be originating from the Next.js application server itself.
Prerequisites
- Next.js (
<14.1.1) is running in a self-hosted* manner. - The Next.js application makes use of Server Actions.
- The Server Action performs a redirect to a relative path which starts with a
/.
* Many hosting providers (including Vercel) route requests based on the Host header, so we do not believe that this vulnerability affects any Next.js applications where routing is done in this manner.
Patches
This vulnerability was patched in #62561 and fixed in Next.js 14.1.1.
Workarounds
There are no official workarounds for this vulnerability. We recommend upgrading to Next.js 14.1.1.
Credit
Vercel and the Next.js team thank Assetnote for responsibly disclosing this issue to us, and for working with us to verify the fix. Thanks to:
Adam Kues - Assetnote Shubham Shah - Assetnote
{
"affected": [
{
"package": {
"ecosystem": "npm",
"name": "next"
},
"ranges": [
{
"events": [
{
"introduced": "13.4.0"
},
{
"fixed": "14.1.1"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2024-34351"
],
"database_specific": {
"cwe_ids": [
"CWE-918"
],
"github_reviewed": true,
"github_reviewed_at": "2024-05-09T21:18:57Z",
"nvd_published_at": "2024-05-14T15:38:42Z",
"severity": "HIGH"
},
"details": "### Impact\nA Server-Side Request Forgery (SSRF) vulnerability was identified in Next.js Server Actions by security researchers at Assetnote. If the `Host` header is modified, and the below conditions are also met, an attacker may be able to make requests that appear to be originating from the Next.js application server itself.\n\n#### Prerequisites\n* Next.js (`\u003c14.1.1`) is running in a self-hosted* manner.\n* The Next.js application makes use of Server Actions.\n* The Server Action performs a redirect to a relative path which starts with a `/`.\n\n\\* Many hosting providers (including Vercel) route requests based on the Host header, so we do not believe that this vulnerability affects any Next.js applications where routing is done in this manner.\n\n### Patches\nThis vulnerability was patched in [#62561](https://github.com/vercel/next.js/pull/62561) and fixed in Next.js `14.1.1`.\n \n### Workarounds\nThere are no official workarounds for this vulnerability. We recommend upgrading to Next.js `14.1.1`.\n\n### Credit\nVercel and the Next.js team thank Assetnote for responsibly disclosing this issue to us, and for working with us to verify the fix. Thanks to:\n\nAdam Kues - Assetnote\nShubham Shah - Assetnote",
"id": "GHSA-fr5h-rqp8-mj6g",
"modified": "2025-09-10T21:12:31Z",
"published": "2024-05-09T21:18:57Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/vercel/next.js/security/advisories/GHSA-fr5h-rqp8-mj6g"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2024-34351"
},
{
"type": "WEB",
"url": "https://github.com/vercel/next.js/pull/62561"
},
{
"type": "WEB",
"url": "https://github.com/vercel/next.js/commit/8f7a6ca7d21a97bc9f7a1bbe10427b5ad74b9085"
},
{
"type": "PACKAGE",
"url": "https://github.com/vercel/next.js"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N",
"type": "CVSS_V3"
}
],
"summary": "Next.js Server-Side Request Forgery in Server Actions"
}
No mitigation information available for this CWE.
CAPEC-664: Server Side Request Forgery
An adversary exploits improper input validation by submitting maliciously crafted input to a target application running on a server, with the goal of forcing the server to make a request either to itself, to web services running in the server’s internal network, or to external third parties. If successful, the adversary’s request will be made with the server’s privilege level, bypassing its authentication controls. This ultimately allows the adversary to access sensitive data, execute commands on the server’s network, and make external requests with the stolen identity of the server. Server Side Request Forgery attacks differ from Cross Site Request Forgery attacks in that they target the server itself, whereas CSRF attacks exploit an insecure user authentication mechanism to perform unauthorized actions on the user's behalf.