egarim / egarim/CieloOS

Session containers have unrestricted network egress

Open
#32 0 comments 0 reactions 0 assignees View on GitHub
security
Dominant language
C#
Stars
0
Forks
0
Avg merge
2h 5m
Merged PRs (30d)
2

Description

This reframes #17 and should be read alongside it.

`SessionOrchestrator.cs:159-235` builds the full `podman run` argument list and passes
**no `--network` flag of any kind**. Session containers get podman's default network
with unrestricted outbound.

Combined with `console.type` being `defaultDecision: Allow`
(`surfaces/console.surface.json`), an agent holding the default grant already reaches
the entire internet by typing `curl` into its own console — no approval, no page to get
approved first, no browser involved.

## Why this matters for #17

#17 argues that the `browser` surface's command-scoped CDP interception leaves a hole
for delayed requests, and that a proxy is the fix. That is true. But the browser is not
the widest egress path while the container itself has none — the proxy would close the
second door.

`docs/release-checklist.md:139` already carries this as an unchecked item ("Per-session
network egress (nftables). Deny-by-default outbound per agent").

## What to do

Decide the order deliberately: container-level egress policy first, then #17's proxy for
per-URL granularity inside the browser. Until either exists, the claim that navigation
is the human-approved egress decision is true of the agent's browser commands, not of
the machine — say that in the release notes rather than implying more.

Found by the readiness audit, 2026-08-27.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with SessionOrchestrator.cs:159-235 to trace how the podman run arguments are built, then read surfaces/console.surface.json and the unchecked item at docs/release-checklist.md:139. Define and implement deny-by-default per-session egress before addressing #17's browser proxy, and update the release notes to describe the remaining navigation limitation accurately.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
infrastructure, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.