🔍 CVE-2025-27512

0.0
CVSS Score
UNKNOWN
2025-03-17
2026-04-15 00:35
✅ 완료

🇰🇷 한글 설명

Zincati v0.0.24 이상에서 polkit 규칙의 논리 오류로 인해 권한 없는 사용자도 rpm-ostree 배포 작업을 수행할 수 있는 취약점입니다. 시스템 D-Bus 소켓에 접근 가능한 사용자가 오래된 Fedora CoreOS 버전으로 다운그레이드할 수 있으며, v0.0.30에서 수정되었습니다.

💡 쉬운 설명

Zincati 자동 업데이트 에이전트의 보안 규칙이 잘못되어 권한 없는 사용자도 시스템 업데이트를 배포할 수 있게 되었습니다. 이를 통해 공격자는 오래된 버전으로 다운그레이드하여 알려진 취약점을 악용할 수 있습니다.

🇺🇸 원문 (English)

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.

📍 영향받는 시스템

Zincati v0.0.24 ~ v0.0.29 (Fedora CoreOS)

⚔️ 공격 벡터

D-Bus 소켓 접근 권한이 있는 권한 없는 사용자가 polkit 규칙을 악용하여 rpm-ostree 배포 및 재부팅 작업 실행

🛡️ 대응 방법

Zincati를 v0.0.30 이상으로 업그레이드하거나 수동으로 polkit 규칙을 수정

🔧 검증 코드

설치된 Zincati 버전을 확인하여 v0.0.30 이상인지 검증 (v0.0.30 미만이면 취약함)

Shell / Script
rpm -qa | grep -i zincati

💻 영향받는 소프트웨어

Git