
В какой-то степени я понимаю цель ограничения разрешений только тем, что необходимо, но я не полностью осознаю возможные опасности их открытия. Больше всего меня беспокоят веб-серверы.
Предположим, что самый худший сценарий — 777 разрешений по всей системе. Я вижу, что если бы была брешь в безопасности, это автоматически стало бы уязвимостью эскалации. Что еще? Это помимо очевидного, что другие пользователи в системе имели бы слишком много доступа.
Примечание: Я не предлагаю использовать свободные разрешения. Я хочу понять опасности, чтобы лучше применять настройки.
решение1
Примечание: я не исследователь в области безопасности, поэтому все это может быть крайне неточным.
Для веб-сервера, особенно форума/блога/CMS, на котором пользователи могут самостоятельно регистрироваться, отсутствие прав доступа способствует следующей атаке:
- Злонамеренный пользователь загружает файл скрипта/URL-адрес проекта, который включает внешний файл скрипта
- Система выполняет содержимое скрипта
- Система злонамеренного пользователя 0wns
Ограничение прав доступа к файлам может помочь
- профилактика (скрипты не выполняются)
- смягчение (может помочь ограничить масштаб ущерба)
- аудит и очистка (знание того, какой пользователь/группадолжен(свойство what files позволяет вам определить, что было скомпрометировано, если что-то не на своем месте)
решение2
Этот сайт может показать вам общую картину проблем и т.д.http://packetstormsecurity.org/
Итак, если взять ваш пример с глобальным разрешением 777 в вашей системе, то могут произойти следующие вещи:
- rm -rf / или /etc/passwd или shadow
- пользователи копируют данные других пользователей и/или изменяют что-либо в своем домене
- пользователи, использующие ваш сервер в вредоносных целях (например, для ddos-атак на другие сайты)
- изменение данных пароля или тени
Думаю, это уже многое говорит само за себя, просто НЕ ДЕЛАЙТЕ...
Конечно, это были всего лишь примеры, на самом деле есть гораздо больше вещей, и 777 — не единственное, о чем вам следует беспокоиться. Существует множество способов получить доступ к вашей системе.
Например, старые приложения, имеющие известные проблемы безопасности.
решение3
Худший сценарий использования 777 для разрешений на файл в папке или файле заключается в том, что если каким-то образом пользователь сможет установить файл (или изменить существующий файл) и использовать его для выполнения вредоносного кода, он получит возможность получить доступ к учетным данным, которые вы используете для других служб в вашей системе, например, для вашей базы данных. И тогда начнется чертовщина...
Видеть этозапись в блогена странице «Разрешения на доступ к файлам на веб-серверах» для получения дополнительной информации (или просто поищите в Google — доступно немало свидетельств того, какие опасности существуют при использовании свободных разрешений на доступ к файлам).
Часто сервер Apache «принадлежит» учетным записям пользователей dhapache или nobody. Эти учетные записи имеют ограниченный доступ к файлам на сервере, и на то есть веская причина. Устанавливая ваши личные файлы и папки, принадлежащие вашей учетной записи, как доступные для записи всем, вы буквально делаете их доступными для записи всем. Теперь пользователи dhapache и nobody, которые запускают ваш сервер, обслуживают страницы, выполняют интерпретаторы PHP и т. д., будут иметь полный доступ к файлам вашей учетной записи.
Это дает возможность кому-то получить доступ к вашим файлам, перехватив практически любой процесс на вашем сервере, это также касается и других пользователей на вашей машине. Поэтому вам следует тщательно подумать об изменении разрешений на вашей машине. Я никогда не сталкивался с чем-либо, что требовало бы больше, чем 767, поэтому, когда вы видите 777, спросите, зачем это нужно.