Ir para conteúdo

POWERED BY:

Arquivado

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

razs

verifica ip

Recommended Posts

Boas pessoal fiz isto como script anti brute force. alguem percebe porque nao funciona? ou alguem me aconselha uma maneira melhor de fazer isto?

 

Obrigado

 

dim datp,datap
datp = cdate(DateAdd ("d", -1, now()))
datap=(Year(datp) &"/"& Month(datp) &"/"& Day(datp))

Set sql1 = conn.Execute("select * FROM tbl WHERE ip = '"&ipa&"' and data_reg > '"&datap&"'")

if not sql1.eof then
response.Write("<script>alert('You have made 5 attempts, your identification was recorded for safety reasons. Please try again in 24h!');location.href='index.asp'</script>")
else
end if

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha este exemplo:

O código abaixo ira detectar endereço de IP do visitante e verificar se deve fazer o bloqueio de endereços IP, se o endereço corresponde a qualquer um de nossa matriz, o nosso visitante será redirecionado para a página "no_access.asp". unica diferença que não estou pegando os IP de um bd, mas é fazer pegar do bd

 

<% 
'declara variaveis
Dim sIP 
Dim sIParray(2) 
'endereços IP k seraun bloqueados no array
sIParray(0) = "61.254.40.22" 
sIParray(1) = "62.454.40.25" 
sIParray(2) = "62.254.40.17" 
'Recupera o endereço IP dos visitantes 
sIP = Request.ServerVariables("REMOTE_ADDR") 

' Loop através dos IPs banidos usando a função UBound
For i = 0 to UBound(sIParray) 
'Verifica se o endereço IP corresponde a qualquer dos IPs bloqueados
If sIP = sIParray(i) Then 
Response.Redirect "no_access.asp" 
End If 
Next 
%> 

 

você poderia fazer um if mesmo

tipo você recupera o ip atraves do

varip=request.servervariables("Remote_ADDR")

if var ip = 200.204.87.183 then

response.redirect("paginainicial.asp?msgeof=1")

end if

 

no caso de ser dinamico você poderia fazer com k todos os users

se cadastrassem com um determinado login e fazer uma comparacaun na sua faixa de IP´s...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim isso é facil o problema e que eu apenas quero bloquear 30minutos mas pronto para facilitar ate pode bloquear 24horas.

 

O problema e o select onde compara as datas que nao esta a funcionar

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele esta gerando algum erro?

Compartilhar este post


Link para o post
Compartilhar em outros sites

data_reg esta com o tipo de dados Data no banco de dados ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

faça o cálculode horas direto na string SQL

Compartilhar este post


Link para o post
Compartilhar em outros sites

ja funciona, nao me perguntes o que fiz mas ja funciona.

 

	
datp = cdate(DateAdd ("d", -1, now()))
datap=(Year(datp) &"/"& Month(datp) &"/"& Day(datp))

Set sql1 = conn.Execute("select * FROM tbl WHERE ip = '"&ip&"' and data > '"&datap&"'")

	if not sql1.eof then
		response.write "You have made 5 attempts, your identification was recorded for safety reasons.Please try again in 24h!"
		session("log16")="1236"
	end if		

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.