Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

guhfloripa

XSS - Cross Site Scripting - Formas de proteção?

Recommended Posts

Boa tarde,

 

Alguem poderia compartilhar algum método bom de proteção para proteger contra XSS - Cross Site Scripting ?

 

Vejo que isso é uma vulnerabilidade muito poderosa para atacar sistemas, e muitos não dão a atenção necessária para ela.

 

Não encontrei formas de segurança adequadas, para se proteger desse tipo de ataque ao nosso sistema.

 

Uso php, e inputs e sei que devo está vulnerável a alguns ataques deste tipo.

 

Alguem tem alguma opnião?

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

e validar td o q entrar como GET e POST, por exemplo, o site do santos foi atacado recentemente por isso, claro q la era feita em asp,

 

ex

 

$nome = (string) $_POST['nome'];

 

assim você esta garantindo que todo campo de formulario emviado por post, com o nome de nome, eh uma string...

 

uma outra forma bem eficaz, eh com OO e MVC, onde no MVC cada pagina requisitada eh um metodo de um controlador...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode utilizar a função strip_tags.

 

Você também pode usar htmlspecialchars quando for guardar no banco de dados e htmlspecialchars_decode quando for mostrar para o usuário novamente.

Tem também o htmlentities e seu oposto html_entity_decode


$result = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES);
var_dump($result); #vai assim para o banco -> '<a href='test'>Test</a>'

$result = htmlspecialchars_decode($result, ENT_QUOTES);
var_dump($result); # volta assim para o usuário -> "<a href='test'>Test</a>"

$result = htmlentities("<a href='test'>Test</a>", ENT_QUOTES);
var_dump($result);#vai assim -> '<a href='test'>Test</a>'

$result = html_entity_decode($result, ENT_QUOTES);
var_dump($result); #volta assim -> "<a href='test'>Test</a>"

Essas funções são a primeira coisa que você usa no seu código. Por exemplo,

$login = htmlentities($_POST['login'], ENT_QUOTES);~

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.