If the table permissions are not correct, run the following in sqlplus sys as sysdba:
grant EXECUTE on DBMS_LOCK to protect;
The response ought to be "granted". Repeat for each missing privilige.
Rerun above queries to recheck that all necessary privs are in place.
Note: The protect user should have SELECT privileges to some other system tables by default, but the permissions may have been removed if there has been any "hardening" of the Oracle instance. These include: