Description
Postiz is an AI social media scheduling tool. Prior to version 2.21.3, the GET /public/stream endpoint in PublicController accepts a user-supplied url query parameter and proxies the full HTTP response back to the caller. The only validation is url.endsWith('mp4'), which is trivially bypassable by appending .mp4 as a query parameter value or URL fragment. The endpoint requires no authentication and has no SSRF protections, allowing an unauthenticated attacker to read responses from internal services, cloud metadata endpoints, and other network-internal resources. This issue has been patched in version 2.21.3.
Affected products
gitroom: postiz
References2
- github.com/gitroomhq/postiz-app/security/advisories/GHSA-mv6h-v… ExploitMitigationVendor Advisory
- github.com/gitroomhq/postiz-app/releases/tag/v2.21.3 ProductRelease Notes
Metrics
- CVSS 3.1
-
8.6
HIGH
Score source: CNA
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N - EPSS — exploit probability
- 2% percentile: 76 · as of 12 November 2026
- CWE
- CWE-918
Could this be exploited in your environment?
A patch closes the known hole. A penetration test shows what an attacker can still reach — with proof.