Em todos os sistemas operacionais, é muito difícil fazer isso no momento. Os desenvolvedores do Chrome fizeram alguns progressos nessa área, mas ainda é difícil. Eles vieram com uma solução sobre 22k linhas de código (LOC) para sistemas Win * e 11k LOC para Linux.
Em notícias recentes, o FreeBSD 9.0 foi anunciado com o Capsicum , uma estrutura projetada para este propósito, mas pode funcionar apenas em sistemas * BSD.
No Linux, você pode evitar o SELinux ou o AppArmor usando o seccomp. Veja este artigo do LWN para mais detalhes e exemplos de uso. Mas é realmente difícil: é um recurso de tudo ou nada para chamadas do sistema, como ler ou escrever.
Atualmente há uma nova abordagem em andamento no LKML, usando o Berkeley Packet Filter, veja este post de Will Drewry.