Skip to content

docs: the network mediation design — reachability, per-execution policy, and the SNI guard - #1

Merged
davidb987654 merged 3 commits into
mainfrom
docs/network-mediation-design
Aug 23, 2026
Merged

docs: the network mediation design — reachability, per-execution policy, and the SNI guard#1
davidb987654 merged 3 commits into
mainfrom
docs/network-mediation-design

Conversation

@davidb987654

Copy link
Copy Markdown
Contributor

Design-only document (no code) specifying the network mediation that a confined
workload relies on: how it reaches the Netd proxy — and nothing else — across
sandbox backends, and how a guard on the cleartext TLS ClientHello closes the
destination-identity gap that the sealed allowlist alone cannot.

The document builds on the shipped surface (exact allowlist, pinned DNS,
CONNECT/forward/SOCKS5, policy digest, receipts, TLS provider seam,
maelys_netd_profile) and references those docs rather than restating them.

Contents:

  • Section 1 — the reachability problem ("127.0.0.1 names a stack, not a machine").
  • Section 2 — topology per backend: Seatbelt (shared stack, surgical SBPL hole),
    Bubblewrap (empty --unshare-net stack reached via a bind-mounted Unix socket
    plus an in-house in-namespace relay, never socat), the golden rule, and the
    inherited SCM_RIGHTS fd route for Maelys-aware workloads.
  • Section 3 — the SNI guard from first principles: the CDN fact, the gap the
    opaque tunnel leaves, why the SNI is cleartext by necessity, the guard itself,
    and why tunnel and TLS are successive rather than nested.
  • Section 4 — residuals and limits: domain fronting, ECH, opaque tunnel content.
  • Section 5 — what this design refuses (anti-MITM position).
  • Section 6 — the Executor→Netd binding (per-execution consumer): one Netd per
    execution, profile-authorized environment augmentation, the digest chain, and
    method-restriction / two-phase network as policy choices.
  • Section 7 — prior art (Anthropic sandbox-runtime, OpenAI Codex), neutral.

Status: design, targeting netd 0.2 (reachability, per-execution auth) and 0.3
(SNI guard). No code. Do not merge without owner review.

…sign

Number the twelve design decisions and index them, so each choice can be
cited on its own: the per-backend reachability routes, the in-house relay,
the refusal to restore ambient network, the SNI guard, the per-execution
instance and its rejected alternative, method restriction and the two-phase
network profiles.

Add self-contained implementation phases, each shippable and testable
without the ones after it, plus the open questions that should not be
closed by implementation alone.

Cite the prior art by name with links and verified quotations. Correct the
Codex characterisation: a filtering proxy now exists behind
features.network_proxy but ships off by default, so the default remains
boolean rather than there being no proxy at all.

Add the Seatbelt and bubblewrap topology diagrams, the seven-step tunnel
attack trace and the guard state machine. Soften the domain-fronting claim
to what is actually attributable to the CDNs. Wrap to the 79-column
convention used by the other documents.
@davidb987654 davidb987654 changed the title docs: network mediation design — proxy reachability and the SNI guard docs: the network mediation design — reachability, per-execution policy, and the SNI guard Aug 23, 2026
@davidb987654
davidb987654 marked this pull request as ready for review August 23, 2026 18:54
@davidb987654
davidb987654 merged commit 2a9b90c into main Aug 23, 2026
28 checks passed
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.

1 participant