Ir para conteúdo

POWERED BY:

Arquivado

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

l_nando

Segurança em sites

Recommended Posts

Pessoal, boa tarde.

 

Vi em um tópico aqui no site no catálogo de scripts e achei interessante Clique aqui sobre criptografia e sql injection.

 

Minha dúvida é se é seguro e se eu usar posso ficar tranquilo.

Outra coisa, para se evitar SQL Injection, tenho que colocar esta função ou outras, somente na parte de forms onde se digita usuário e senha ou tenho que colocar em outros forms também?

 

Desculpe minha ignorância no assunto, mas ahei que everia perguntar tbm.Pois posso pegar algum trabalho para fazer com esta necessidade e não quero correr risco.

 

Valeu, abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

SQLInjection pode ser praticada em qualquer tipo de acesso a banco de dados em que seus dados venham de uma entrada de usuário, então o tratamento deve ser feito em todas as entradas via formulário.

 

Sobre criptografia dê uma pesquisada por MD5.

Compartilhar este post


Link para o post
Compartilhar em outros sites

SQLInjection pode ser praticada em qualquer tipo de acesso a banco de dados em que seus dados venham de uma entrada de usuário, então o tratamento deve ser feito em todas as entradas via formulário.

 

Sobre criptografia dê uma pesquisada por MD5.

Fala ae Salgado, segue um link ai muito util nesta questao de SQLInjection

 

Espero ter ajudado, abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpa a demora para resposta, problemas com a internet, rsrs!

 

Mas só ficou uma dúvida, este escript que achei aqui é seguro e confiável?Posso usar tranquilamente?

 

Muito obrigado pelas dicas.

 

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Mas só ficou uma dúvida, este escript que achei aqui é seguro e confiável?Posso usar tranquilamente?

Li o código e não entendi porque ele fala que elimina o SQL Injection, mas em todo caso, a função citada é apenas para senha, então não da para ficar tranquilo, pois você terá que comparar o usuário (login).

 

Sobre criptografia de senha, prefiro utilizar MD5, conforme citou o Salgado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok.

Vou utilizar o MD5 como nosso amigo Salgado citou.

Alguma dica de como usar em todas as entradas feitas via formulário?

 

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, boa noite!

 

Fiz uns testes com o MD5 achei bem interessante, mas minha dúvida é a seguinte:

 

O usuário faz o cadastro da senha e usuário, porém quando ele entrar no site e aparecer ( Bem vindo Usuário Fulano de Tal, ao invés de aparecer o nome dele, por exmplo "Fulano de Tal", vai aparecer o rash de 32 caracteres equivalente ao seu nome.Tem como mostrar o nome ao invés do rash?

 

Se tiver, mostrem um exemplo por favor!

 

Grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se você deseja mostrar o login para o usuário, o hash deve ser feito só na senha.

O hash é um caminho único, não tem como obter o valor que gerou ele.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok.

 

Vou fazer desta forma então.

 

Alguma dica de como fazer o tratamento para evitar SQL Injection em todas as entradas de formulários no site?

 

Posso usar um script parecido com este aqui?

 

Grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok.

 

Vou fazer desta forma então.

 

Alguma dica de como fazer o tratamento para evitar SQL Injection em todas as entradas de formulários no site?

 

Posso usar um script parecido com este aqui?

 

Grato.

 

Pode sim, mas se quiser outra ideia você pode fazer replaces...

 

Exemplo:

 

<%
  	variavel=replace(Trim(Request("txtlogin"),"(aqui você põe o caracter que será substituido, entre aspas mesmo)","") 'aqui ele substitui por um espaço vazio
  	variavel=replace((variavel),"!","") 'exemplo
%>

 

Isso você pode criar em um arquivo asp e dar um include toda vez que este formulário precisar utiliza-lo:

 

<!--#include file="replaces.asp" -->

 

Espero ter ajudado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Basicamente você tem que impossibilitar o uso da aspa simples, pois na maioria das vezes ela é o problema, já que possibilita encerrar uma instrução e iniciar outra.

 

Eu particularmente prefiro substituir todos os caracteres "perigosos" por código HTML e faço essa validação em todos as variáveis vindas através do Request, independente de qual seja.

 

Não sei se você leu a respeito de SQL Injection, mas seria interessante uma leitura desse texto.

Compartilhar este post


Link para o post
Compartilhar em outros sites

sempre uso esta função para SQLInject

 

Function SafeSQL(sInput)
 TempString = sInput
 'sBadChars=array("select", "drop", ";", "--", "insert", "delete", "xp_", "#", "%", "&", "'", "(", ")", "/", "\", ":", ";", "<", ">", "=", "[", "]", "?", "`", "|") 
 sBadChars=array("select", "drop", ";", "--", "insert", "delete", "xp_", "#", "%", "&", "'", "(", ")", ":", ";", "<", ">", "=", "[", "]", "?", "`", "|") 
 For iCounter = 0 to uBound(sBadChars)
   TempString = replace(TempString,sBadChars(iCounter),"")
 Next
 SafeSQL = TempString
End function

 

você também pode para garantir maior segurança na transmissão de dados, encriptar e desencriptar as informações,Proteção de Hacking via Form Elements ,usar CAPTCHA, Informações sobre um IP / Domínio, Gerar senhas utilizando MD5, não esquecendo de um bom Sistema de login

Compartilhar este post


Link para o post
Compartilhar em outros sites

Basicamente, para remediar a SQLInjection é substituir as aspas simples por duas aspas simples e validar todos os dados do form que serão enviados ao banco de dados, campos numéricos devem receber apenas números válidos, data devem receber apenas datas válidas e por aí segue.

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.