Visualizzazione dei risultati da 1 a 10 su 19

Discussione: Funzione Replace

Hybrid View

  1. #1
    Quote Originariamente inviata da Vincent.Zeno Visualizza il messaggio
    opti, secondo te la funzione è a posto? o c'è qualcosa da migliorare?
    (a parte necessità specifiche sui replace)
    dipende dal contesto. soprattutto da come usa user e password. sì è facilmente sotto attacco se la validazione la si fa in questo modo

    sql="SELECT * FROM utenti WHERE user='" & user & "' AND password='" & password & "'"

    se si spezza la verifica in due passaggi, il pericolo diminuisce

    del resto, basta cercare "sql injection" su google per trovare un florilegio di informazioni


  2. #2
    Quote Originariamente inviata da optime Visualizza il messaggio
    basta cercare "sql injection" su google per trovare un florilegio di informazioni

    io ho cercato su google, ma tutto ste informazioni non le ho mica trovate. Più che altro in inglese, ma sono vecchie, anche di 4-5 anni. Di recente non ho trovato nulla. Ho trovato solo quest'altra funzione che potrebbe essere interessante, ma che sembra non funzionare o, sono io che non l'ho richiamata correttamente:

    codice:
      'IllegalChars funzione di guardia contro SQL injection
     Function IllegalChars(sInput)
     'Dichiara le variabili
      Dim iCounter, SBadChars
     'Set IllegalChars a False
     IllegalChars = False
     'Crea un array di caratteri illegali e parole
     sBadChars = array ("select", "drop", ",", "-", "isert", "delete", "xp_", "_", "#", "%", "&", "'", "(", ")", "/", "\", ":", ",", "<", ">", "= "," [","] "," "," `", "|?",  "__ ")
     'Loop attraverso sBadChars array utilizzando il nostro contatore e funzione UBound
    For iCounter = 0 to UBound (sBadChars)
     'Usare funzione InStr per verificare la presenza di carattere illegale nella nostra variabile
     If Instr (sInput, sBadChars (iCounter))> 0 Then
     IllegalChars = True
     End If
     Next
     End Function
    che poi richiamo ad inizio pagina in questo modo:

    codice:
       blnIsIllegalCode = IllegalChars (Request.QueryString)
    
     If (blnIsIllegalCode) Then
        Response.Write ("Bad Request")
        Response.End ()
     End If

    Anzi, cosa ne pensate? E' valida e soprattutto, l'ho richiamata nel modo giusto e al punto giusto?
    Tornando poi alla tua considerazione precedente, io la validazione la faccio così:

    codice:
      DL_rsUser.Source = DL_rsUser.Source & " FROM geryko.utenti WHERE uname='" & ProteggiSQLI(DL_valUtente) &"' AND parolachiave='" & ProteggiSQLI(Request.Form("pwd")) & "'"
    Anche perchè la user la leggo prima:

    codice:
    DL_valUtente=ProteggiSQLI(CStr(Request.Form("utente")))
    In questo caso com'e? SI è meno esposti?
    Ultima modifica di bigdaniel; 30-10-2013 a 13:44
    BigDaniel

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.