Уважаемые разработчики. Представьте себе ситуацию. Есть сайт. Мы закрываем сайт на обслуживание(для того что переустановить Bitrix ENV на сервере например). Делаем бэкап, сносим сервер, ставим заново Bitrix ENV. И вуаля - пользователям сайта позволено загружать на сервер все что угодно с помощью средств восстановления, которые находятся в открытом доступе на месте старого сайта. Пожалуйста. Сделайте хотя бы index.php в /home/bitrix/www пустым. Админ способный поставить bitrix env , уж как нибудь запустит www.site.ru/restore.php или www.sire.ru/bitrixsetup.php в ручную. А еще лучше запарольте эти файлы случайно сгенерированным паролем в момент установки bitrix env.
Уже столько лет такая дырища открыта.
p.s. да, можно firewall'ом на время установки крыть все остальные IP , но это геммор дополнительный. Зачем тогда делать скрипт автоустановки? Чтобы было удобно , верно? Тем более, что сделать index.php пустым - это плевое дело, на которое нужно 3.5 секунды разработчиков. Сделайте пожалуйста. Это же очень логично. Я думаю любой админ меня поддержит в этом. Спасибо.
Никита Исаев, хорошо, как быть с обычным пользователем, а не админом? Создаст он сайт, там пустой index.php... Его реакция какая будет как думаете? Откуда ему знать про скрипты restore и bitrixsetup? Если я более "продвинут", что мне помешает при пустом index.php зайти в любой из скриптов по прямому урлу и опять же загрузить что угодно? А что вам мешает зайти в index.php и поставить там die(); в самом начале? Или убрать эту страницу с сервера?
Цитата
Никита Исаев написал: Мы закрываем сайт на обслуживание
Тут не понял каким образом это происходит и кто что закрывает и где? Судя по вашей схеме ничего не закрывается)
Алексей Шафранский написал: Никита Исаев , хорошо, как быть с обычным пользователем, а не админом? Создаст он сайт, там пустой index.php... Его реакция какая будет как думаете? Откуда ему знать про скрипты restore и bitrixsetup? Если я более "продвинут", что мне помешает при пустом index.php зайти в любой из скриптов по прямому урлу и опять же загрузить что угодно? А что вам мешает зайти в index.php и поставить там die(); в самом начале? Или убрать эту страницу с сервера?
Обычные пользователя не ставят под Линуксом веб окружение. Можно сразу после установки окружения выдавать пользователю сообщение, в котором будет написано, как запустить скрипты установки, если вы на эту тему переживаете. По поводу правки index.php и die(). Вы понимаете, что как минимум минута пройдет прежде чем админ после установки сможет это сделать?. За это время уже можно таких бед натворить при желании. Кто сейчас мешает злоумышленникам написать бота, который будет мониторить все сайты на битриксе(сделать базу сайтов на битриксе путем обхода сайтов рунета, не такая большая проблема), и при обнаружении скриптов установки - использовать эту дыру спустя доли секунды после установки bitrix env? По поводу пустого index.php - это план минимум, и да, это не самый лучший вариант. В идеале как я уже говорил, сделать простую php аутентификацию на скрипты , и выдавать пользователю логин и пароль случайный сразу после установки окружения. Это 5 строк кода. Есть еще другой вариант, еще более простой для вас. Сделайте пустой index.php. А скрипты установки назовите например setup-dfs3safs1.php ( где dfs3safs1 - случайно сгенерированный код, который опять же выдается пользователю после установки). Масса вариантов. Но то что у вас сейчас, это самый наверное худший из всех.
Цитата
Алексей Шафранский написал: Тут не понял каким образом это происходит и кто что закрывает и где? Судя по вашей схеме ничего не закрывается)
Я как пример привел. Мы до переустановки Окружения - вывели на своем сайте страницу с информацией о тех обслуживании. И естественно после переустановки на этом месте появятся скрипты установки.