Question : Injection de SQL et asp classique

Bonjour les experts, le

I n'ont jamais pensé aux injections de SQL avant, mais il est juste venu à mon attention.

I a fait de la recherche et les injections de SQL semblent assez faciles à utiliser et entaille dans un DB.  aussi simple que dactylographiant le suivant dans un Tableau de BAISSE du textbox

abc'; ; --le

If ceci est vrai, puis comment peut ceci être empêché.  '; la restriction sera-t-elle ensemble suffisante, ou est-ce complexe de MOR que cela ?  J'ai trouvé le code au-dessous du ce censément pour empêcher des injections, est-ce que mais je ne peux pas dire ce qui est lui faisant et comment l'employer ? le

Lastly, si les restrictions d'injection sont nécessaires, sont elles a seulement eu besoin quand je fais le SQL DANS OÙ, ou aussi, l'INSERTION, la MISE À JOUR, le rs.AddNew, etc.

Thank you.
class= > " clair " de
> de " codeSnippet " de class= de
class= " lineNumbers " de
class= de
1 :
2 :
3 :
4 :
5 :
6 :
7 :
8 :
9 :
10 :
11 :
12 :
13 :
14 :
15 :
16 :
17 :
18 :
19 :
20 :
21 :
22 :
23 :
24 :
25 :
26 :
27 :
28 :
29 :
30 :
31 :
32 :
33 :
34 :
35 :
36 :
37 :
38 :
39 :
40 :
41 :
42 :
43 :
44 :
45 :
46 :
47 :
48 :
49 :
50 :
51 :
52 :
53 :
54 :
55 :
56 :
57 :
58 :
59 :
60 :
61 :
62 :
63 :
64 :
65 :
66 :
67 :
68 :
69 :
70 :
71 :
72 :
73 :
74 :
class= ><% " notpretty " de l'id= " codeSnippet746605 " de
 de pStr) puis
		le sTemp = remplacent (pStr, « ' », « '' ")
	finir si
	validText = sTemp
fonction de fin

Fonction ReturnValue (sPattern, sSearchString, iCase)

	Faible oRegEx, oMatches  
	Placer l'oRegEx = nouveau RegExp   

	oRegEx.Pattern = sPattern
	oRegEx.IgnoreCase = faux
	oRegEx.Global = rectifient

	Placer les oMatches = l'oRegEx.Execute (sSearchString) 

	Si >= 1 d'oMatches.count puis
		Choisir l'iCase de cas
		Affaire 0
		   ReturnValue = oMatches (0)
		Affaire 1
		   ReturnValue = oMatches (0)
		Affaire 2
		   ReturnValue = oMatches (1)
		Extrémité choisie
   autrement
		ReturnValue = 0	
   Finir si

Finir la fonction

fonction isReallyNumeric (pValue)
	faible bValidNumeric
	faible sTemp
	faible cTemp
	obscurcir I
	
	bValidNumeric = rectifier
	sTemp = CStr (pValue)
	
	pour I = 1 à Len (sTemp)
		cTemp = mi (sTemp, I, 1)
		
		si Asc (cTemp) < 48 ou Asc (cTemp) > 57 puis
			bValidNumeric = faux
			sortir pour
		finir si
	après

	isReallyNumeric = bValidNumeric
fonction de fin

fonction IfNotNumeric (pValue, pDefaultValue)
	faible sTemp 
  
	sTemp = pValue 
	si (pValue = "") OU (non isReallyNumeric (pValue)) puis  
		sTemp = pDefaultValue
	autrement
		sTemp = ReturnValue (+ « \ b [0-9] \ b », sTemp, 0)
	finir si
  
  IfNotNumeric = sTemp
fonction de fin
%>
class= de

Réponse : Injection de SQL et asp classique

Si vous ne voulez pas compliquer des choses vers le haut, simplement pour ajouter cette fonction et pour l'appeler avec votre demande. Elle filtrera des commandes d'injection de SQL et laissera à SQL la valeur amicale.
1 :
2 :
3 :
4 :
5 :
6 :
7 :
8 :
9 :
10 :
11 :
12 :
13 :
14 :
15 :
16 :
17 :
18 :
19 :
20 :
21 :
22 :
23 :
24 :
25 :
26 :
27 :
28 :
Injection de fonction (x)
    X = remplacent (x, « choisissent », "")
    X = remplacent (x, « baisse », "")
    X = remplacent (x, « -- », "")
    X = remplacent (x, « insertion », "")
    X = remplacent (x, « suppression », "")
    X = remplacent (x, « xp_ », "")
    X = remplacent (x, « * », le "")
    X = remplacent (x, « # », le "")
    X = remplacent (x, « % », le "")
    X = remplacent (x, « et », le "")
    X = remplacent (x, « ' », le "")
    X = remplacent (x, « (", le "")
    X = remplacent (x, ") », le "")
    X = remplacent (x, « / », le "")
    X = remplacent (x, « \ », le "")
    X = remplacent (x, « :  », "")
    X = remplacent (x, « ;  », "")
    X = remplacent (x, ""<>, "")
    X = remplacent (x, « = », le "")
    X = remplacent (x, « [ », le "")
    X = remplacent (x, « ] », le "")
    X = remplacent (x, « ?  », "")
    X = remplacent (x, « ` », "")
    X = remplacent (x, « | », "")
    Injection = x
Fonction de fin
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us