Vulnerabilidades / GHSA-6qr9-g2xw-cw92

crítica

GHSA-6qr9-g2xw-cw92

Dagu affected by unauthenticated RCE via inline DAG spec in default configuration

Publicada Modificada
En la Trivy database desde, como mínimo, el 24 oct 2026, 07:11 UTCNo consta cuándo entró antes de ese build.

Severidad por fuente

GHSA9.8CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

La etiqueta propia de Trivy es CRITICAL. Crítica según GHSA.

Descripción

### Summary Dagu's default configuration ships with authentication disabled. The `POST /api/v2/dag-runs` endpoint accepts an inline YAML spec and executes its shell commands immediately with no credentials required — any dagu instance reachable over the network is fully compromised by default. ### Details `internal/service/app/config/loader.go:226` sets `AuthModeNone` as the default. With no auth mode configured, `internal/frontend/api/v2/handlers/api.go:520` returns `nil` from `requireExecute()` — all permission checks pass without a valid session. The `POST /api/v2/dag-runs` endpoint accepts a `spec` field containing a full YAML DAG definition. The spec is parsed and the commands execute immediately on the host with no validation beyond YAML parsing. ### PoC ```bash curl -s -X POST http://TARGET:8080/api/v2/dag-runs \ -H "Content-Type: application/json" \ -d '{"name":"poc","spec":"steps:\n - name: rce\n command: id > /tmp/pwned\n"}' # Response: {"dagRunId":"<uuid>"} # /tmp/pwned contains: uid=1000(dagu) gid=1000(dagu) ``` Confirmed on `ghcr.io/dagu-org/dagu:latest` with no configuration changes. ### Impact Every dagu deployment using default settings — every Docker deployment, every install following the documentation, every instance without explicit `DAGU_AUTH_MODE` configuration — is fully compromised without credentials. An attacker with network access gets OS command execution as the dagu process user.

Paquetes afectados y versiones corregidas

FuentePaqueteCorregido en
go::GitHub Security Advisory Gogithub.com/dagu-org/dagusin corrección indicada

Referencias

Vulnerability data compiled from the Trivy vulnerability database (trivy-db, Aqua Security, Apache License 2.0), which aggregates third-party advisories. CVE records are published by The MITRE Corporation under the CVE Terms of Use; CVE is a trademark of MITRE. This product uses data from the NVD API but is not endorsed or certified by the NVD. Severity, titles and advisory data from the GitHub Advisory Database (CC BY 4.0), Red Hat security data (CC BY 4.0) and the other sources linked on each entry. Entries may be summarised or re-formatted; the linked original is the authoritative record.