Кто-то знает, что у него есть собственный скрипт PHP-скрипта для файловой системы (fopen
, file_get_contents
и т. Д.)?Как ограничить доступ к файловой системе в PHP?
Такие звонки должны быть заблокированы за исключением для нескольких выбранных имен файлов (файл журнала, доступ к /tmp
и тому подобное).
Это не является ценной бумагой вещь, а скорее средством принуждения к команде разработчиков не для доступа к файловой системе непосредственно (и обнаружить места в существующем коде, где это уже произошло). Мы хотим увидеть исключение в этом случае (которое попадается и сообщается), так как содержимое таких файлов должно быть доступно другими способами.
Я думал о реализации моей собственной streamWrapper для протокола file://
, но, видимо, не существует никакого способа расширить встроенный filewrapper класса.
Должно ли это быть временем выполнения? Вы можете регулярно проверять исходный код или даже каждый фиксатор, если он содержит эти ограниченные функции (кроме одного класса-оболочки). – Marek
Я бы сделал это на уровне файловой системы. – Gumbo
@Marek: база кода слишком велика, чтобы проверить ее вручную, и статический анализ кода, вероятно, будет излишним для реализации в этом случае. Мне нужно ограничить только некоторые сценарии большого проекта.Другие скрипты, работающие как один и тот же пользователь, все равно должны напрямую обращаться к файлам. –