{"id":"CVE-2026-115931","kind":"vulnerability","aliases":["CVE-2026-115931"],"related":[],"title":"Postiz: signed-in users can run internal helpers and read server files","description":"Postiz lets a signed-in user ask the backend to run a function on one of their connected channels. The backend did not restrict which functions can be requested, so a user could call internal helper functions that were never meant to be reachable from the web interface.\n\nOne of those helpers reads a file from the server's disk. A user who connects a channel whose stored token is a file path can have the backend return the contents of any file it can read, including its environment, which holds the secret used to sign login sessions, the database address and the credentials of connected services. Another helper makes the backend process exit with a single request. Self-registration is open by default, so no existing account and no action by another user is needed.","summary":"Postiz let any signed-in user ask the backend to call internal helper functions that were never meant to be exposed to the web interface. One helper reads arbitrary files from the server disk, which can leak the session signing secret, database address and connected service credentials, and another can crash the backend process with one request.","severity":"critical","cvss":9.9,"epss":0.00649,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["node","package","postiz","self-hosted"],"not_affected_if":["registration-closed"],"how_to_check":"- unknown","fix":"- unknown","status":"open","published_at":"2026-10-23T23:17:43+00:00","first_seen_at":"2026-10-23T23:44:51+00:00","triaged_at":"2026-10-25T02:59:35+00:00","updated_at":"2026-10-25T12:38:49+00:00","category":"package","confidence":0.6,"triage":{"at":"2026-10-25T02:59:35Z","model":"claude-haiku-5-5","output":{"fix":"- unknown","reach":"internet","title":"Postiz: signed-in users can run internal helpers and read server files","impact":"high","summary":"Postiz let any signed-in user ask the backend to call internal helper functions that were never meant to be exposed to the web interface. One helper reads arbitrary files from the server disk, which can leak the session signing secret, database address and connected service credentials, and another can crash the backend process with one request.","category":"package","nicknames":[],"who_cares":["postiz","self-hosted","node"],"confidence":0.6,"needs_auth":"yes","worst_case":"Attacker reads server files including secrets and environment variables","analyst_note":"Find the fixed Postiz version and the NVD advisory details for affected version range and remediation steps; the sources given do not name them.","how_to_check":"- unknown","needs_analyst":true,"not_affected_if":["registration-closed"],"who_is_affected":"Teams that run Postiz themselves with open self-registration enabled are exposed, since anyone can create an account and then trigger the flaw. Instances where registration is closed and accounts are controlled by the operator are less exposed, but the sources do not state which Postiz versions are fixed, so the affected range is unknown.","user_interaction":"no","needs_special_setup":"no","severity_if_unknown":"critical"},"cost_usd":0.000567,"input_tokens":3408,"output_tokens":452,"severity_before":"critical"},"analyst_status":null,"analyst_note":null,"search":"'-115931':16A,19A '-2026':15A,18A 'account':213C 'action':216C 'address':69B,185C 'anoth':75B,192C,218C 'arbitrari':55B 'ask':33B,91C 'backend':35B,79B,93C,105C,161C,196C 'call':37B,118C 'channel':103C,150C 'connect':71B,102C,148C,190C 'content':164C 'could':117C 'crash':77B 'credenti':73B,188C 'cve':14A,17A 'databas':68B,184C 'default':209C 'disk':60B,144C 'environ':173C 'exist':212C 'exit':198C 'expos':47B 'file':13A,56B,139C,156C,167C 'function':40B,97C,110C,121C 'helper':9A,39B,53B,120C,136C,193C 'hold':175C 'host':25B 'includ':171C 'interfac':51B,132C 'intern':8A,38B,119C 'leak':63B 'let':27B,85C 'login':181C 'make':194C 'meant':44B,125C 'need':221C 'never':43B,124C 'node':20B 'one':52B,82B,99C,133C 'open':207C 'packag':21B 'path':157C 'postiz':1A,22B,26B,84C 'process':80B,197C 'reachabl':128C 'read':11A,54B,137C,170C 'registr':205C 'request':83B,113C,202C 'restrict':108C 'return':162C 'run':7A,95C 'secret':67B,177C 'self':24B,204C 'self-host':23B 'self-registr':203C 'server':12A,59B,142C 'servic':72B,191C 'session':65B,182C 'sign':3A,30B,66B,88C,180C 'signed-in':2A,29B,87C 'singl':201C 'store':152C 'token':153C 'use':178C 'user':5A,32B,90C,116C,146C,219C 'web':50B,131C 'whose':151C","nicknames":[],"mitigations":[],"who_affected":"Teams that run Postiz themselves with open self-registration enabled are exposed, since anyone can create an account and then trigger the flaw. Instances where registration is closed and accounts are controlled by the operator are less exposed, but the sources do not state which Postiz versions are fixed, so the affected range is unknown.","tier":"B","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-23T23:17:43+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H","cvss_by":"4cdc9741-f887-419a-a2fd-acbbd2729276","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-115931","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-115931","severity":null,"published_at":"2026-10-23T23:17:43+00:00","modified_at":"2026-10-23T23:17:43+00:00","first_seen_at":"2026-10-23T23:44:51+00:00","fetched_at":"2026-10-23T23:44:51+00:00","note":null},{"source":"epss","external_id":"CVE-2026-115931","url":"https://api.first.org/data/v1/epss?cve=CVE-2026-115931","severity":null,"published_at":null,"modified_at":null,"first_seen_at":"2026-10-25T12:38:49+00:00","fetched_at":"2026-10-25T12:38:49+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}