Evitar o envio ou execução de scripts pelo link

Esse área é só para dicas de segurança de códigos fonte, pastas, etc...

Moderador: web

responder a dúvida

Evitar o envio ou execução de scripts pelo link

Mensagem por web Offline » Dom Out 30, 2011 11:08 pm


Quando uma informação é passada por link, para ser armazenada no banco de dados ou mostrada na tela, seu sistema pode ficar exposto, por exemplo:

info.php?usuario=joao

Geralmente quando isso é feito, o valor passado é mostrado na página por um echo do PHP, por exemplo:

echo $_GET['usuario'];

Um usuário mal intencionado pode fazer o seguinte no navegador:

info.php?usuario=<a href='http://www.sitetal.com'>acesse</a>

Se uma pessoa divulgar esse link, por email por exemplo, pode acabar mandando um monte de pessoas para o site da pessoa errada.

E com esses encurtadores de URL, pode ficar até mais fácil disfarçar esse tipo de URL mascarada.

Para proteger seu sistema, use o seguinte na saída do valor, para página ou para o bd. Esse script elimina não só a tag, mas também o texto usado nela.

Código: Selecionar todos
<?php
if(isset($_GET['valor'])) {
echo preg_replace("/<.*?>*<.*?>/", "", $_GET['valor']);
}
?>



detalhes...

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.

Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb1 [@] gmail [.] com

Avatar do usuário
web
ADMIN
ADMIN
Mensagens: 12425
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil

responder a dúvida

Voltar para Dicas de segurança

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante