3636from lib .core .common import isWindowsPath
3737from lib .core .common import normalizePath
3838from lib .core .common import posixToNtSlashes
39+ from lib .core .common import randomStr
3940from lib .core .common import readInput
4041from lib .core .convert import hexencode
4142from lib .core .data import conf
@@ -166,12 +167,12 @@ def webInit(self):
166167 elif int (choice ) < 1 or int (choice ) > 3 :
167168 logger .warn ("invalid value, it must be 1 or 3" )
168169
169- backdoorName = "backdoor .%s" % self .webApi
170- backdoorStream = decloakToNamedTemporaryFile (os .path .join (paths .SQLMAP_SHELL_PATH , backdoorName + '_' ), backdoorName )
170+ backdoorName = "tmpb%s .%s" % ( randomStr ( 4 ), self .webApi )
171+ backdoorStream = decloakToNamedTemporaryFile (os .path .join (paths .SQLMAP_SHELL_PATH , "backdoor.%s_" % self . webApi ), backdoorName )
171172 backdoorContent = backdoorStream .read ()
172173
173- uploaderName = "uploader .%s" % self .webApi
174- uploaderContent = decloak (os .path .join (paths .SQLMAP_SHELL_PATH , uploaderName + '_' ))
174+ uploaderName = "tmpu%s .%s" % ( randomStr ( 4 ), self .webApi )
175+ uploaderContent = decloak (os .path .join (paths .SQLMAP_SHELL_PATH , "uploader.%s_" % self . webApi ))
175176
176177 for directory in directories :
177178 # Upload the uploader agent
@@ -181,8 +182,9 @@ def webInit(self):
181182 if isWindowsPath (requestDir ):
182183 requestDir = requestDir [2 :]
183184 requestDir = normalizePath (requestDir )
185+
184186 self .webBaseUrl = "%s://%s:%d%s" % (conf .scheme , conf .hostname , conf .port , requestDir )
185- self .webUploaderUrl = "%s/%s" % (self .webBaseUrl , uploaderName )
187+ self .webUploaderUrl = "%s/%s" % (self .webBaseUrl . rstrip ( '/' ) , uploaderName )
186188 self .webUploaderUrl = ntToPosixSlashes (self .webUploaderUrl .replace ("./" , "/" ))
187189 uplPage , _ = Request .getPage (url = self .webUploaderUrl , direct = True , raise404 = False )
188190
@@ -194,7 +196,7 @@ def webInit(self):
194196 continue
195197
196198 infoMsg = "the uploader agent has been successfully uploaded "
197- infoMsg += "on '%s'" % directory
199+ infoMsg += "on '%s' ('%s') " % ( directory , self . webUploaderUrl )
198200 logger .info (infoMsg )
199201
200202 if self .webApi == "asp" :
0 commit comments