Вашему веб-серверу необходимо разрешение на чтение и запись в этих папках, разрешение на выполнение должно быть отменено (при условии UNIX-подобных систем). Если нет, пользователь может загрузить сценарий и запустить его, отправив для него HTTP-запрос.
Но ИМО вся концепция представляет собой потенциальную дыру в безопасности. Лучше хранить файлы в папке вне корня веб-сервера, так что прямой доступ невозможен. В вашем веб-приложении может быть страница загрузки PHP, которая сканирует каталог загрузки и отображает список ссылок для загрузки. Эти ссылки на скачивание ведут к другому сценарию, который считывает файлы из вашего хранилища и отправляет их пользователю.
Да, это больше работы. Но сценарий очень распространен, поэтому вы сможете легко найти исходный код с примерами реализации. И это намного меньше работы, чем взломанный сервер ...