Segurança insegura !
Alguns de vocês já sabem que o próximo PHPSPCast já foi gravado e está sendo editado, o tema dele é segurança ! Segurança é algo com o qual sempre devemos estar preocupados, mas como em diversas áreas de desenvolvimento, não basta “achar”; é necessário estudar e entender todos os problemas de segurança de determinadas implementações.
É comum cairmos no mesmo problema em que nosso colega caiu. Ele queria proteger o phpinfo() dele das demais pessoas, ele poderia muito bem remover essa funcionalidade depois, mas ele corria o risco de esquecer e isto ficar aberto pra sempre. Pensando nisso e na segurança do ambiente dele, ele acabou com a seguinte solução:
1
A falha se encontra no fato de que não se deve confiar na variável $_SERVER. É comum as pessoas acreditarem que quem fornece esses dados é o servidor http e que eles são intocáveis. Mas a super global $_SERVER é tão manipulável quanto qualquer outra variável, portanto o que foi criado acima foi uma falsa idéia de segurança.
O post original pode ser encontrado aqui.


Gostaria de lhe agradecer a comentar sobre o meu PHP e sobre o meu artigo !
Como eu disse no meu artigo original, não se trata de uma medida não-seguros. Está correto dizer que existe pelo menos uma falha (em utilizar $ _SERVER). No entanto, (Eu devia ter dito isso no artigo) Eu sou o único usuário no desenvolvimento máquina. Isto não faz a fiabilidade de $ _SERVER completo, mas tem que melhorar um pouco.
Está igualmente correcto que esta é uma solução imperfeita: o melhor é sempre para remover phpinfo () a partir de máquinas de produção.
(Eu escrevi este comentário traduzido em Inglês e que os seus leitores. Peço desculpas por qualquer idioma erros. :)
PS Eu gosto da foto do carro! Muito inteligente para este tópico.
É, o grande problema foi que não ficou explícito o problema possível para a solução, mas como vc mesmo disse, ela adiciona uma camada de segurança sobre o problema, mas não o resolve ! =]
E o comentário fico bem em português, dá pra entender perfeitamente !
Legal o próximo PodCast ter foco em segurança, infelizmente é um assunto um pouco desprezado e muitas pessoas tem falsa sensação de segurança…
Bom, sobre o post, para não acontecer de esquecer de tirar o phpinfo() do server de produção, bloqueia ele no php.ini através da diretiva “disable_functions”.
t+
Nosso amigo Michael também pisou na bola na distro… trocar Slackware por Ubuntu???????
[...] 6 April 2009 — I have modified the title of the article in response to our colleague’s response to this post over at PHPSP.org.br. Possibly related posts: (automatically generated)You can know about php [...]
é possivel manipular a variavel $_SERVER mesmo com a register_globals desabilitada no php.ini ?
Zé,
O cara não sabe!