January 2007
Intermediate to advanced
190 pages
3h 47m
English
Some PL/SQL packages contain procedures that effectively allow a user to execute SQL directly. These packages just take the user input and pass it, untouched, to an EXECUTE IMMEDIATE or a DBMS_SQL parse and execute. One of the more well-known examples of this is the VALIDATE_STMT procedure of the DRILOAD package owned by CTXSYS:
EXEC CTXSYS.DRILOAD.VALIDATE_STMT('GRANT DBA TO ME');
Reported to Oracle by a number of different security researchers, this flaw was supposedly "fixed" in Alert 68, although the new patch and some subsequent patches failed to correct it properly.
Read now
Unlock full access