{"id":"CVE-2026-82953","kind":"vulnerability","aliases":["CVE-2026-82953"],"related":[],"title":"Apache bRPC: RTMP createStream null pointer crash lets remote clients stop server","description":"NULL pointer dereference in the RTMP protocol implementation in Apache bRPC (version < 1.18.0) on all platforms allows remote attackers to crash the server (denial of service) via a crafted createStream command.\n\nRoot Cause:\nWhen an RTMP service rejects a createStream request by returning a null stream from RtmpService::NewStream(), the server sends an error response to the client. If writing this rejection response fails (for example, because the client closes the connection immediately after sending the createStream command), the error-handling path in RtmpChunkStream::OnCreateStream() dereferences the null stream pointer to access stream->_onfail_id, causing the process to crash.\n\nAffected Scenarios:\nRun an Apache bRPC RTMP server whose RtmpService::NewStream() may return null (i.e., the service rejects createStream requests). A remote client that sends a createStream command and then closes the connection before the rejection response is written can crash the server.\n\nHow to Fix:\n(Choose one of the following options)\n1. Upgrade bRPC to version 1.18.0, which fixes this issue.\n2. Apply this patch:  https://github.com/apache/brpc/pull/3508","summary":"A null pointer dereference in the RTMP implementation of Apache bRPC before 1.18.0 crashes the server when a rejected createStream request's error response fails to write. A remote client can trigger this by sending a createStream command and closing the connection immediately, causing denial of service.","severity":"unknown","cvss":null,"epss":0.00221,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["apache-brpc","rtmp","runtime","self-hosted"],"not_affected_if":["brpc-1.18.0-or-later","no-rtmp-service","non-rtmp-usage"],"how_to_check":"- Check the bRPC version in use, for example with `grep -r BRPC_VERSION` in the build tree or the version in your package manager, and confirm whether it is below `1.18.0`.\n- Confirm whether the service exposes RTMP and whether `RtmpService::NewStream()` can return null.","fix":"- Upgrade Apache bRPC to `1.18.0`.\n- Or apply the patch from https://github.com/apache/brpc/pull/3508.","status":"open","published_at":"2026-10-21T13:20:03+00:00","first_seen_at":"2026-10-23T21:57:28+00:00","triaged_at":"2026-10-25T05:02:27+00:00","updated_at":"2026-10-25T05:02:27+00:00","category":"runtime","confidence":0.8,"triage":{"at":"2026-10-25T05:02:27Z","model":"claude-haiku-5-5","output":{"fix":"- Upgrade Apache bRPC to `1.18.0`.\n- Or apply the patch from https://github.com/apache/brpc/pull/3508.","reach":"internet","title":"Apache bRPC: RTMP createStream null pointer crash lets remote clients stop server","impact":"low","summary":"A null pointer dereference in the RTMP implementation of Apache bRPC before 1.18.0 crashes the server when a rejected createStream request's error response fails to write. A remote client can trigger this by sending a createStream command and closing the connection immediately, causing denial of service.","category":"runtime","nicknames":[],"who_cares":["apache-brpc","rtmp","self-hosted"],"confidence":0.8,"needs_auth":"no","worst_case":"Remote clients crash the bRPC server process, causing denial of service.","analyst_note":"","how_to_check":"- Check the bRPC version in use, for example with `grep -r BRPC_VERSION` in the build tree or the version in your package manager, and confirm whether it is below `1.18.0`.\n- Confirm whether the service exposes RTMP and whether `RtmpService::NewStream()` can return null.","needs_analyst":false,"not_affected_if":["no-rtmp-service","bRPC-1.18.0-or-later","non-rtmp-usage"],"who_is_affected":"Only servers running Apache bRPC's RTMP protocol with a service whose RtmpService::NewStream() can return null, meaning it rejects createStream requests. Teams not running RTMP on bRPC can skip it.","user_interaction":"no","needs_special_setup":"yes","severity_if_unknown":"unknown"},"cost_usd":0.000651,"input_tokens":3640,"output_tokens":575,"severity_before":"unknown"},"analyst_status":null,"analyst_note":null,"search":"'-2026':14A,17A '-82953':15A,18A '/apache/brpc/pull/3508':243C '1':227C '1.18.0':39B,86C,232C '2':237C 'access':166C 'affect':175C 'allow':90C 'apach':1A,20B,36B,83C,179C 'apache-brpc':19B 'appli':238C 'attack':92C 'brpc':2A,21B,37B,84C,180C,229C 'caus':70B,106C,170C 'choos':221C 'client':10A,56B,131C,142C,197C 'close':66B,143C,205C 'command':64B,104C,151C,202C 'connect':68B,145C,207C 'craft':102C 'crash':7A,40B,94C,174C,215C 'createstream':4A,46B,63B,103C,113C,150C,193C,201C 'cve':13A,16A 'denial':71B,97C 'derefer':30B,76C,160C 'error':49B,127C,154C 'error-handl':153C 'exampl':139C 'fail':51B,137C 'fix':220C,234C 'follow':225C 'github.com':242C 'github.com/apache/brpc/pull/3508':241C 'handl':155C 'host':26B 'i.e':189C 'id':169C 'immedi':69B,146C 'implement':34B,81C 'issu':236C 'let':8A 'may':186C 'newstream':122C,185C 'null':5A,28B,74C,118C,162C,188C 'oncreatestream':159C 'one':222C 'onfail':168C 'option':226C 'patch':240C 'path':156C 'platform':89C 'pointer':6A,29B,75C,164C 'process':172C 'protocol':80C 'reject':45B,111C,135C,192C,210C 'remot':9A,55B,91C,196C 'request':47B,114C,194C 'respons':50B,128C,136C,211C 'return':116C,187C 'root':105C 'rtmp':3A,22B,33B,79C,109C,181C 'rtmpchunkstream':158C 'rtmpservic':121C,184C 'run':177C 'runtim':23B 'scenario':176C 'self':25B 'self-host':24B 'send':61B,125C,148C,199C 'server':12A,42B,96C,124C,182C,217C 'servic':73B,99C,110C,191C 'stop':11A 'stream':119C,163C,167C 'trigger':58B 'upgrad':228C 'version':85C,231C 'via':100C 'whose':183C 'write':53B,133C 'written':213C","nicknames":[],"mitigations":[],"who_affected":"Only servers running Apache bRPC's RTMP protocol with a service whose RtmpService::NewStream() can return null, meaning it rejects createStream requests. Teams not running RTMP on bRPC can skip it.","tier":"C","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-21T13:20:03+00:00","kev":null,"cvss_vector":null,"cvss_by":null,"poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-82953","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-82953","severity":null,"published_at":"2026-10-21T13:20:03+00:00","modified_at":"2026-10-22T16:56:37+00:00","first_seen_at":"2026-10-23T21:57:28+00:00","fetched_at":"2026-10-23T22:29:01+00:00","note":null},{"source":"epss","external_id":"CVE-2026-82953","url":"https://api.first.org/data/v1/epss?cve=CVE-2026-82953","severity":null,"published_at":null,"modified_at":null,"first_seen_at":"2026-10-24T13:15:54+00:00","fetched_at":"2026-10-24T13:15:54+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"}