---
id: "CVE-2026-121880"
page: "https://infrastack.ai/live/CVE-2026-121880"
kind: "vulnerability"
aliases: ["CVE-2026-121880"]
title: "RStudio Server and Posit Workbench: localhost port proxy lets users reach others' services"
severity: "medium"
cvss: 4.7
epss: null
exploited: false
status: "open"
category: "runtime"
products: []
ecosystems: []
tags: ["multi-user", "posit-workbench", "rstudio-server", "runtime", "self-hosted"]
not_affected_if: ["fixed-version", "no-localhost-services", "single-user"]
published_at: "2026-11-06T16:17:52+00:00"
first_seen_at: "2026-11-06T16:42:41+00:00"
updated_at: "2026-11-06T16:44:47+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-121880", "first_seen_at": "2026-11-06T16:42:41+00:00"}]
exploit_sources: []
---

# RStudio Server and Posit Workbench: localhost port proxy lets users reach others' services

Link for people: https://infrastack.ai/live/CVE-2026-121880 (this .md is for agents)

RStudio Server and Posit Workbench before 2026.08.0 let a logged-in user build a proxy URL from their own port token and reach web applications bound to 127.0.0.1 that belong to another user's session. An attacker can view that other user's live rendered content and data.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check the installed version with `rstudio-server version` or the Workbench admin page, and compare it against the fixed release.
- Confirm whether multiple users share the same server, since exposure requires another user's localhost service.
- Check for localhost-bound services (such as Shiny or Jupyter apps) running alongside Workbench sessions.

## Fix

- RStudio Server and Posit Workbench: move to `2026.08.0` or later.

## Timeline

- 2026-11-06T16:42:41+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-121880

## From the sources

Authorization bypass through user-controlled key in the localhost port-proxy (/p/<token>/) in Posit Software, PBC RStudio Server and Posit Workbench before 2026.08.0 allows remote authenticated users to reach web applications and other services bound to 127.0.0.1 under a different user's session, and to view their live rendered content and data, via a proxy URL constructed from the attacker's own port token for an arbitrary port number. The port token is a documented obfuscation measure and not an authorization boundary, and the proxy does not verify that the requested port belongs to the requesting user's session.



NOTE: exploitation requires an authenticated account on the same multi-user server and a target service listening on localhost at the time of access. Impact may be greater on hosts that co-locate additional privileged localhost services, and the bypass is not prevented by allow-shell=false; no setting restricts the port-proxy without disabling all application proxying.

---

_Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai_
