Насколько важен пароль sudo?

Выполните следующую команду.

setxkbmap -layout gb

Это сработало для меня в Lubuntu 15.10.

1
задан 13 April 2017 в 15:24

4 ответа

Да, они могут.

Существует несколько способов сделать это, но грубый ввод пароля sudo, вероятно, не первый.

Во-первых, sudo пароль - пароль пользователя; так что действительно, что им нужно получить, это ваш пароль.

Во-вторых, взломать пароль пользователя с помощью bruteforce для доступа к системе, вероятно, является последним средством.

(но в основном более эффективные) способы взлома в другую систему.

Как правило, злоумышленник либо просто попытается использовать наиболее распространенные уязвимости (наиболее известным, вероятно, является получение пользовательской оболочки любым способом и эксплойтом ShellShock, чтобы получить корневую оболочку) или выполнить наилучшее задание по строкам:

Сканирование открытых портов в системе, чтобы получить информацию, такую ​​как: Версия операционной системы Исполнение запущенных сервисов Использование известной операционной системы или запущенных сервисов (переполнение буфера, ...), чтобы получить хотя бы оболочку пользователя, а затем попытаться получить корневую оболочку (опять же, возможно, используя ShellShock)

Bruteforcing sudo / пароль пользователя может быть попыткой в ​​случае, если корневая оболочка не может быть получена иначе, но, например, с использованием servi ce, выполняемый как root, не потребует от злоумышленника принудительного использования пароля sudo / пользователя.

6
ответ дан 23 May 2018 в 16:49
  • 1
    Спасибо. вкратце, это означает, что злоумышленнику не нужен пароль sudo, чтобы получить доступ root? – mxdsp 9 October 2015 в 18:03
  • 2
    @mxdsp Точно. Положите это так: если злоумышленнику удается получить пользовательскую оболочку sudoer любым способом (например, взломать запущенную программу пользователя sudoer), он может использовать известные эксплойты (в моем ответе я упомянул самые печально известные), чтобы получить корневую оболочку, минуя необходимость пароля пользователя / sudo. Еще лучше, если ему удастся использовать сервис под управлением root, он будет root. – kos 9 October 2015 в 18:21
  • 3
    @mxdsp Теперь мы довольно обобщаем, но см. это видео , чтобы понять, например, как пользователь без прав sudo (= ~ пользователь, в котором злоумышленник зарегистрирован, но который злоумышленник не имеет) t знать пароль) может получить корневую оболочку, просто используя известные ошибки (в этом случае печально известный ShellShock). – kos 9 October 2015 в 18:21
  • 4
    @mxdsp На стороне не я не имел в виду пользователя sudoers, просто пользователь. Это не обязательно, я просто думал слишком много вещей одновременно. – kos 9 October 2015 в 19:04
Если я узнал что-нибудь в последние несколько лет о безопасности, то одно: ничего невозможно. Пока у вас есть доступ к сети, определенно. Каждая работающая в вашей системе служба, которая может быть доступна по сети, теоретически уязвима и, следовательно, потенциальная слабость.

И поэтому для нападающего с достаточными идеями это возможно.

Поэтому важно оценить, что возможно, с оправданными техническими усилиями и тем, что защищает вас так хорошо, что вы сами можете больше не работает.

3
ответ дан 23 May 2018 в 16:49
  • 1
    У меня есть доступ к сети. Может быть более конкретным о том, насколько вероятна такая атака? – mxdsp 9 October 2015 в 16:37
  • 2
    используйте двухфакторную аутентификацию. Вам нужно отредактировать PAM.D и так далее. – Aizuddin Zali 9 October 2015 в 16:41
  • 3
    @Arronical ссылка с этого форума, а также очень хороший гид. – Aizuddin Zali 9 October 2015 в 17:03
  • 4
    @Arronical я поставил его в вопросительный комментарий. Это руководство – Aizuddin Zali 9 October 2015 в 17:10
  • 5
    Извините @AizuddinZali Я не обновил страницу! – Arronical 9 October 2015 в 17:14
Я знаю, что пароль sudo защищает мой компьютер от локального взлома того, у кого есть физический доступ к нему (редактирование: на самом деле это не так). Мой пароль достаточно силен для этой цели, но я знаю, что он недостаточно силен, если кто-то может перенаправить его удаленно. Может ли кто-нибудь получить доступ к моему компьютеру в корневом режиме, используя мой пароль sudo без физического доступа к компьютеру, на стандартной установке рабочего стола Ubuntu?

пароль sudo предназначен не только для локальной защиты, но и для добавления дополнительного уровня безопасности в использование привилегий root. Хорошее обсуждение можно найти здесь https://superuser.com/a/771523/467316

Ваш пароль может быть не таким сильным, как вы думаете. Сейчас я разорвал 20-40% хэшей Active Directory моего клиента для тех, кого я видел раньше, у тех, у кого неправильные правила пароля, 70% трещины. Я рекомендую 16 символов, сложные пароли. Графические карты oclHashcat и Radeon могут нанести большой урон. Добавьте все сваливания паролей из каждого нарушения за последние 5 лет, и вы, как правило, получаете хороший словарь для работы.

Если вы используете SSH, внесите некоторые изменения в sshd_config [ ! d5]

sudo nano /etc/ssh/sshd_config

MUSTS прямо из ворот (последний отключает ftp-сервер, если вы его не используете).

Protocol 2
X11Forwarding no
PermitEmptyPasswords no
MaxAuthTries 5
#Subsystem sftp /usr/lib/openssh/sftp-server

Сохраните его, перезапустите ssh

sudo service ssh restart

Использовать шифрование с открытым ключом Начните с создания ключа на удаленном компьютере (с использованием puttygen или любого другого, имеющегося у вашей ОС). Скопируйте открытый ключ на свой компьютер Ubuntu под пользователем, который вы хотите войти в качестве файла authorized_keys (вам, вероятно, придется его создать)

sudo nano /home/yourdumbusername/.ssh/authorized_keys

скопировать открытый ключ в этом формате

[ f5]

сохраните его и настройте свой sshd_config, чтобы разрешить доступ к открытому ключу

sudo nano /etc/ssh/sshd_config

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      %h/.ssh/authorized_keys

сохранить и перезапустить ssh

sudo service ssh restart

Попробовать SSHing для вашего узла ubuntu из вашего закрытый ключ с использованием шифрования с открытым ключом. Если все прошло хорошо, вернитесь к узлу ubuntu и отключите аутентификацию пароля.

sudo nano /etc/ssh/sshd_config

PasswordAuthentication no

Сохраните и перезапустите ssh

sudo service ssh restart

Попробуйте sshing с компьютера с закрытым ключом еще раз, чтобы подтвердить.

Хотите добавить еще? настройте непривилегированную учетную запись, включите PermitRootLogin no, перезапустите ssh, добавьте свой открытый ключ в авторизованные_файлы новой учетной записи, войдите в систему как незащищенную учетную запись, su в свою корневую или привилегированную учетную запись, когда вам нужно укорениться или получить привилегию по своему усмотрению.

2
ответ дан 23 May 2018 в 16:49

Цель sudo не связана с паролем, а вместо этого дает некоторым пользователям возможности root-ish, ограничивая их другими пользователями, не требуя от них ввода корневого входа (пароль / ключ / маркер безопасности / etc). Например, на моей работе каждый день работники могут запускать / закрывать / устанавливать & amp; модернизировать свои станции (из веторованного хранилища данных) через sudo. Им не даются другие корневые привилегии, такие как целенаправленное удаление /, форматирование устройств, добавление и удаление пользователей, решение о том, какие модули ядра должны быть внесены в черный список или что выполняется в crontab (etc, etc и т. Д.). В то время как у вас дома, ваш sudo позволяет получить полный доступ к машине. Что касается пароля, на самом деле это пароль вашей учетной записи пользователя, который требуется sudo (тот же самый, который вы использовали бы для входа в систему, если автолог не включен.) И этот пароль имеет те же уязвимости, что и любой другой пароль.

Плохой совет. Если вы хотите сделать root обычной учетной записью в unix (linux / apple osx), поддерживаемом sudo, запустите следующий

sudo -s
passwd
Enter your unix password:

. В этот момент корень имеет регулярный пароль, и вы можете просто выйти из системы и войти в систему под учетной записью root с указанным паролем на «старом способе».

Что касается безопасности, если одна из программ (например, веб-сервер, mysql, php daemon, sshd) работает как повышенная учетная запись .. скажем, root и имеет известный эксплойт там, тогда злоумышленники могут не нуждаться в каких-либо учетных данных безопасности для получения доступа. Они могут использовать уязвимость программы и просто порождать новую оболочку из этой программы, выполняемой с правами root. Однако это довольно редко, так как менеджеры дистрибутивов знают о подобных проблемах и выполняют выдающуюся работу по созданию хорошо продуманной и обычно безопасной среды по умолчанию.

В Bad Tip аналогичная операция с sudo была бы правой кнопкой мыши и запускаться как системный администратор (или UAC-привилегия).

2
ответ дан 23 May 2018 в 16:49

Другие вопросы по тегам:

Похожие вопросы: