А «запрещать загрузку шеллов» это не более странное? Это вообще как? Как в том мультике кричать «воришка не воруй» и он перестанет воровать?
Вот список функций, вот определенный контейнер с известным нам приложением. Прописываем правила, что приложение не может в runtime запускать эти и эти функции. А другое приложение эти и те.
Более того, у большинства РКН головного мозга — вам всё запретить хочется. Статья называется «небезопасные функции», а не «функции php, которые надо запретить немедленно». И в самой статье русским по белому написано «Это не означает, что все опасные функции срочно надо запретить».
Это статья:
1. Предупреждение. На что стоит обращать внимание при поиске дыр или что стоит использовать более аккуратно.
2. Помощник при поиске shell
3. Помощник при настройке более безопасного контейнера для приложения (что можно выключить в php-fpm если не нужно)
Вам дали «справочник с лекарствами», не пейте их все разом.
1. Весь список опасных функций не надо запрещать.
2. Да.
3. Кавычки это синтаксический сахар для system или exec. Отключите их и кавычки не будут работать
4. Такой shell для примера попался. Там по ссылке с примерами shell очень много странных решений.
5. Ага. Можно еще многими методами записать файл. Но главная задача — сломать шаблоны действий.
Как там и написано — все блокировать не надо. Достаточно заблокировать пару секций, что бы сломать работу типовых shell и привычные шаблоны действий. Остальное больше для ознакомления, поиска вставок кода и т.д. А если что-то надо делать ручками, то большинству сайт становится не интересен.
Подход «бешеного принтера» не работает. Тут подход такой — вот перечень опасных предметов, для работы с ними надо ознакомить персонал с ТБ. В ТБ описаны опасности при работе с инструментами, а часть вещей запрещено явно, например жонглировать бензопилами и кидать коллеге топор.
Вот есть контейнер с WP (полный дырок и «дверей»). Ну запрети ему в runtime функции исполнения команд и функции управления процессами.
Вот список функций, вот определенный контейнер с известным нам приложением. Прописываем правила, что приложение не может в runtime запускать эти и эти функции. А другое приложение эти и те.
Более того, у большинства РКН головного мозга — вам всё запретить хочется. Статья называется «небезопасные функции», а не «функции php, которые надо запретить немедленно». И в самой статье русским по белому написано «Это не означает, что все опасные функции срочно надо запретить».
Это статья:
1. Предупреждение. На что стоит обращать внимание при поиске дыр или что стоит использовать более аккуратно.
2. Помощник при поиске shell
3. Помощник при настройке более безопасного контейнера для приложения (что можно выключить в php-fpm если не нужно)
Вам дали «справочник с лекарствами», не пейте их все разом.
2. Да.
3. Кавычки это синтаксический сахар для system или exec. Отключите их и кавычки не будут работать
4. Такой shell для примера попался. Там по ссылке с примерами shell очень много странных решений.
5. Ага. Можно еще многими методами записать файл. Но главная задача — сломать шаблоны действий.
Как там и написано — все блокировать не надо. Достаточно заблокировать пару секций, что бы сломать работу типовых shell и привычные шаблоны действий. Остальное больше для ознакомления, поиска вставок кода и т.д. А если что-то надо делать ручками, то большинству сайт становится не интересен.
Вот есть контейнер с WP (полный дырок и «дверей»). Ну запрети ему в runtime функции исполнения команд и функции управления процессами.