@@ -261,6 +261,7 @@ def searchColumn(self):
261261 dbs = {}
262262 whereTblsQuery = ""
263263 infoMsgTbl = ""
264+ infoMsgDb = ""
264265 colList = conf .col .split ("," )
265266 origTbl = conf .tbl
266267 origDb = conf .db
@@ -296,7 +297,16 @@ def searchColumn(self):
296297 whereTblsQuery = " AND (" + " OR " .join ("%s = '%s'" % (tblCond , unsafeSQLIdentificatorNaming (tbl )) for tbl in _ ) + ")"
297298 infoMsgTbl = " for table%s '%s'" % ("s" if len (_ ) > 1 else "" , ", " .join (tbl for tbl in _ ))
298299
299- logger .info ("%s%s" % (infoMsg , infoMsgTbl ))
300+ if conf .db and conf .db != CURRENT_DB :
301+ _ = conf .db .split ("," )
302+ infoMsgDb = " in database%s '%s'" % ("s" if len (_ ) > 1 else "" , ", " .join (db for db in _ ))
303+ elif conf .excludeSysDbs :
304+ infoMsg2 = "skipping system database%s '%s'" % ("s" if len (self .excludeDbsList ) > 1 else "" , ", " .join (db for db in self .excludeDbsList ))
305+ logger .info (infoMsg2 )
306+ else :
307+ infoMsgDb = " across all databases"
308+
309+ logger .info ("%s%s%s" % (infoMsg , infoMsgTbl , infoMsgDb ))
300310
301311 colQuery = "%s%s" % (colCond , colCondParam )
302312 colQuery = colQuery % unsafeSQLIdentificatorNaming (column )
@@ -305,9 +315,6 @@ def searchColumn(self):
305315 db = safeSQLIdentificatorNaming (db )
306316
307317 if conf .excludeSysDbs and db in self .excludeDbsList :
308- infoMsg = "skipping system database '%s'" % db
309- logger .info (infoMsg )
310-
311318 continue
312319
313320 if any (isTechniqueAvailable (_ ) for _ in (PAYLOAD .TECHNIQUE .UNION , PAYLOAD .TECHNIQUE .ERROR )) or conf .direct :
@@ -354,11 +361,12 @@ def searchColumn(self):
354361 if colConsider == "1" :
355362 infoMsg += "s like"
356363 infoMsg += " '%s' in database '%s'" % (column , db )
357- logger .info (infoMsg )
364+ logger .info ("%s%s" % ( infoMsg , infoMsgTbl ) )
358365
359366 query = rootQuery .blind .count
360367 query = query % (db , db , db , db , db , db )
361368 query += " AND %s" % colQuery .replace ("[DB]" , db )
369+ query += whereTblsQuery .replace ("[DB]" , db )
362370 count = inject .getValue (query , inband = False , error = False , expected = EXPECTED .INT , charsetType = CHARSET_TYPE .DIGITS )
363371
364372 if not isNumPosStrValue (count ):
@@ -377,6 +385,7 @@ def searchColumn(self):
377385 query = rootQuery .blind .query
378386 query = query % (db , db , db , db , db , db )
379387 query += " AND %s" % colQuery .replace ("[DB]" , db )
388+ query += whereTblsQuery .replace ("[DB]" , db )
380389 query = agent .limitQuery (index , query , colCond .replace ("[DB]" , db ))
381390 tbl = inject .getValue (query , inband = False , error = False )
382391 kb .hintValue = tbl
0 commit comments