mirror of
https://github.com/bytedance/deer-flow.git
synced 2026-07-10 00:18:36 +00:00
* fix(security): mount host Docker socket only in aio (DooD) sandbox mode The default Compose stack mounted /var/run/docker.sock read-write into the root gateway container in every sandbox mode, including the default `local` mode that never uses it -- an unnecessary host-escape surface (DooD = root-equivalent host control). deploy.sh already gated the socket *check* on sandbox_mode != local, but the Compose files mounted it unconditionally. Move the socket mount to an opt-in docker/docker-compose.dood.yaml overlay that deploy.sh / docker.sh append only when detect_sandbox_mode() returns `aio`. Default (local) and provisioner/Kubernetes modes no longer expose the host daemon. Tighten the socket existence check from != local to == aio. Document the DooD threat model in SECURITY.md. Reported by @greatmengqi. * refactor(docker): address review on socket-hardening PR - docker.sh: use absolute path for the dood overlay (match deploy.sh, drop cwd dependency) - deploy.sh: drop now-dead DEER_FLOW_DOCKER_SOCKET exports in down/build paths - docker-compose.yaml: fix stale header comment to point at the overlay Addresses codex + reviewer feedback on #3517. --------- Co-authored-by: Willem Jiang <willem.jiang@gmail.com> |
||
|---|---|---|
| .. | ||
| wizard | ||
| _detector_cli.py | ||
| check.py | ||
| check.sh | ||
| cleanup-containers.sh | ||
| config-upgrade.sh | ||
| configure.py | ||
| deploy.sh | ||
| detect_blocking_io_static.py | ||
| detect_thread_boundaries.py | ||
| detect_uv_extras.py | ||
| docker.sh | ||
| doctor.py | ||
| export_claude_code_oauth.py | ||
| load_memory_sample.py | ||
| run-with-git-bash.cmd | ||
| sandbox_memory_profile.py | ||
| scan_changed_blocking_io.py | ||
| serve.sh | ||
| setup-sandbox.sh | ||
| setup_wizard.py | ||
| start-daemon.sh | ||
| sync_labels.py | ||
| tool-error-degradation-detection.sh | ||
| wait-for-port.sh | ||