ะ ะฐัะบัััั ะดะตัะฐะปะธ ะธ ะพะฟัะฑะปะธะบะพะฒะฐะฝ ัะบัะฟะปะพะธั ะดะปั ััะทะฒะธะผะพััะธ CIFSwitch (CVE ะฟะพะบะฐ ะฝะต ะฟัะธัะฒะพะตะฝ) ะฒ ะผะพะดัะปะต ัะดัะฐ CIFS ะธ ะธะฝััััะผะตะฝัะฐัะธะธ cifs-utils, ะฟะพะทะฒะพะปัััะตะน ะฝะตะฟัะธะฒะธะปะตะณะธัะพะฒะฐะฝะฝะพะผั ะฟะพะปัะทะพะฒะฐัะตะปั ะฟะพะปััะธัั ะฟัะฐะฒะฐ root ะฒ ัะธััะตะผะต. ะัะฟัะฐะฒะปะตะฝะธะต ะดะพัััะฟะฝะพ ัะพะปัะบะพ ะฒ ะฒะธะดะต ะฟะฐััะฐ, ะบะพัะพััะน ะพะฟัะฑะปะธะบะพะฒะฐะฝ 16 ะผะฐั ะธ 19 ะผะฐั ะฑัะป ะฟัะธะฝัั ะฒ ะพัะฝะพะฒะฝัั ะฒะตัะบั ัะดัะฐ Linux (เบเบฒเบเบเปเบญเบเบเบฒเบเบเบณเบฅเบธเบเบฎเบฑเบเบชเบฒเปเบเบตเปเบเบฅเบเบฑเบเบเปเปเบเบฑเบเบกเบตเปเบซเปเปเบเบทเปเบญ).
ะฃัะทะฒะธะผะพััั ะทะฐััะฐะณะธะฒะฐะตั ะบะพะด, ะพะฑะตัะฟะตัะธะฒะฐััะธะน ะฟะพะดะดะตัะถะบั ะผะตั ะฐะฝะธะทะผะฐ cifs.spnego ะดะปั ะฒัะฟะพะปะฝะตะฝะธั ะฐััะตะฝัะธัะธะบะฐัะธะธ ะฟะพ ะฟัะพัะพะบะพะปั SPNEGO (Simple and Protected GSSAPI Negotiation) ะฟัะธ ะฟะพะดะบะปััะตะฝะธะธ ะบ SMB-ัะตัะฒะตัะฐะผ. ะัะธ ะธัะฟะพะปัะทะพะฒะฐะฝะธะธ cifs.spnego ะดะปั ะพะฟัะตะดะตะปะตะฝะธั ะบะปััะตะน ะธะท Kerberos/SPNEGO ัะดัะพ ะฒัะทัะฒะฐะตั ะพะฑัะฐะฑะพััะธะบ cifs.upcall, ะฟัะตะดะพััะฐะฒะปัะตะผัะน ะฟะฐะบะตัะพะผ cifs-utils ะธ ะฒัะฟะพะปะฝัะตะผัะน ะฒ ะฟะพะปัะทะพะฒะฐัะตะปััะบะพะผ ะฟัะพัััะฐะฝััะฒะต ั ะฟัะฐะฒะฐะผะธ root.
ะะตะฟัะธะฒะธะปะตะณะธัะพะฒะฐะฝะฝัะน ะฟะพะปัะทะพะฒะฐัะตะปั ะผะพะถะตั ะธะฝะธัะธะธัะพะฒะฐัั ะฒัะทะพะฒ ะพะฑัะฐะฑะพััะธะบะฐ ัะตัะตะท ะพัะฟัะฐะฒะบั ะทะฐะฟัะพัะฐ, ััะตะฑัััะตะณะพ ะฟะพะปััะตะฝะธั ะบะปััะฐ ยซcifs.spnegoยป, ั ะฟะพะดะดะตะปัะฝัะผ ะพะฟะธัะฐะฝะธะตะผ ยซCIFS SPNEGOยป. ะ ะพะฑัะฐะฑะพััะธะบะต cifs.upcall ะฝะต ะฒัะฟะพะปะฝััััั ะดะพะฟะพะปะฝะธัะตะปัะฝัะต ะฟัะพะฒะตัะบะธ ะบะพััะตะบัะฝะพััะธ ะฟะฐัะฐะผะตััะพะฒ, ะฟะตัะตะดะฐะฝะฝัั
ัะตัะตะท ัะดัะพ, ััะตะดะธ ะฟัะพัะตะณะพ ะพะฝ ะฒะพัะฟัะธะฝะธะผะฐะตั ะทะฐัะปัะถะธะฒะฐััะธะผะธ ะดะพะฒะตัะธั ะทะฝะฐัะตะฝะธั ะฟะพะปะตะน pid, uid, creduid ะธ
upcall_target. ะะพัะปะต ะฐะบัะธะฒะฐัะธะธ ะพะฑัะฐะฑะพััะธะบ cifs.upcall ะฟะตัะตะบะปััะฐะตััั ะฒ ะฟัะพัััะฐะฝััะฒะฐ ะธะผัะฝ ะฟะพะปัะทะพะฒะฐัะตะปััะบะพะณะพ ะฟัะพัะตััะฐ, ัะตัะตะท ะบะพัะพััะน ะฑัะป ะพัะฟัะฐะฒะปะตะฝ ะทะฐะฟัะพั, ะธ ะดะพ ัะฑัะพัะฐ ะฟัะธะฒะธะปะตะณะธะน ะฒัะฟะพะปะฝัะตั ะฟะพะธัะบ ะฒ ัะธััะตะผะฝะพะน ะฑะฐะทะต NSS (Name Service Switch).
ะัะฐะบัััะธะน ะผะพะถะตั ะทะฐะฟัััะธัั ัะฒะพะน ะฟัะพัะตัั ะฒ ะพัะดะตะปัะฝะพะผ ะฟัะพัััะฐะฝััะฒะต ะธะผัะฝ ัะพัะตะบ ะผะพะฝัะธัะพะฒะฐะฝะธั, ััะพ ะฟัะธะฒะตะดัั ะบ ะฒัะฟะพะปะฝะตะฝะธั ะพะฑัะฐัะตะฝะธั ะบ NSS ะฒ ะตะณะพ ะบะพะฝัะตะบััะต. ะะปั ัะบัะฟะปัะฐัะฐัะธะธ ััะทะฒะธะผะพััะธ ะดะพััะฐัะพัะฝะพ ะฒะฝัััะธ ัะพะทะดะฐะฝะฝะพะณะพ ะฐัะฐะบัััะธะผ ะพะบััะถะตะฝะธั ัะฐะทะผะตััะธัั ัะพะฑััะฒะตะฝะฝัะน ัะฐะนะป ะบะพะฝัะธะณััะฐัะธะธ /etc/nsswitch.conf ะธ ะฝะฐะฑะพั ะฟะพะดััะฐะฒะฝัั ะฑะธะฑะปะธะพัะตะบ libnss_*.so.2. ะัะฟะพะปะฝะตะฝะธะต NSS-ะทะฐะฟัะพัะฐ ะพะฑัะฐะฑะพััะธะบะพะผ cifs.upcall ะฟัะธะฒะตะดัั ะบ ะทะฐะณััะทะบะต ะฟะพะดััะฐะฒะปะตะฝะฝัั ะฐัะฐะบัััะธะผ ะฑะธะฑะปะธะพัะตะบ ั ะฟัะฐะฒะฐะผะธ root.
ะะปั ัะบัะฟะปัะฐัะฐัะธะธ ััะทะฒะธะผะพััะธ ะฒ ัะธััะตะผะต ะดะพะปะถะฝะพ ะฑััั ัะฐะทัะตัะตะฝะพ ัะพะทะดะฐะฝะธะต ะฟัะพัััะฐะฝััะฒ ะธะผัะฝ ะธะดะตะฝัะธัะธะบะฐัะพัะพะฒ ะฟะพะปัะทะพะฒะฐัะตะปะตะน (user namespace) ะธะปะธ ัะพัะตะบ ะผะพะฝัะธัะพะฒะฐะฝะธั (mount namespace), ะฐ ัะฐะบะถะต ััะตะฑัะตััั ะฝะฐะปะธัะธะต ะฒ ัะธััะตะผะต ัััะฐะฝะพะฒะปะตะฝะฝะพะณะพ ะฟะฐะบะตัะฐ cifs-utils. ะะธัััะธะฑััะธะฒั, ะฒ ะบะพัะพััั ะฒะพะทะผะพะถะฝะฐ ัะบัะฟะปัะฐัะฐัะธั ััะทะฒะธะผะพััะธ ะฒ ะบะพะฝัะธะณััะฐัะธะธ ะฟะพ ัะผะพะปัะฐะฝะธั:
- Linux Mint Cinnamon 21.3/22.3
- CentOS Stream 9 GNOME
- Rocky Linux 9 เบชเบฐเบเบฒเบเบตเปเบฎเบฑเบเบงเบฝเบ
- Kali Linux
- AlmaLinux 9.7 เบชเบฐเบเบฒเบเบตเปเบฎเบฑเบเบงเบฝเบ
- SUSE 15 SP7/SAP 15 SP7/SAP 16
ะะธัััะธะฑััะธะฒั, ะฒ ะบะพัะพััั ะดะปั ัะฐะฑะพัั ัะบัะฟะปะพะธัะฐ ััะตะฑัะตััั ัััะฐะฝะพะฒะบะฐ ะฟะฐะบะตัะฐ cifs-utils:
- Ubuntu 18.04/20.04/22.04 Desktop/Server
- Pop!_OS 22.04 Intel/24.04 Generic
- Ubuntu 24.04 Desktop minimal/full and Server
- Debian 11/12/13 netinst standard and GNOME/KDE/standard/XFCE
- CentOS Stream 9 Cinnamon/KDE/MATE/XFCE
- Rocky Linux 9 KDE/Workstation-Lite
- openSUSE Leap 15.6 GNOME/KDE
- openSUSE Tumbleweed GNOME/KDE
- Rocky Linux 8 GenericCloud
- Oracle Linux 8/9 KVM
- Amazon Linux 2023 KVM
ะะธัััะธะฑััะธะฒั, ะฒ ะบะพัะพััั ะฒ ะบะพะฝัะธะณััะฐัะธะธ ะฟะพ ัะผะพะปัะฐะฝะธั ะฟัะธะผะตะฝััััั ะฝะฐัััะพะนะบะธ, ะฑะปะพะบะธััััะธะต ัะบัะฟะปัะฐัะฐัะธั ััะทะฒะธะผะพััะธ ัะตัะตะท SELinux ะธะปะธ Apparmor, ะดะฐะถะต ะฟัะธ ะฝะฐะปะธัะธะธ ะฟะฐะบะตัะฐ cifs-utils:
- Ubuntu 26.04 Desktop/Server
- Fedora 40/41/42/43/44 Workstation/Server
- CentOS Stream 10 GNOME/KDE
- Rocky Linux 10 เบชเบฐเบเบฒเบเบตเปเบฎเบฑเบเบงเบฝเบ
- AlmaLinux 10.1 เบชเบฐเบเบฒเบเบตเปเบฎเบฑเบเบงเบฝเบ
- Oracle Linux 10 KVM
- openSUSE Tumbleweed GNOME/KDE
- openSUSE Leap 16.0 OEM GNOME/KDE/Minimal-VM
- เบเบนเบ Linux 16
ะ ะบะฐัะตััะฒะต ะพะฑั ะพะดะฝะพะณะพ ะฟััะธ ะทะฐัะธัั ะผะพะถะฝะพ ะทะฐะฑะปะพะบะธัะพะฒะฐัั ะฐะฒัะพะผะฐัะธัะตัะบัั ะทะฐะณััะทะบั ะผะพะดัะปั ัะดัะฐ cifs:
sh -c ยซprintf โinstall cifs /bin/false\nโ > /etc/modprobe.d/cifs.conf; rmmod cifs 2>/dev/null; trueยป
ะขะฐะบะถะต ะผะพะถะฝะพ ะทะฐะฟัะตัะธัั ะธัะฟะพะปัะทะพะฒะฐะฝะธะต user namespace (ยซsysctl -w kernel.unprivileged_userns_clone=0ยป) ะธ ัะดะฐะปะธัั ะธะปะธ ะฟะตัะตะพะฟัะตะดะตะปะธัั ะฟัะฐะฒะธะปะพ cifs.spnego ะฒ ะฝะฐัััะพะนะบะฐั cifs-utils:
cat >/etc/request-key.d/cifs.spnego.conf <โEOFโ
create cifs.spnego * * /usr/sbin/keyctl negate %k 30 %S
EOF
ะขะตะผ ะฒัะตะผะตะฝะตะผ, ะทะฐ 28 ะผะฐั ะพะฟัะฑะปะธะบะพะฒะฐะฝะพ 137 ะพััััะพะฒ ะพะฑ ััะทะฒะธะผะพัััั
ะฒ ัะดัะต Linux, ะฐ ะทะฐ 27 ะผะฐั โ 277 ะพััััะพะฒ.
เปเบซเบผเปเบเบเปเปเบกเบนเบ: opennet.ru
