Summary: | Не wheel user монтирует флешки | ||
---|---|---|---|
Product: | Sisyphus | Reporter: | Speccyfighter <zxwarior> |
Component: | udisks2 | Assignee: | Yuri N. Sedunov <aris> |
Status: | NEW --- | QA Contact: | qa-sisyphus |
Severity: | critical | ||
Priority: | P3 | CC: | antohami, aris, iv, klark, mike |
Version: | unstable | ||
Hardware: | all | ||
OS: | Linux |
Description
Speccyfighter
2019-05-30 02:45:09 MSK
Ошибка также воспроизводится и в p9/branch Уязвимость в системах на udisks2: Непревилегированный пользователь может смонтировать накопитель usb-flash. # cat /etc/os-release NAME="starter kit" VERSION="p9 (Hypericum)" ID=altlinux VERSION_ID=p9 PRETTY_NAME="ALT Starterkit (Hypericum)" ANSI_COLOR="1;33" CPE_NAME="cpe:/o:alt:starterkit:p9" HOME_URL="http://en.altlinux.org/starterkits" BUG_REPORT_URL="https://bugs.altlinux.org/" # groups tester tester : tester # who | grep tester tester tty3 2019-05-26 19:35 (localhost) tester :1 2019-05-26 19:29 (:1) # ls -l /etc/polkit-1/rules.d/ итого 1 -rw-r--r-- 1 root root 326 апр 26 11:40 50-default.rules # sed -n '173p; 244,248p' /usr/share/polkit-1/actions/org.freedesktop.UDisks2.policy <action id="org.freedesktop.udisks2.filesystem-mount-other-seat"> <defaults> <allow_any>auth_admin</allow_any> <allow_inactive>auth_admin</allow_inactive> <allow_active>auth_admin_keep</allow_active> </defaults> # ls -l /dev/disk/by-id/ | grep sdc lrwxrwxrwx 1 root root 9 мая 26 2019 usb-TOSHIBA_TransMemory_756962663EF9CCC0BE129539-0:0 -> ../../sdc lrwxrwxrwx 1 root root 10 мая 26 2019 usb-TOSHIBA_TransMemory_756962663EF9CCC0BE129539-0:0-part1 -> ../../sdc1 lrwxrwxrwx 1 root root 10 мая 26 2019 usb-TOSHIBA_TransMemory_756962663EF9CCC0BE129539-0:0-part2 -> ../../sdc2 # mount | grep tester /dev/sdc2 on /run/media/tester/alt-live-storage type ext4 (rw,nosuid,nodev,relatime,block_validity,delalloc,barrier,user_xattr,acl,uhelper=udisks2) # cat vcs3-p9.txt Hello friend, say `altlinux' to log in at tty3 localhost login: tester Password: [tester@localhost ~]$ udisksctl mount -b /dev/sdc1 Mounted /dev/sdc1 at /run/media/tester/ALT p8 xfce_i586. [tester@localhost ~]$ [tester@localhost ~]$ groups tester [tester@localhost ~]$ [tester@localhost ~]$ udisksctl mount -b /dev/sda11 ==== AUTHENTICATING FOR org.freedesktop.udisks2.filesystem-mount-system ==== Для монтирования WDC WD5000LPCX-24C6HT0 (/dev/sda11) требуется подтверждение подлинности пользователя Authenticating as: altlinux Password: polkit-agent-helper-1: pam_authenticate failed: Authentication failure ==== AUTHENTICATION FAILED ==== Error mounting /dev/sda11: GDBus.Error:org.freedesktop.UDisks2.Error.NotAuthorized: Not authorized to perform operation # cat vcs3-p9.txt Hello friend, say `altlinux' to log in at tty3 localhost login: tester Password: [tester@localhost ~]$ udisksctl mount -b /dev/sdc1 Mounted /dev/sdc1 at /run/media/tester/ALT p8 xfce_i586. [tester@localhost ~]$ [tester@localhost ~]$ groups tester ... Но это не касается системных устройств с HintSystem: true Здесь права доступа обрабатываются верно: # cat vcs3-p9.txt Hello friend, say `altlinux' to log in at tty3 localhost login: tester Password: ... [tester@localhost ~]$ udisksctl mount -b /dev/sda11 ==== AUTHENTICATING FOR org.freedesktop.udisks2.filesystem-mount-system ==== Для монтирования WDC WD5000LPCX-24C6HT0 (/dev/sda11) требуется подтверждение подлинности пользователя Authenticating as: altlinux Password: polkit-agent-helper-1: pam_authenticate failed: Authentication failure ==== AUTHENTICATION FAILED ==== Error mounting /dev/sda11: GDBus.Error:org.freedesktop.UDisks2.Error.NotAuthorized: Not authorized to perform operation > Следуя правильному алгоритму, udiskctl в tty для непревилегированного, должен
> был задействовать экшн org.freedesktop.udisks2.filesystem-mount-other-seat
> который потребовал бы ввода пароля одного из wheel.
Правильно ли я понял, что Вы считаете, что сессия в X и tty2 это разные seats? Физически, это не так: я, например, в X, и в tty2 нахожусь за одним и тем же монитором и клавиатурой. logind тоже так считает:
$ loginctl list-sessions
SESSION UID USER SEAT TTY
3 500 iv seat0
37 503 test seat0 tty2
2 sessions listed.
Имя пользователя не имеет значения.
Вы уверены, что у вас правда несколько seats? Как Вы этого добились?
|