Может ли ввод, записанный в файл, быть злонамеренно подделан?
Простой пример Uber для иллюстрации:
$message = $_POST['message'];
$fp = fopen("log.txt", "a");
fwrite($fp, $message);
fclose($fp);
Должен ли я дезинфицировать пользовательский ввод для$_POST['message']
переменная?
Я понимаю подготовленные заявления (для очистки базы данных) иhtmlentities
(если бы я выводилPOST
сообщение на экран через некоторое время) но в этом случае ввод просто находится в файле журнала, который будет прочитан небольшим PHP-скриптом (via fopen()
)
Зависит ли ответ от того, как он будет прочитан? Например, если я открою файл журнала с помощью fopen (), это должно бытьhtmlentities
, и если я планирую скачать файл журнала и прочитать его в Excel (для целей фильтрации), ничего не поделаешь?