Aqui é uma lista de coisas que eu estava prestes a digitar. Há outras coisas que você pode fazer, como Suhosin , mas o primeiro link é um bom começo para isso.
Fui solicitado a criar um ambiente PHP em um servidor da web que administro que atualmente está executando apenas aplicativos Python. Os autores desses aplicativos não têm necessariamente um histórico de programação, então eu gostaria de limitar o que eles podem fazer de errado.
Estou usando o Ubuntu 9.04 e sei que devo ter register_globals
desativado, mas o que mais posso / devo restringir?
Como você não pode realmente confiar em seus desenvolvedores de aplicativos para escrever código seguro, você terá que limitar os vetores de ataque que o código php não seguro poderia fornecer. Usar a entrada do usuário sem o saneamento adequado como SQL ou como um argumento para o open () são exemplos clássicos de coisas que dão errado.
Minha breve lista:
Tenho certeza de que há muitas outras coisas que eu não conheço ou que não consigo mais lembrar.
Também há muitas coisas que você, como administrador, não pode se preparar. Por exemplo, é muito difícil controlar os riscos de scripts entre sites e garantir que a mecânica interna dos aplicativos não incentive casos de uso mal-intencionados, como o uso do aplicativo como uma caixa suspensa para coisas ruins, como rootkits.