Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 04c187c

Browse files
committed
Working on a bug (fix for Partial UNION query SQL injection technique
both Oracle and Microsoft SQL Server).
1 parent 2f406b3 commit 04c187c

1 file changed

Lines changed: 4 additions & 1 deletion

File tree

lib/core/agent.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -456,7 +456,10 @@ def limitQuery(self, num, query, fieldsList=None):
456456
# TODO: fix for Partial UNION query SQL injection technique both
457457
# Oracle and Microsoft SQL Server
458458
elif kb.dbms == "Oracle":
459-
limitedQuery = "%s FROM (%s, %s" % (untilFrom, untilFrom, limitStr)
459+
if query.startswith("SELECT "):
460+
limitedQuery = "%s FROM (%s, %s" % (untilFrom, untilFrom, limitStr)
461+
else:
462+
limitedQuery = "%s FROM (SELECT %s, %s" % (untilFrom, ", ".join(field for field in fieldsList), limitStr)
460463
limitedQuery = limitedQuery % fromFrom
461464
limitedQuery += "=%d" % (num + 1)
462465

0 commit comments

Comments
 (0)