What are some general security precautions that others take or best practice with handling the allowing of file uploads? How can we stop these scripts from being abused?
Hospede sua pasta de upload separada de qualquer um dos scripts / binários do aplicativo. Configure o Apache para que ele não execute nenhum código cgi / php / etc no diretório de upload. O ideal é hospedar os dados de upload em um diretório fora da webroot.
Como você está hospedando muitos usuários, use um servidor / módulo PHP para que o código de cada usuário opere sob seu próprio ID de usuário.
Além disso, você não pode realmente proteger uma pessoa capaz de publicar código em seu servidor. Se eles fizerem upload de código inseguro, eles verão as consequências. É simplesmente impossível ter 100% de proteção.