Pergunta

Eu tenho atualmente um sistema de validação do lado do servidor bastante robusto no lugar, mas eu estou procurando algum feedback para se certificar de que eu cobertos todos os ângulos. Aqui está um esboço breve do que estou fazendo no momento:

  • Certifique-se a entrada não estiver vazia, ou é muito longo

  • Fuga de consulta cordas para injeção prevent SQL

  • Usando expressões regulares para rejeitar caracteres inválidos (isso depende do que está sendo submetido)

  • A codificação de certas tags HTML, como

Outras dicas

Você deve codificar cada tag html, não únicos 'inválida'. Este é um debate quente, mas basicamente se resume a sempre haverá alguma combinação HTML inválido que você vai esquecer para lidar corretamente (tags aninhadas, marcas sem correspondência alguns navegadores interpretar 'corretamente' e assim por diante). Assim, a opção mais segura na minha opinião é a de armazenar tudo como htmlentities e, em seguida, na saída, imprimir uma árvore HTML-safe-subconjunto validados (como entidades) a partir do conteúdo.

Executar todas as validação do lado do servidor em uma biblioteca dedicada à tarefa de modo que as melhorias em uma área afetam toda a sua aplicação.

Além disso incluem o trabalho contra ataques conhecidos, tais como passagem de diretório e tentativas de acesso ao shell.

Esta pergunta / resposta tem algumas boas respostas que você está procurando
( PHP orientado, mas novamente você não especificar a língua / plataforma e alguns dos que se aplica além do mundo do php ):

Qual é o melhor método para saneantes entrada do usuário com PHP?

Você pode verificar o href="http://us3.php.net/manual/en/book.filter.php" rel="nofollow noreferrer"> Extensão Filtro

Além disso, considere declarações destacados preparado. Escapando de dados em suas consultas SQL é uma coisa do passado.

scroll top