CVE-2026-47395 json
PraisonAI CLI automatically resolves @url mentions in prompt text and can read loopback URLs into model context
published 5mo ago modified 3mo ago also EUVD-2026-46303 , GHSA-5cxw-77wg-jrf3 , PYSEC-2026-2903 , PYSEC-2026-2942
- cvss
- 5.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 7%
- public exploits
- 0
- none known
Summary
PraisonAI is a multi-agent teams system. Prior to version 4.6.40 of PraisonAI, corresponding to version 1.6.40 of praisonaiagents, PraisonAI's direct-prompt CLI automatically expands `@url:` mentions in raw prompt text before agent execution begins. If a prompt contains `@url:<http-or-https-url>`, the CLI calls `MentionsParser.process(...)`. The `@url:` handler then performs a direct `urllib.request.urlopen()` request to the attacker-controlled URL and returns the response body. That response body is prepended to the final model prompt context. There is no loopback/private-address restriction, no metadata-service restriction, and no approval gate before the fetch. As a result, attacker-influenced prompt text can cause the operator's machine to fetch localhost-only HTTP resources and inject the response into model context. PraisonAI version 4.6.40 and praisonaiagents version 1.6.40 contain a fix.
Patch / fix
- pypi praisonaiagents 1.6.40
- pypi praisonai 4.6.40
- praison praisonai 4.6.40
- praison praisonaiagents 1.6.40
- github.com/MervinPraison/PraisonAI@b0d8f77 commit
- github.com/MervinPraison/PraisonAI#1684 pull request
Is CVE-2026-47395 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerCISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- 3mo ago
Exploit prediction
0.18% chance of exploitation in the next 30 days, higher than 7% of all scored CVEs (FIRST EPSS, 2026-11-11).
Exploits and checks
- github.com https://github.com/MervinPraison/PraisonAI/security/advisories/GHSA-5cxw-77wg-jrf3 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 5.5 | CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N |
| GitHub | 3.1 | 5.5 | CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N |
| OSV | 3.1 | 5.5 | CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | praisonaiagents | <1.6.40 |
1.6.40 |
| pypi | praisonai | <4.6.40 |
4.6.40 |
Affected products
- MervinPraison PraisonAI
- MervinPraison praisonaiagents
Classification
- Weakness
-
- CWE-200 Exposure of Sensitive Information to an Unauthorized Actor
References
- github.com /MervinPraison/PraisonAI/pull/1684
- github.com /MervinPraison/PraisonAI/commit/b0d8f777528f3253a0cfb0a3ef65455da6ae32f6
-
github.com
/MervinPraison/PraisonAI/security/advisories/GHSA-5cxw-77wg-jrf3
exploit, web
-
github.com
/MervinPraison/PraisonAI
package
-
pypi.org
/project/praisonai
package
-
github.com
/advisories/GHSA-5cxw-77wg-jrf3
advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-47395
advisory
-
pypi.org
/project/praisonaiagents
package
Sources
- CVE List CVE-2026-47395
- GitHub Advisory GHSA-5cxw-77wg-jrf3
- NVD CVE-2026-47395
- OSV PYSEC-2026-2903
- OSV PYSEC-2026-2942
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.