Я только что запустил это несколько секунд назад. Мне удалось сделать это Ctrl- Cкак только я понял, что я начал делать.
Пока что единственный каталог, через который он начал проходить, — это /bin
.
Я боюсь делать что-либо еще. Пока что я понял, что su
больше не могу пользоваться как обычный пользователь.
К счастью, у меня все еще открыт другой root-терминал. Что мне делать?
решение1
Почти все в /bin/ должно принадлежать пользователю root:root, поэтому, если вы выполните следующую команду, вы сможете исправить владельца этих файлов:
chown root:root -R /bin/
Вы также можете убедиться, что бит setuid правильно установлен в /bin/su, что можно исправить следующим образом:
chmod 4755 /bin/su
решение2
Пользователь RedHat:
chown 0:0 /bin/rpm && rpm -qa | xargs rpm --setugids
Пользователь Debian/Ubuntu:
chown 0:0 /bin/* /usr/bin/*
chown daemon:daemon /usr/bin/at
chown 0:utmp /usr/bin/screen
chmod 02755 /usr/bin/screen
chmod u+s /bin/fusermount /bin/mount /bin/su /bin/mount
chmod u+s /usr/bin/sudo /usr/bin/passwd
screen
Пока экран работает, сделайте это как минимум дважды:
dpkg --get-selections | awk '{ if ($2 == "install") print $1}' \
| xargs apt-get install --reinstall --
Платитьоченьвнимательно следите за выводом, поскольку если он жалуется на то, что у чего-то неправильные разрешения, вам следует исправить это в другом окне экрана.
Краткий курс на экране:
Control+A - command key
Control+A a - emit a control+A
Control+A n - next "screen"
Control+A c - create "screen"
Пользователь Solaris:
Тебе пиздец.
pkgchk -R / -f -a
сбросит все разрешения, но setuid-ness все равно будет нарушен. Используйте резервную копию или другую машину Solaris, чтобы найти скрипты и файлы setuid/setgid и исправить их вручную.
ВАЖНОЕ О РЕЗЕРВНЫХ КОПИЯХ
То, что вы можете их вернуть, а не то, что вы их забираете.
Другие люди дали вам совет делать резервные копии, но я хочу добавить, что вы должны их тестировать. Если вы используете unix-систему, естьнет никаких причинчто вы не можете периодически сбрасывать файлы на другую машину и убеждаться, что все работает.
решение3
Имейте в виду, что флаги set-uid на любых затронутых двоичных файлах также могли быть удалены; это функция безопасности chown. Проверьте с помощью другой системы, какие двоичные файлы имеют флаги set-uid или set-gid, и обязательно установите их на своих двоичных файлах.
решение4
Если бы это была система Debian, я бы переустановил все.