Oracle Training Oracle Support Development Oracle Apps

 E-mail Us
 Oracle Articles
New Oracle Articles

 Oracle Training
 Oracle Tips

 Oracle Forum
 Class Catalog

 Remote DBA
 Oracle Tuning
 Emergency 911
 RAC Support
 Apps Support
 Oracle Support

 SQL Tuning

 Oracle UNIX
 Oracle Linux
 Remote s
 Remote plans
 Application Server

 Oracle Forms
 Oracle Portal
 App Upgrades
 SQL Server
 Oracle Concepts
 Software Support

 Remote S


 Consulting Staff
 Consulting Prices
 Help Wanted!


 Oracle Posters
 Oracle Books

 Oracle Scripts

Don Burleson Blog 







Linda Webb

Got breaking Oracle news?    Burleson Consulting Oracle News

Click here for more Oracle News Headlines


Extproc Security Vulnerability in Oracle

The following article describes security vulnerability in the Oracle extproc functionality and fix information.

The Oracle database server supports PL/SQL, a programming language. PL/SQ can execute external procedures via extproc. Over the past few years there has been a number of vulnerabilities in this area.

Extproc is intended only to accept requests from the Oracle database server but local users can still execute commands bypassing this restriction.

No authentication takes place when extproc is asked to load a library and execute a function. This allows local users to run commands as the Oracle user (Oracle on unix and system on Windows). If configured properly, under 10g, extproc runs as nobody on *nix systems so the risk posed here is minimal but still present.

Fix Information
Oracle has responded saying this is "expected behavior" and they are not going to fix it. NGSSoftware believes this does pose a security risk.  NGSSQuirreL for Oracle can be used to assess whether your Oracle servers are vulnerable to this.

Consider the listener entry below:
These external procedures operate by instructing the listener to issue these operating system commands on their behalf. Since the listener runs with the privilege of the operating system user oracle, the only limit to which commands can be executed by the external procedures is the limit on what the oracle account can do. This means the datafiles could potentially be deleted. Hackers can also use this feature to open up your server's filesystem and write malicious data, threatening data integrity.

External procedure service in listener is created by default. In most shops we have seen, this functionality is not used at all. But since the listener.ora file has it, the default listener is already listening for it, and stopping the listener, which is not an option, is the only way it can be deactivated.

There are two ways to handle this potential threat. If this is not used in your organization, remove it completely from the listener.ora file and restart the listener.

If the external procedures are to be used, remove the entry from listener.ora and place it in a separate listener.

For details, see the book Oracle Privacy Security Auditing.


Oracle Training at Sea
oracle dba poster

Follow us on Twitter 
Oracle performance tuning software 
Oracle Linux poster


Burleson is the American Team

Note: This Oracle documentation was created as a support and Oracle training reference for use by our DBA performance tuning consulting professionals.  Feel free to ask questions on our Oracle forum.

Verify experience! Anyone considering using the services of an Oracle support expert should independently investigate their credentials and experience, and not rely on advertisements and self-proclaimed expertise. All legitimate Oracle experts publish their Oracle qualifications.

Errata?  Oracle technology is changing and we strive to update our BC Oracle support information.  If you find an error or have a suggestion for improving our content, we would appreciate your feedback.  Just  e-mail:  

and include the URL for the page.


Burleson Consulting

The Oracle of Database Support

Oracle Performance Tuning

Remote DBA Services


Copyright © 1996 -  2017

All rights reserved by Burleson

Oracle ® is the registered trademark of Oracle Corporation.

Remote Emergency Support provided by Conversational