Bug 35048 - исполнение команды в терминале без запроса пароля
Summary: исполнение команды в терминале без запроса пароля
Status: CLOSED FIXED
Alias: None
Product: Branch p8
Classification: Distributions
Component: gksu (show other bugs)
Version: не указана
Hardware: all Linux
: P3 normal
Assignee: Andrey Cherepanov
QA Contact: qa-p8@altlinux.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-06-16 07:41 MSK by saber
Modified: 2018-12-17 21:54 MSK (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description saber 2018-06-16 07:41:03 MSK
Здравствуйте. Обнаружил баг с пакетом gksudo. При наборе в терминале команду gksudo -u root и вместо того, чтобы запросить пароль, выдает окно на выполнении команды, где можно от имени root пользователя выполнять команды. скриншот прикладываю.
Comment 1 Michael Shigorin 2018-06-16 11:52:01 MSK
Без /etc/sudoers малополезно, боюсь.  Если не хотите приводить -- хотя бы охарактеризуйте, а то вдруг там NOPASSWD себе и есть.
Comment 2 saber 2018-06-16 12:54:14 MSK
копирую информацию из sudoers. Как вам прислать скриншот данного бага?
## sudoers file.
##
## This file MUST be edited with the 'visudo' command as root.
## Failure to use 'visudo' may result in syntax or file permission errors
## that prevent sudo from running.
##
## See the sudoers man page for the details on how to write a sudoers file.
##

##
## Host alias specification
##
## Groups of machines. These may include host names (optionally with wildcards),
## IP addresses, network numbers or netgroups.
# Host_Alias	WEBSERVERS = www1, www2, www3

##
## User alias specification
##
## Groups of users.  These may consist of user names, uids, Unix groups,
## or netgroups.
# User_Alias	ADMINS = millert, dowdy, mikef
User_Alias	WHEEL_USERS = %wheel
User_Alias	XGRP_USERS = %xgrp
# User_Alias	SUDO_USERS = %sudo

##
## Cmnd alias specification
##
## Groups of commands.  Often used to group related commands together.
# Cmnd_Alias	PROCESSES = /usr/bin/nice, /bin/kill, /usr/bin/renice, \
# 			    /usr/bin/pkill, /usr/bin/top
# Cmnd_Alias	REBOOT = /sbin/halt, /sbin/reboot, /sbin/poweroff

##
## Defaults specification
##
## You may wish to keep some of the following environment variables
## when running commands via sudo.
##
## Locale settings
# Defaults env_keep += "LANG LANGUAGE LINGUAS LC_* _XKB_CHARSET"
##
## Run X applications through sudo; HOME is used to find the
## .Xauthority file.  Note that other programs use HOME to find   
## configuration files and this may lead to privilege escalation!
# Defaults env_keep += "HOME"
##
## X11 resource path settings
# Defaults env_keep += "XAPPLRESDIR XFILESEARCHPATH XUSERFILESEARCHPATH"
##
## Desktop path settings
# Defaults env_keep += "QTDIR KDEDIR"
##
## Allow sudo-run commands to inherit the callers' ConsoleKit session
# Defaults env_keep += "XDG_SESSION_COOKIE"
##
## Uncomment to enable special input methods.  Care should be taken as
## this may allow users to subvert the command being run via sudo.
# Defaults env_keep += "XMODIFIERS GTK_IM_MODULE QT_IM_MODULE QT_IM_SWITCHER"
##
## Uncomment to use a hard-coded PATH instead of the user's to find commands
# Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
##
## Uncomment to send mail if the user does not enter the correct password.
# Defaults mail_badpass
##
## Uncomment to enable logging of a command's output, except for
## sudoreplay and reboot.  Use sudoreplay to play back logged sessions.
# Defaults log_output
# Defaults!/usr/bin/sudoreplay !log_output
# Defaults!/usr/local/bin/sudoreplay !log_output
# Defaults!REBOOT !log_output

# If env_reset is disabled, sudo will NOT reset the environment
# to only contain the fixed list of variables.
# See sudoers(5) for details.
#Defaults:WHEEL_USERS !env_reset

# Preserve DISPLAY and XAUTHORITY environment variables
# for "xgrp" group members.
Defaults:XGRP_USERS env_keep += "DISPLAY XAUTHORITY"

##
## Runas alias specification
##

##
## User privilege specification
##
# root ALL=(ALL) ALL

## Uncomment to allow members of group wheel to execute any command
# WHEEL_USERS ALL=(ALL) ALL

## Same thing without a password
# WHEEL_USERS ALL=(ALL) NOPASSWD: ALL

## Uncomment to allow members of group sudo to execute any command
# SUDO_USERS	ALL=(ALL) ALL

## Uncomment to allow any user to run sudo if they know the password
## of the user they are running the command as (root by default).
# Defaults targetpw  # Ask for the password of the target user
# ALL ALL=(ALL) ALL  # WARNING: only use this together with 'Defaults targetpw'

## Read drop-in files from /etc/sudoers.d
## (the '#' here does not indicate a comment)
#includedir /etc/sudoers.d
Comment 3 saber 2018-06-16 12:55:30 MSK
Попробую раскоментить данную строчку:## Uncomment to allow members of group wheel to execute any command
# WHEEL_USERS ALL=(ALL) ALL
Comment 4 saber 2018-06-16 20:02:17 MSK
раскомментирование не дало результата.
Comment 5 Sergey Novikov 2018-06-18 10:45:36 MSK
(В ответ на комментарий №0)
> где можно от имени root пользователя выполнять команды. скриншот
> прикладываю.

Программа в итоге выполняется от root или нет?
Comment 6 saber 2018-06-18 11:33:32 MSK
именно выполняется без запроса пароля, в других командах требующих root  доступа запрашиваю пароль.
Comment 7 Sergey Novikov 2018-06-18 11:50:45 MSK
(В ответ на комментарий №6)
> именно выполняется без запроса пароля, в других командах требующих root 
> доступа запрашиваю пароль.

попробуйте с помощью gksudo создать тестовый файл: touch /root/testfile
а потом из-под root проверьте создался ли он: # ls -l /root/testfile
Comment 8 Nikita Obukhov 2018-06-18 11:59:31 MSK
Выполнил $gksudo -u root и выбрал system-config-printer. Результат

[test@work-x86-64 Рабочий стол]$ gksudo -u root

(gksudo:2585): GLib-CRITICAL **: g_str_has_prefix: assertion 'str != NULL' failed

Пароль не спрашивает. Программа не выполняется.

В файле /etc/sudoers раскомментировал строку WHEEL_USERS ALL=(ALL) ALL и перезагрузился.
Снова выполнил gksudo. Программа запустилась без требования пароля
Comment 9 Nikita Obukhov 2018-06-18 12:17:21 MSK
С раскомментированной WHEEL_USERS ALL=(ALL) ALL.
#ls -l /root/testfile

-rw-r--r-- 1 root root 0 июн 18 12:09 /root/testfile
Comment 10 Nikita Obukhov 2018-06-18 12:34:30 MSK
В итоге.
Проверкой будет создание файла в дирректории /root
При выполнении с закомментированной строкой WHEEL_USERS ALL=(ALL) ALL в /etc/sudoers
[test@work-x86-64 Рабочий стол]$ gksudo -u root

(gksudo:2585): GLib-CRITICAL **: g_str_has_prefix: assertion 'str != NULL'
failed

Если раскомментировать WHEEL_USERS ALL=(ALL) ALL пароль спрашивает, но файл не создается. 
[test@work-x86-64 Рабочий стол]$ gksudo -u root
GNOME_SUDO_PASS
(В предыдущем комментарии допустил ошибку)
Comment 11 Nikita Obukhov 2018-06-18 12:48:51 MSK
Файл в обоих случаях не создается.
Comment 12 saber 2018-06-18 14:09:30 MSK
попробуй запустить просто команду gksudo -u root, вылезает окно, в котором можно вводить команды и выполнять без пароля от имени root.
Comment 13 saber 2018-12-17 21:54:17 MSK
решено