Skip to content

fix(markdown): bind view server to loopback - #2938

Open
George Ng (GeorgeNgMsft) wants to merge 1 commit into
mainfrom
georgengmsft-bind-markdown-loopback
Open

fix(markdown): bind view server to loopback#2938
George Ng (GeorgeNgMsft) wants to merge 1 commit into
mainfrom
georgengmsft-bind-markdown-loopback

Conversation

@GeorgeNgMsft

@GeorgeNgMsft George Ng (GeorgeNgMsft) commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Summary

  • bind the Markdown HTTP and Y.js WebSocket server explicitly to 127.0.0.1
  • advertise the same IPv4 loopback address to collaboration clients
  • retain the existing Origin allowlist as defense against untrusted local browser pages

https://portal.microsofticm.com/imp/v5/incidents/details/31000000567548/summary

Security context

The Markdown view service has no authentication and intentionally permits native clients that omit the Origin header. Previously, omitting the hostname from server.listen bound the service to the unspecified address, making it reachable through LAN, VPN, and other network interfaces. Binding to IPv4 loopback ensures the OS accepts connections only from the local machine.

Intentional access from other devices should be introduced separately as an explicit opt-in mode with authentication and transport protection rather than weakening the secure default.

Follow-up to #2935.

Restrict the unauthenticated Markdown HTTP and WebSocket service to 127.0.0.1 and advertise the same address to collaboration clients.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 824e625d-be4c-48f5-91c7-88675b55c6e6
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants