Ir para conteúdo
Fórum Script Brasil
  • 0

Segurança


ViniciusJau

Pergunta

e ai pessoal....seguinte eu tenho um sistema de login e queria proteger ele...

tem uma falha nele se o cara digita 'OR '1' = '1 ele passa pelo meu sitema ...

andei lendo uns tutos na net ... um inclusive aqui notopico para tutoriais do forum, mais não consegui fazer a proteção... o usuario continua passando no meu login....

vou postar meu codigo:

Login.asp

<form method="post" action="logar.asp" target="_parent">

  <table width="260" border="0" align="left" cellpadding="0" cellspacing="0">

    <tr>

      <th width="259" colspan="2" valign="bottom" scope="col"><font size="1" face="Arial, Helvetica, sans-serif">&nbsp;Usu&aacute;rio:</font><font color="#FFFFFF" size="1" face="Verdana, Arial, Helvetica, sans-serif">

        <input style="BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; BORDER-LEFT: #666666 1px solid; WIDTH: 70px; BORDER-BOTTOM: #666666 1px solid; FONT-FAMILY: verdana; HEIGHT: 19px" name="login" type="text" size="10">

        </font><font size="1" face="Verdana, Arial, Helvetica, sans-serif"></font><font size="1" face="Arial, Helvetica, sans-serif">&nbsp;Senha:</font><font color="#FFFFFF" size="1" face="Verdana, Arial, Helvetica, sans-serif">

        <input style="BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; BORDER-LEFT: #666666 1px solid; WIDTH: 60px; BORDER-BOTTOM: #666666 1px solid; FONT-FAMILY: verdana; HEIGHT: 19px" name="senha" type="password" size="6">

        &nbsp; </font><font color="#FFFFFF" size="1" face="Verdana, Arial, Helvetica, sans-serif">

        <input name="Submit" value="Entrar" type=image src="../imagens/botao_ok.gif" width=19 height=19>

        </font></th>

    </tr>

  </table>

</form>

<%

login = request.Form("login")

login = replace(login,"'","''")

login = replace(login,"#","''")

login = replace(login,"$","''")

login = replace(login,"%","''")

login = replace(login,"¨","''")

login = replace(login,"&","''")

login = replace(login,"'or'1'='1'","''")

login = replace(login,"--","''")

login = replace(login,"insert","''")

login = replace(login,"drop","''")

login = replace(login,"delet","''")

login = replace(login,"xp_","''")

login = replace(login,"select","''")

login = replace(login,"*","''")

%>

<%

senha = request.Form("senha")

senha = replace(senha,"'","''")

senha = replace(senha,"#","''")

senha = replace(senha,"$","''")

senha = replace(senha,"%","''")

senha = replace(senha,"¨","''")

senha = replace(senha,"&","''")

senha = replace(senha,"'or'1'='1'","''")

senha = replace(senha,"--","''")

senha = replace(senha,"insert","''")

senha = replace(senha,"drop","''")

senha = replace(senha,"delet","''")

senha = replace(senha,"xp_","''")

senha = replace(senha,"select","''")

senha = replace(senha,"*","''")

%>

logar.asp

<%

Dim login,senha,conexao,constr,rs

login = request.Form("login")

senha = request.Form("senha")

set conexao = createobject("AdoDb.connection")

constr = "Driver={Microsoft Access Driver (*.mdb)};DBQ="& server.MapPath("xuxa.mdb")

conexao.open constr

set rs = conexao.execute("SELECT * FROM users WHERE login='"&login&"' AND senha='"&senha&"'")

if rs.eof then

response.Redirect("login_errado.asp")

else

Session("login") = "logado"

Session("nome") = request("login")

session("nome_completo") = rs("NomeCompleto")

url = rs("url")

response.redirect (url)

end if

%>

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

seguindo os passos que eu coloquei no meu post dentro do tópico de tutoriais não funcionou?

Link para o comentário
Compartilhar em outros sites

  • 0

não funcinou..... eu usei de lá mesmo....

mais agora eu acho que consegui... saca só:

<%

Dim login,senha,conexao,constr,rs

login = request.Form("login")

senha = request.Form("senha")

'-------------------------------------------------------

login = replace(login,"'","''")

login = replace(login,"#","''")

login = replace(login,"$","''")

login = replace(login,"%","''")

login = replace(login,"¨","''")

login = replace(login,"&","''")

login = replace(login,"'or'1'='1'","''")

login = replace(login,"--","''")

login = replace(login,"insert","''")

login = replace(login,"drop","''")

login = replace(login,"delet","''")

login = replace(login,"xp_","''")

login = replace(login,"select","''")

login = replace(login,"*","''")

senha = replace(senha,"'","''")

senha = replace(senha,"#","''")

senha = replace(senha,"$","''")

senha = replace(senha,"%","''")

senha = replace(senha,"¨","''")

senha = replace(senha,"&","''")

senha = replace(senha,"'or'1'='1'","''")

senha = replace(senha,"--","''")

senha = replace(senha,"insert","''")

senha = replace(senha,"drop","''")

senha = replace(senha,"delet","''")

senha = replace(senha,"xp_","''")

senha = replace(senha,"select","''")

senha = replace(senha,"*","''")

'---------------------------------------------

Session("lgn") = login

Session("snh") = senha

set conexao = createobject("AdoDb.connection")

constr = "Driver={Microsoft Access Driver (*.mdb)};DBQ="& server.MapPath("xuxa.mdb")

conexao.open constr

set rs = conexao.execute("SELECT * FROM users WHERE login='"&Session("lgn")&"' AND senha='"&Session("snh")&"'")

if rs.eof then

response.Redirect("login_errado.asp")

else

Session("login") = "logado"

Session("nome") = request("login")

session("nome_completo") = rs("NomeCompleto")

url = rs("url")

response.redirect (url)

end if

%>

Link para o comentário
Compartilhar em outros sites

  • 0

Espera aí... Só pra eu entender...

Meus sites não tem este sistema de proteção de login e mesmo assim esta falha descrita por ele não funciona no meu.

Poderiam explicar melhor sobre estas falhas?

Obrigado

Link para o comentário
Compartilhar em outros sites

  • 0

é um sistema de bular o sistema do cara.. tenta entrar no seu sitema colocando aspa simples no login e na senha.... se der um erro de script seu sistema tem essa falha...

hehe segundo o tuto que o dark passou esse erro acontece com quem não manja muito de asp ou sql.. hehe ( como eu...)

mais tá resolvido.....

Link para o comentário
Compartilhar em outros sites

  • 0

Caras...

Não só com o apóstrofo mas também com tags html.. Se liguem em usar o HtmlEncode, e não era necessário aquele esquema todo de segurança ali não ViniciusJau. Daquela forma a pessoa não pode usar o login 'delet', 'drop', etc..

Outra dica importante é em formulários de buscas, tomar cuidado com '%', enfim, ter uma noção sobre Sql Injection, é fundamental..

Abraços!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...