{"id":"CVE-2026-55096","summary":"SSRF via DNS-resolution gap in _validate_url_security (file download by URL)","details":"fast-mcp-telegram is a Telegram MCP Server. Prior to version 30.1, the send_message/send_message_to_phone MCP tools accept files as a list of http(s) URLs, which the server downloads and attaches to the outgoing Telegram message. Downloads are guarded by _validate_url_security, an SSRF denylist that checks the URL's literal hostname string but never resolves DNS. The fetch (httpx.AsyncClient.get) does its own resolution at request time. Consequently a hostname that resolves to a loopback / private / link-local address passes the guard and is fetched — even with the secure defaults block_private_ips=True and allow_http_urls=False. Because the fetched body is returned to the attacker as a Telegram file attachment, this is a full-read, exfiltrating SSRF, not blind. This issue has been patched in version 30.1.","aliases":["GHSA-xr72-j7vj-vp7g"],"modified":"2026-09-30T03:47:27.034910388Z","published":"2026-09-28T16:38:26.730Z","database_specific":{"cwe_ids":["CWE-184","CWE-918"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/55xxx/CVE-2026-55096.json","unresolved_ranges":[{"source":"AFFECTED_FIELD","extracted_events":[{"fixed":"30.1"}]}],"cna_assigner":"GitHub_M"},"references":[{"type":"WEB","url":"https://github.com/leshchenko1979/fast-mcp-telegram/releases/tag/0.30.1"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/55xxx/CVE-2026-55096.json"},{"type":"ADVISORY","url":"https://github.com/leshchenko1979/fast-mcp-telegram/security/advisories/GHSA-xr72-j7vj-vp7g"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-55096"},{"type":"FIX","url":"https://github.com/leshchenko1979/fast-mcp-telegram/commit/e6b3032cfc906e14f5b84f2c2b8ec378eb457e57"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/leshchenko1979/fast-mcp-telegram","events":[{"introduced":"0"},{"fixed":"e6b3032cfc906e14f5b84f2c2b8ec378eb457e57"},{"fixed":"efba6fa01232dacb1480bbcfdf1eeb2cf2c09723"}],"database_specific":{"source":"REFERENCES"}}],"versions":["0.30.0","v0.29.0","v0.28.2","0.28.0","0.27.1","0.27.0","0.26.0","0.25.0","0.24.0","0.23.1","0.22.2","0.22.1","0.22.0","0.21.0","0.20.0","0.19.1","0.19.0","0.18.1","0.18.0","0.17.3","0.17.2","0.17.1","0.17.0","0.16.6","0.16.5","0.16.3","0.16.2","0.16.1","0.16.0","0.15.0","0.14.2","0.14.1","0.14.0","0.13.1","0.13.0","0.12.3","0.12.2","0.12.1","0.11.1","0.11.0","0.10.2","0.10.1","0.10.0","0.9.1","0.9.0","0.8.4","0.8.3","0.8.2","0.8.1","0.8.0","0.7.1","0.7.0","0.6.1","0.6.0","0.5.0","0.4.5","0.4.4","0.4.3","0.4.2","0.4.1","0.4.0","0.3.0","0.2.1","0.2.0","0.1.4","0.1.3","0.1.2","0.1.1","0.1.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-55096.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N"}]}