Проблемы безопасности с помощью метода Readfile PHP

Привет. Есть ли проблемы с безопасностью, о которых я должен беспокоиться при использовании метода readfile в PHP? Я хотел бы использовать метод readfile, который принимает URL-адрес файла, хранящегося на разных сторонних серверах. Затем я обслуживаю файл для пользователя. Интуитивно, казалось бы, существует риск того, что URL-адрес может указывать на любой файл. С другой стороны, я использую readfile метод readfile (после обработки некоторых файлов, не зависящих от файла) и не уверен, что это допустило бы что-нибудь злоумышленное на моем сервере. Кроме того, согласно руководству, кажется, что, если я хочу использовать URL-адрес с readfile , мне нужно включить fopen wrappers . Благодарю.

readfile не выполняет код на вашем сервере, поэтому там нет проблемы.

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

согласно руководству, кажется, что если я хочу использовать URL-адрес с readfile, мне нужно включить обертки fopen

Да, вы должны убедиться, что allow_url_fopen включен . если это не так, вам придется изучить использование cURL .

Самый большой риск для безопасности – это инъекция искаженного запроса на обслуживание файлов из вашего файла. То есть, проходя относительные пути.

Allow_url_fopen также представляет угрозу безопасности, если вы не будете осторожны. Он может разрешать запросы, переданные через readfile (), include () и т. Д., Интерпретировать PHP-код, если это то, что запрос вернулся.

Я думаю, вам просто нужно сосредоточиться на двух вещах:

1) Не позволяйте вашим пользователям указывать, какой файл читается readfile. (Потенциал для обхода обхода каталога и т. Д.)

2) Не разрешайте пользователям изменять файл, который читается readfile. (Потенциал для всех видов вреда!)

Сверху моей головы, они нападают на меня, как на два наиболее вероятных атак, с которыми вы столкнетесь в отношении файла readfile.