Repository navigation
v0.1.4 Security hardening
Security hardening from a red-team run of ollama/qwen3.5:9b against v0.1.3 (hidden prompt injection in a README exfiltrated a file; docker.sock was reachable inside bwrap).
Security
- Sandbox: unix sockets under
/run(includingdocker.sock, a host escape for docker-group users) are masked;/home,/media,/mnt,/srvand/var/tmpare hidden behind tmpfs. Previously python could read them and connect to the socket despite the command-string guard. - Sandbox: secret-looking files are masked at any depth (
.env*,*.pem,*.key,id_rsa,id_ed25519,authorized_keys), not only.env*at the workspace root.sub/.e''nvandserver.pemwere readable throughbash. - Env:
bashnow gets an allowlisted environment instead of a denylist.DATABASE_URL,*_WEBHOOK,STRIPE_*and custom*_KEYvariables leaked before. Opt back in withTETHER_ENV_PASSTHROUGH=A,B. - Web:
web fetchblocks loopback, private, link-local and cloud-metadata addresses, checked on every redirect hop (TETHER_WEB_ALLOW_PRIVATE=1to opt out).
Features
- Sandbox: optional network isolation,
tether run|pipeline --no-network/SandboxPolicy(network=False)mapping tobwrap --unshare-net. Sub-agents and stages can only keep or narrow it; withoutbwrapit fails closed. (#23)