Я розробив веб-додаток, який дозволяє користувачам завантажувати зображення та трансформувати їх, щоб згодом завантажити їх знову перетвореними. Я, очевидно, повинен був надати дозволу користувача apache в каталог, куди користувачі можуть завантажувати:
$ chown root:www-data uploadFolder
$ chmod 1775 uploadFolder
Це дає групі apache всі дозволи, крім видалення.
Додаток створює каталог для кожного сеансу користувача всередині uploadFolderкаталогу з 0700дозволами та зберігає зображення користувача всередині.
Це uploadFolderвсередині каталогу додатків.
Коли зображення завантажується, воно подається безпосередньо клієнту (як посилання).
Завдання crontab виконує сценарій кожні 20 хвилин, який перевіряє, які сеанси активні, і видаляє всі файли та папки всередині, uploadFolderякі не відповідають жодному активному сеансу.
Це працює добре з двох місяців тому, але я не впевнений, чи може це бути небезпечно для мого додатка, бази даних чи інших сайтів у тому ж VPS.
Хтось знає ризик бути вседозволеним у цій ситуації?
Чи є альтернатива цього уникнути?
Це моя конфігурація сайту apache:
<VirtualHost *:80>
ServerName www.itransformer.es
ServerAlias itransformer.es *.itransformer.es
DocumentRoot /siteFolder
<Directory /var/www/itransformer-2.0/web>
AllowOverride all
Options -Indexes
</Directory>
</VirtualHost>
Додано цей фрагмент коду до конфігурації сайту Apache: (це має уникати читання .htaccessфайлів)
<Directory /uploadFolder>
AllowOverride none
Options -Indexes
</Directory>