Segurança Na Internet
#46
Posted 08/01/2005, 11:57
Duvida do aimola que achei muito interessante e trouxe minhas idéias.
http://forum.wmonlin...howtopic=102543
E esse tópico onde começou a se falar da migração para o MySqL e agora está chegando na parte de segurança para o mesmo.
http://forum.wmonlin...pic=54511&st=45
#47
Posted 11/02/2005, 13:30
acho q vo para de programa
#48
Posted 14/02/2005, 18:28
Minha dica:
Senha, mínimo de 6 caracteres
Se o cara digitar menos retorna ele com a msg DADOS INVALIDOS, nao informando o que ele errou!
Ao voltar a mensagem, nao dizer se ele errou LOGIN ou SENHA
A cada tentativa dele errada cria uma session e soma + 1 e na terceira tentativa com session = 3 redireciona ele e grava ele no banco, IP e msg = bloqueado
E ao entrar no login verifica se o IP dele ta no banco se tiver verifica se a msg é = a bloqueada, se sim, mostra uma msensagem bloqueado e nao mostra o login!
Pelo menos naquele PC oc ara nao vai poder mais tentar logar! O IP dele ficara bloqueado!
É isso ae!
#49
Posted 04/03/2005, 13:48
Muito boa a iniciativa Luis Otávio, assim como é muito importante colaboração de cada um de vocês através de suas experiências.
Principalmente para novos programadores como eu, que têm a oportunidade de aprender bastante.
Com base no trabalho de vocês, comecei a preparar uma página de login no meu site, mas infelizmente apareceram erros e muitas dúvidas, que certamente para vocês antigos usuários, vocês tiram de letra, mas para os novatos é difícil entender.
Coisas do tipo, não consegui em nenhuma hipótese copiar a solução oferecida em javascript e fazê-la funcionar no meu site, pode ser que eu esteja fazendo alguma coisa errada, mas não funcionou.
Resolvi com outro código. Vamos em frente.
Agora na inclusão de detalhes como:
<% login = request.Form("login") login = replace(login,[color="red"]"'"[/color],"''") [size=1]- fica dúvida se aqui é assim mesmo, ou existe erro de digitação[/size] login = replace(login,"#","''") login = replace(login,"$","''") login = replace(login,"%","''") login = replace(login,[color="red"]"¨"[/color],"''") [size=1]- e aqui, este caracter assim mesmo?[/size]'' '' '' (fazer no login e senha)
Outra coisa, colocar isto acima, é só colocar na página ASP após declarar as variáveis e pronto, ir para a conexão, o select..., ou seja, a sequência de comandos será percorrida e saltara para a conexão, ou tem que fazer mais alguma coisa?
Para a parte que testa se o script não está sendo rodada em outra máquina, onde ela é colocada? Pode ser em seguida aos comandos acima?
Peço desculpas pelas dúvidas, mas se existirem erros de digitação nos códigos, ou qualquer outro que sejam, para vocês experientes é mais tranquilo, mas para os "Manés" como eu, a gente fica 2, 3, 4 horas, entra em um forum, vai para outro, e muitas vezes não consegue resolver.
É isso aí!
psillus
Edição feita por: Renan L. Queiroz, 05/01/2010, 15:10.
Inclusão da tag [ code ] para postagem de scripts
#50
Posted 24/05/2005, 05:57
Gostaria de parabelizar a todos pela iniciativa e só complementar o comentário do nosso amigo Tx.NET que disse o seguinte:
Se o cara tiver mesmo afim de te zoar, e ele jah tiver o mapa da mina, ele pode utilizar um dakeles servicinhos de anonymous q tem (pelo menos tinha) pela net e "mascarar" seu ip... rs... aí ferrô... rs... mas acho difícil existir tanta paciencia em um só ser....
É pode se dizer que tinha mesmo, ainda deve existir alguns mas porém já existem servidores que não permitem o acesso desses sistema, portanto se o seu servidor não permitir esse sistema todos poderam ficar tranqüilos sobre esse assunto !!!
É uma pena que o tópico está um pouco parado né !!!
Vamos mexer ai pessoal vamos tentar minimizar ainda mais essas vulnerabilidades !!!
Eu já tenho alguns modelinhos de segurança prontas, mas ainda estou testando, se der certo eu posto para vcs verem !!!
Bem por enquanto é só pessoal t+ !!!
# NOME: Rafael T. Coelho
# SITE: Lazer e Diversão
# CONHECIMENTOS: HTML, Java Script, CSS e ASP
#######################################
#51
Posted 24/05/2005, 09:21
legal. gostei dessa dica tb.Tá, ja comecei fazer um novo sistema de login de acordo com as dicas acima, vai ficar ninja o sistema!
Minha dica:
Senha, mínimo de 6 caracteres
Se o cara digitar menos retorna ele com a msg DADOS INVALIDOS, nao informando o que ele errou!
Ao voltar a mensagem, nao dizer se ele errou LOGIN ou SENHA
A cada tentativa dele errada cria uma session e soma + 1 e na terceira tentativa com session = 3 redireciona ele e grava ele no banco, IP e msg = bloqueado
E ao entrar no login verifica se o IP dele ta no banco se tiver verifica se a msg é = a bloqueada, se sim, mostra uma msensagem bloqueado e nao mostra o login!
Pelo menos naquele PC oc ara nao vai poder mais tentar logar! O IP dele ficara bloqueado!
É isso ae!
com certeza tende a somar da dificuldade p/ se burlar um sistema.
q tb no lugar das sessions, pode ser feito com cookies, q talvez nao seja muito aconselhavel, mas uma "opção extar" tb.
So peço que quando tiverem dúvidas relacionadas a scripts, por favor, abram um tópico especialemtne p/ a dúvida. Assim deixaremos este tópico p/ troca de informações e ideias...ok pessoal?
sem +, o tópio ta muito bom sim, não é à toa q ta pendurado.rs
t+
---------------------------------------------------------------------------
> BRdesign.NET - Soluções em Websites e Sistemas E-Commerce.
---------------------------------------------------------------------------
> BR-ecommerce - Sua loja virtual na internet! - Apenas R$99,90 mensais (hospedagem inclusa)!
#52
Posted 24/05/2005, 18:27
O único problema dos cookies é que se o navegador do cara tiver bloqueando os cookies o sistema não funcionará direito !!!legal. gostei dessa dica tb.
com certeza tende a somar da dificuldade p/ se burlar um sistema.
q tb no lugar das sessions, pode ser feito com cookies, q talvez nao seja muito aconselhavel, mas uma "opção extar" tb.
So peço que quando tiverem dúvidas relacionadas a scripts, por favor, abram um tópico especialemtne p/ a dúvida. Assim deixaremos este tópico p/ troca de informações e ideias...ok pessoal?
sem +, o tópio ta muito bom sim, não é à toa q ta pendurado.rs
t+
Então será trabalho perdido !!!
Ou se por exemplo que tiver tempo e disposição para fazer seria o seguinte usar os dois mas da seguinte forma quando o cara entrar pela 1 vez no site faz-se uma verificação para ver se aceita cookie se aceitar vc usa os cookies caso contrário usa session.
Bem é só uma dica !!!
Mas prefiro Session !!!
T+ pessoal !!!
# NOME: Rafael T. Coelho
# SITE: Lazer e Diversão
# CONHECIMENTOS: HTML, Java Script, CSS e ASP
#######################################
#53
Posted 25/05/2005, 11:03
sim. justamente por isso q citei esse comentario:O único problema dos cookies é que se o navegador do cara tiver bloqueando os cookies o sistema não funcionará direito !!!legal. gostei dessa dica tb.
com certeza tende a somar da dificuldade p/ se burlar um sistema.
q tb no lugar das sessions, pode ser feito com cookies, q talvez nao seja muito aconselhavel, mas uma "opção extar" tb.
So peço que quando tiverem dúvidas relacionadas a scripts, por favor, abram um tópico especialemtne p/ a dúvida. Assim deixaremos este tópico p/ troca de informações e ideias...ok pessoal?
sem +, o tópio ta muito bom sim, não é à toa q ta pendurado.rs
t+
Então será trabalho perdido !!!
Ou se por exemplo que tiver tempo e disposição para fazer seria o seguinte usar os dois mas da seguinte forma quando o cara entrar pela 1 vez no site faz-se uma verificação para ver se aceita cookie se aceitar vc usa os cookies caso contrário usa session.
Bem é só uma dica !!!
Mas prefiro Session !!!
T+ pessoal !!!
q talvez nao seja muito aconselhavel
e sobre o esquema de cookies + session, foi justamente o q fiz no sistema deste site aqui: www.mundoplaystation.uni.cc
se o cara marca a opção de cookie atvado, usa o cookie so pra lembrar q o cara q fica auto-logado e ja passa a usar session a aprtir q confirma isso..
caso contrario, ja usa session direto msmo.
qt a maneiras, estudei diversas por um bom tempo pra chegar na melhor, pesando td..segurança, usabilidade, praticidade, opções..etc..nao sei se ficou bem segura, mas gostei do resultado final.
---------------------------------------------------------------------------
> BRdesign.NET - Soluções em Websites e Sistemas E-Commerce.
---------------------------------------------------------------------------
> BR-ecommerce - Sua loja virtual na internet! - Apenas R$99,90 mensais (hospedagem inclusa)!
#54
Posted 27/09/2005, 12:52
então para criptografar utilize a Função Decode:
Exemplo:
INSERT INTO usuarios (campologin, camposenha) VALUES ('alexandre', encode('suasenha[i/]', 'chave'))
Onde:
suasenha: é valor escolhido pelo usuário
chave: valor que o desenvolvedor escolher como segredo podendo ser letras e números
Para verificar no login seria:
SELECT campologin, decode(camposenha, 'chave') as senha FROM usuarios where campologin='valordigitado' AND camposenha=encode('[i]suadigitada[i/]', '[i]chave')
Note que neste comando foi utilizado o decode(camposenha, 'chave') as senha. Ele serve para decriptografar a senha. Mas para retornar o valor correto, o valor da chave tem que ser exatamente IGUAL ao que foi cadastrado. Note também que para pesquisar o valor da senha foi utilizado o ENCODE do valor de entrada onde valor da chave também tem que IGUAL ao cadastrado.
Uma Sugestão é utilizar uma chave para cada nível de usuário.
P.S.: não testei em ASP ainda, mas creio que funciona, uma vez que a função é do MySQL. No PHP é certeza que funciona.
#55 Firemaster
Posted 01/01/2006, 20:53
Quanto ao IP, ele pode ser alterado.cara, muito boa essa sua de renomear o pc... acho meio difícil alguem resolver descobrir os nomes de minhas sessões (já que naum estão em arquivos.inc... rs...)... mas d boa...
esse do Request.ServerVariables("HTTP_REFERER") eu uso em todos meus forms, dando o endereço da página q posta... tipo q dá uma ajudinha com os filtros e talz...
concordo com a inclusão de IP´s e datas no banco... é algo que deveria se tornar obrigatório!!!!!! rs... ponha o IP no seu banco!!!!
porém, se o cara tiver mesmo afim de te zoar, e ele jah tiver o mapa da mina, ele pode utilizar um dakeles servicinhos de anonymous q tem (pelo menos tinha) pela net e "mascarar" seu ip... rs... aí ferrô... rs... mas acho difícil existir tanta paciencia em um só ser....
cara, temos q difundir estas infos.. acho realmente importante tudo q foi dito aki, e realmente acho q falta qualificação e profissionalismo na NET.. tipo q tem gente q vai ver o tópico pendurado.. tah lah... SEGURANÇA NA INTERNET... e o carinha nem passa perto...
SQL Injection
Session
BD seguros
Senhas
URLs seguras
Includes seguros
por favor, se informem e divulguem!!!!
flws...
Meu modem ADSL, sempre quando eu desligo e ligo ele, o IP muda.
E se o cara estiver em uma LanHouse? Irá gravar o IP de lá, e isso nada impede de o cara fazer sacanagem.
Não sei se existe IP fixo, mas o meu modem ADSL sempre muda o IP quando reiniciado.
O modem de vocês faz isso?
E outra:
Você pode criptografar os dados que colocar na SESSION, e melhor, utilizar a criptografia HASH, que não pode ser descriptografada.
Gostaria de saber uma coisa: Qual a diferença entre COOKIE e SESSION?
T+
#56
Posted 01/01/2006, 22:06
Bom ... guardar IP é uma técnica razoavelmente eficiente.Quanto ao IP, ele pode ser alterado.cara, muito boa essa sua de renomear o pc... acho meio difícil alguem resolver descobrir os nomes de minhas sessões (já que naum estão em arquivos.inc... rs...)... mas d boa...
esse do Request.ServerVariables("HTTP_REFERER") eu uso em todos meus forms, dando o endereço da página q posta... tipo q dá uma ajudinha com os filtros e talz...
concordo com a inclusão de IP´s e datas no banco... é algo que deveria se tornar obrigatório!!!!!! rs... ponha o IP no seu banco!!!!
porém, se o cara tiver mesmo afim de te zoar, e ele jah tiver o mapa da mina, ele pode utilizar um dakeles servicinhos de anonymous q tem (pelo menos tinha) pela net e "mascarar" seu ip... rs... aí ferrô... rs... mas acho difícil existir tanta paciencia em um só ser....
cara, temos q difundir estas infos.. acho realmente importante tudo q foi dito aki, e realmente acho q falta qualificação e profissionalismo na NET.. tipo q tem gente q vai ver o tópico pendurado.. tah lah... SEGURANÇA NA INTERNET... e o carinha nem passa perto...
SQL Injection
Session
BD seguros
Senhas
URLs seguras
Includes seguros
por favor, se informem e divulguem!!!!
flws...
Meu modem ADSL, sempre quando eu desligo e ligo ele, o IP muda.
E se o cara estiver em uma LanHouse? Irá gravar o IP de lá, e isso nada impede de o cara fazer sacanagem.
Não sei se existe IP fixo, mas o meu modem ADSL sempre muda o IP quando reiniciado.
O modem de vocês faz isso?
E outra:
Você pode criptografar os dados que colocar na SESSION, e melhor, utilizar a criptografia HASH, que não pode ser descriptografada.
Gostaria de saber uma coisa: Qual a diferença entre COOKIE e SESSION?
T+
Talvez nao para bloquear, mas para medidas mais pesadas, é facil contactar o provedor dono do IP e descobrir de quem veio a requisição no momento... ou seja, vc tem como rastrear o cara.
Claro que isso fica mto inviavel se vc for pensar em lan house, e acesso anonimo via proxy, porem vc tem que pensar da seguinte forma: Nunca seu site vai estar 100% seguro, todas essas medidas que citaram nesse topico e muitas outras adotadas, servem apenas para minimizar e tornar o seu site menos sujeito a ataques.
O ideal é sempre adotar uma postura que vise atingir o caso mais comum. Muitos IPS dinamicos existem, então o simples fato de vc "bloquear por IP" pode nao ser a melhor alternativa.
----
Vamos a segunda parte agora.
Criptografia é sempre bem vista quando o assunto é segurança.
Mas tem que ter o uso correto. Veja bem, nem sempre vc pode utilizar um algoritmo nao-reversivel para criptografar, pois precisa recuperar informações da session, como por exemplo o nome do usuario. Tem que se analisar o caso para verificar qual tipo de criptografia deve-se usar.
No caso de uma criptografia assimetrica/simetrica, o segredo está na criação e na onde estará armazenada as chaves.
Olha só, vc tem que adotar uma ideia de segurança por obscuridade. De fato nao se pode negar que existe a chave, mas ninguem deve saber onde ela está. Assim vc dificulta a ação do invasor.
Cookies e sessions são formas de armazenar informações e manter estados entre paginas / aplicações.
A diferenca base é que sessions são armazenadas no servidor (em memoria, processo ou bd caso .net) e cookies são armazenados no cliente.
Como sempre vc tem que pesar a sua informação e ver o que serve melhor pra ela. Imagina que o usuario X desabilitou cookies pelo navegador .. devemos entao usar session pra tudo???
De fato, não. A ideia é evitar o uso de sessions, pois elas sobrecarregam o servidor. Imagina que vc tenha cerca de 20 sessions carregadas durante uma sessão de um usuario. Se 100 usuarios entrarem ao mesmo tempo no site, vc agora tem 20.000 variaveis de sessão. É mto facil haver sobrecarga se isso não for devidamente tratado.
Abraços
#57 Firemaster
Posted 02/01/2006, 12:52
Opa!!! Tem um problema:Pelo seu IP, é possivel chegar na sua casa. Basta vc ir na policia e pedir, dizendo que vc foi roubado. Num vai adiantar se o cara invadiu de uma lan house por exemplo, mas é mais uma forma de controle, mas é possivel chegar na sua casa sim, pelo seu IP.
Tratamentos em todas as paginas que tenha SQL... o login foi apenas um exemplo... vc tem que prever erros em querystring's... e mais uma muntueira de coisa...
Podemos tratar na seguranças nas URL's aqui tb.. que é uma forma de provocar muitos erros no seu site... e que pouquissimas pessoas cuidam disso,
exemplo... o site da casa dos artistas num fizeram tratamento nas URL"s digita alguma coisa invalida la... vai dar erro...
O cara pode mudar o IP assim que terminar de fazer a sacanagem, ou pior ainda, utilizar um programa para mascarar o IP. Se o cara utilizar esse programa, esse procedimento será inútil.
Por exemplo: O meu módem ADSL, sempre quando eu o reinicio, ele muda automaticamente o IP, para outro totalmente diferente do anterior.
Quando meu módem travar, sou obrigado a reiniciar ele, o que faz mudar o IP.
#58
Posted 23/04/2006, 16:08
Opa!!! Tem um problema:Pelo seu IP, é possivel chegar na sua casa. Basta vc ir na policia e pedir, dizendo que vc foi roubado. Num vai adiantar se o cara invadiu de uma lan house por exemplo, mas é mais uma forma de controle, mas é possivel chegar na sua casa sim, pelo seu IP.
Tratamentos em todas as paginas que tenha SQL... o login foi apenas um exemplo... vc tem que prever erros em querystring's... e mais uma muntueira de coisa...
Podemos tratar na seguranças nas URL's aqui tb.. que é uma forma de provocar muitos erros no seu site... e que pouquissimas pessoas cuidam disso,
exemplo... o site da casa dos artistas num fizeram tratamento nas URL"s digita alguma coisa invalida la... vai dar erro...
O cara pode mudar o IP assim que terminar de fazer a sacanagem, ou pior ainda, utilizar um programa para mascarar o IP. Se o cara utilizar esse programa, esse procedimento será inútil.
Por exemplo: O meu módem ADSL, sempre quando eu o reinicio, ele muda automaticamente o IP, para outro totalmente diferente do anterior.
Quando meu módem travar, sou obrigado a reiniciar ele, o que faz mudar o IP.
sim...isso é normal acontecer c/ IP dinâmico.
mas têm um porém:
- pelo IP pego, vc sabe por qual provedor/operadora o cara conectou...sendo assim, msmo ele tendo mudado de IP , o provedor/ operadora saberá tudo sobre aquele IP e poderá encaminhar as provas aos responsáveis pela punição...se for o caso.. de um jeito ou de outro, o cara é pego.
---------------------------------------------------------------------------
> BRdesign.NET - Soluções em Websites e Sistemas E-Commerce.
---------------------------------------------------------------------------
> BR-ecommerce - Sua loja virtual na internet! - Apenas R$99,90 mensais (hospedagem inclusa)!
#59 Jaime Franco de Lima
Posted 14/07/2006, 23:08
Tenho uma página ASP q é a do meu login e senha. Todos devem acessar meu site, atravez desta página via a URL http://www.meusite.c...ginadelogin.asp.
Como faço para impedir q um engraçadinho acesse outra pagina do meu site diretamente atraves da URL (http://www.meusite.c...odeclientes.asp) sem passar pela página de login?
FORNALHA
#60
Posted 15/07/2006, 00:23
exemplo
'se a senha e o login estiverem corretos session("login") = TRUE session.Timeout = 30 'tempo que a sesson vai expirar em minutos dai no começo de cada pagina que vc queira restringir apenas para pessoas logadas vc coloka um if if session("login") <> TRUE then response.redirect ("login.asp") end ifValeu
Edição feita por: Renan L. Queiroz, 05/01/2010, 15:10.
Inclusão da tag [ code ] para postagem de scripts
Ta com dúvida pergunta aqui no fórum...
Grato
0 user(s) are reading this topic
0 membro(s), 0 visitante(s) e 0 membros anônimo(s)