Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π² ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅ smb4k, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²Π° root Π² систСмС

Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅ smb4k, примСняСмой Π² KDE для обнаруТСния ΠΈ монтирования SMB-Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ², выявлСны уязвимости, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ root-доступ ΠΊ систСмС. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ устранСны Π² выпускС Smb4K 4.0.5. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ состояниС Π½ΠΎΠ²ΠΎΠΉ вСрсии ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ исправлСния Π² дистрибутивах ΠΌΠΎΠΆΠ½ΠΎ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… страницах: Debian, Ubuntu, Fedora, SUSE/openSUSE, Gentoo, Arch ΠΈ FreeBSD.

Для выполнСния ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… дСйствий Π² smb4k ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ KAuth-ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ, запускаСмыС с ΠΏΡ€Π°Π²Π°ΠΌΠΈ root. Уязвимости ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ Smb4KMountHelper ΠΈ Π²Ρ‹Π·Π²Π°Π½Ρ‹ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для монтирования (CVE-2025-66003) ΠΈ отмонтирования (CVE-2025-66002) сСтСвой Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы Π΄ΠΎΠ»ΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π½Π΅ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Π»ΠΈ ΠΎΠΏΡ†ΠΈΠΈ, ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ mount.cifs ΠΈ unmount.cifs, Ρ‡Ρ‚ΠΎ позволяло Π½Π΅ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ Π»ΡŽΠ±Ρ‹Π΅ ΠΎΠΏΡ†ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ mh_options.

НапримСр, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΎΠΏΡ†ΠΈΠΉ Β«filemode=04777,uid=0Β» всСм Ρ„Π°ΠΉΠ»Π°ΠΌ Π² ΠΏΡ€ΠΈΠΌΠΎΠ½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ Π±ΡƒΠ΄Π΅Ρ‚ выставлСн Ρ„Π»Π°Π³ suid root. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ SMB-сСрвСр ΠΈ ΠΏΡ€ΠΈΠΌΠΎΠ½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с Π½Π΅Π³ΠΎ собствСнный Ρ€Π°Π·Π΄Π΅Π» с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌΠΈ исполняСмыми Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈ выставлСнии ΠΎΠΏΡ†ΠΈΠΉ Β«filemode=04777,uid=0Β» Π±ΡƒΠ΄ΡƒΡ‚ выполнятся с ΠΏΡ€Π°Π²Π°ΠΌΠΈ root.

Π’ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ Smb4KMountHelper Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π½Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΠ»ΠΈΡΡŒ Ρ†Π΅Π»Π΅Π²Ρ‹Π΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ, Ρ‡Ρ‚ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, позволяло ΠΏΡ€ΠΈΠΌΠΎΠ½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свой SMB-Ρ€Π°Π·Π΄Π΅Π» вмСсто ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° /bin ΠΈ ΠΏΠΎΠ΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² Π½Π΅Π³ΠΎ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ /bin/bash. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ mh_krb5ticket ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ с ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Kerberos ΠΈ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π²Ρ‹Π²ΠΎΠ΄Π° содСрТимого любого Ρ„Π°ΠΉΠ»Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, /etc/shadow, Π² stderr ΠΈΠ»ΠΈ ΠΏΡƒΠ±Π»ΠΈΡ‡Π½ΠΎ доступный Π»ΠΎΠ³.

Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Smb4KMountHelper::unmount() ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Π²Ρ‹Π·ΠΎΠ²Π° ΠΎΡ‚ΠΊΠ°Π·Π° Π² обслуТивании Ρ‡Π΅Ρ€Π΅Π· ΠΎΡ‚ΠΌΠΎΠ½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ систСмных Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ², манипулируя содСрТимым ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° mh_mountpoint. Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Π² ΠΊΠΎΠ΄Π΅ Π±Ρ‹Π»Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Ρ‚ΠΈΠΏ Ρ€Π°Π·Π΄Π΅Π»Π°, которая пропускала Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ cifs, smbfs ΠΈ smb3, Π½ΠΎ Π² if-Π±Π»ΠΎΠΊΠ΅ для Π²Ρ‹Π²ΠΎΠ΄Π° ошибки Π±Ρ‹Π» ΠΏΡ€ΠΎΠΏΡƒΡ‰Π΅Π½ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Β«returnΒ» ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π΅ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π»ΠΎΡΡŒ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ