Уязвимость веб-сервера
Как-то раз работая над сайтом, я заметил, что файл загруженный по FTP имеет uid/gid example_com/web_users, а картинка, загруженная через php-скрипт - apache/apache.
Тогда я написал простой скрипт:
Код:
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
$fp = fopen("./test/0.txt", "w");
for ($j = 0; $j < 262144; $j++) {
fwrite($fp, md5(rand()));
}
fclose($fp);
for ($i = 1; $i < 150; $i++) {
echo "$i <br>\n";
copy("./test/0.txt", "./test/$i.txt");
}
?>
error_reporting(E_ALL);
ini_set('display_errors', '1');
$fp = fopen("./test/0.txt", "w");
for ($j = 0; $j < 262144; $j++) {
fwrite($fp, md5(rand()));
}
fclose($fp);
for ($i = 1; $i < 150; $i++) {
echo "$i <br>\n";
copy("./test/0.txt", "./test/$i.txt");
}
?>
И оказалось, что он смог создать 150 файлов суммарный размер которых ~1Gb, при том что квота example_com 500Mb.
Может быть кто-то знает как преодолеть эту проблему? Какие настройки сервера помогут реально ограничить размер одного сайта?
P. S. Я использую виртуальный сервер (VPS) от Rusonyx. Иногда приходится предоставлять FTP доступ к нему клиентам, которые могут (чисто теоретически) написать 10 строк кода на php, да и катринки закачивать через браузер любят.