Zincati allows unprivileged access to rpm-ostree D-Bus `Deploy()` and `FinalizeDeployment()` methods
Key facts
- Attack vector
- Local
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- Present
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- None · High · None
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub. Impact type from CWE-863.
Summary
Zincati is an auto-update agent for Fedora CoreOS hosts. Zincati ships a polkit rule which allows the `zincati` system user to use the actions `org.projectatomic.rpmostree1.deploy` to deploy updates to the system and `org.projectatomic.rpmostree1.finalize-deployment` to reboot the system into the deployed update. Since Zincati v0.0.24, this polkit rule contains a logic error which broadens access of those polkit actions to any unprivileged user rather than just the `zincati` system user. In practice, this means that any unprivileged user with access to the system D-Bus socket is able to deploy older Fedora CoreOS versions (which may have other known vulnerabilities). Note that rpm-ostree enforces that the selected version must be from the same branch the system is currently on so this cannot directly be used to deploy an attacker-controlled update payload. This primarily impacts users running untrusted workloads with access to the system D-Bus socket. Note that in general, untrusted workloads should not be given this access, whether containerized or not. By default, containers do not have access to the system D-Bus socket. The logic error is fixed in Zincati v0.0.30. A workaround is to manually add a following polkit rule, instructions for which are available in the GitHub Security Advisory.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| coreos | zincati | 0.0.24 to before 0.0.30 | 0.0.30 | Patch available | CNA |
| — | zincati (crates.io) | 0.0.24 to before 0.0.30 | 0.0.30 | Patch available | GHSA-w6fv-6gcc-x825 |
- zincati Vendorcoreos Affected 0.0.24 to before 0.0.30 Fixed in 0.0.30 Patch available CNA
- zincati (crates.io) Vendor— Affected 0.0.24 to before 0.0.30 Fixed in 0.0.30 Patch available GHSA-w6fv-6gcc-x825
Remediation
- Fix · CNA zincati (coreos) Fixed in 0.0.30
- Fix · GHSA-w6fv-6gcc-x825 zincati (crates.io) Fixed in 0.0.30 Advisory →
Vendor assessments
Timeline
- 2026-10-02 Threatist record created from CVE-2025-27512
- 2026-10-03 Alias added: GHSA-w6fv-6gcc-x825
References
Other 6
- https://github.com/coreos/zincati/security/advisories/GHSA-w6fv-6gcc-x825
- https://github.com/coreos/zincati/commit/01d8e89f799e6ba21bdf7dc668abce23bd0d8f78
- https://github.com/coreos/zincati/commit/28a43aa2c1edda091ba659677d73c13e6e3ea99d
- https://github.com/coreos/zincati/releases/tag/v0.0.24
- https://github.com/coreos/zincati/releases/tag/v0.0.30
- https://github.com/coreos/zincati
Sources
- CVE-2025-27512 · CVE Program
- CVE-2025-27512 · NVD
- FIRST EPSS
- GHSA-w6fv-6gcc-x825 · GitHub Advisory Database · CC BY 4.0
- CVE-2025-27512 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences