Five different security related posts to which I have contributed on dba.stackexchange.com. I did not necessarily provide the accepted answer for these, but felt that the questions posed were interesting enough to warrant a mention.
Every Which Way But Loose
Rather than a one-size fits all solution - trying to handle everything through a Virtual Private Database policy - a proper security plan involves the use of a variety of techniques, each with their own place in the model. #oracle #vpd #security #roles #plsql #privileges #constraints
DBA Appreciation Day
I just found out that someone (clearly a genius) has decided that the first Friday in July should be DBA Appreciation Day.
How To Do It In Parallel
I just came across an interesting question on the Stack Exchange forum, where a user was asking how to execute a set of PL/SQL procedures in parallel with each other. There really isn't a construct in PL/SQL to accomplish this. That is not to say that it can't be done, however...
Password Strength Revisited
This is an update to one of my very first posts, bringing it up to date to reflect current password verification techniques for Oracle 19c.
Top STIG – Part 6 (OS Accounts)
The final installment in my series on CAT I STIG controls is all about the use (or not) of the server operating system accounts that support the Oracle database. Two controls address the use of and access to the Oracle software installation account, and one addresses the privileges associated with individual user accounts for DBAs. … Continue reading Top STIG – Part 6 (OS Accounts)
Top STIG – Part 5 (Default Passwords)
One of the most common attack vectors for any hacker is checking to see if you have reset default passwords on service and administrator accounts. Almost every piece of hardware or software comes with some default way to login the first time, and a lot of people are really bad at changing those credentials to be more secure. Oracle databases and DBAs are no exception...
Top STIG – Part 4 (Encrypted Transmission and PKI)
Part 4 of this series on top STIG controls takes a look at the encryption of data in motion and the use of Public Key Infrastructure (PKI).
Top STIG – Part 3 (Software Support)
The next CAT I STIG control in this series is less technical and more about policy. Like all of the others, however, it requires the DBA to be aware of things beyond their immediate day to day workload, and involved in the planning, design, and development of the system technology stack...
Top STIG – Part 2 (Obscuring Credentials)
Applications must obscure feedback of authentication information; when using command-line tools such as Oracle SQL*Plus, which can accept a plain-text password, users must use an alternative logon method that does not expose the password.
Top STIG – Part 1 (Local Authentication)
In this post I'm going to start going over the Database STIG CAT I vulnerabilities in a little more detail. The first two relate to database initialization parameters and authentication.
Well That’s Random…
Increasingly we are asked to provide more secure passwords for accounts of all kinds. As I have written previously, because coming up with new ones that meet all complexity requirements can be a real pain, I try to avoid passwords whenever possible in favor of PKE authentication. Sometimes, however, they are unavoidable.
Oracle 12c Database STIG Breakdown
This post contains a listing of all 199 Oracle 12c Database STIG controls from Release 16 (24 January 2020), organized by the five major categories of database security...
What the Cloud Can’t Do
A lot of things are possible in the cloud, but not everything. A couple of technologies in particular that might seem common in on premise systems are nearly impossible to deploy in the cloud. The first is the idea of multiple networks. Many systems are deployed around the idea that there is a common, “public” … Continue reading What the Cloud Can’t Do
Auditing by the Numbers
There are over 60 controls in the DISA Oracle 12c Database Secure Technical Implementation Guide (STIG) that contain the word "audit" or "auditing"...
How To Complete a STIG Review
The simplest way to complete a DISA Secure Technical Implementation Guide (STIG) review is to start at the beginning of the checklist and work through it, one control item at a time. As you read each control, the information will be broken down into several distinct areas: metadata, content, and findings. Each control has metadata … Continue reading How To Complete a STIG Review
FIPS is a Four Letter Word
FIPS is a four letter word. It is also a source of some confusion when it comes to the Oracle database and DISA STIG compliance, which I will attempt to sort out to the best of my ability in this post.
code-obfuscation-toolkit
The code-obfuscation-toolkit allows you to obfuscate the source code of a variety of stored programs, including procedures, functions, package bodies, and type bodies. When wrapping an object, to further obfuscate the original code in the event that it is ever unwrapped, all comments and line breaks can also be removed.
How to Limit a User Connection to a Specific IP Address
Seriously, I find all the best questions about Oracle security on forums like Oracle Communities and AskTom. Sometimes I need to be careful, though. I have a tendency to jump right to implementation details in my head without always considering all of the ramifications of the original question. Sometimes the answers seem immediately obvious, but it doesn't usually take long before someone offers an observation that makes me sit back and think that maybe my first instinct needs some qualification. Case in point...
AntiVirus for my Database Server?
I've seen a couple of Oracle Community and AskTom posts over the last year or two about installing anti-virus software on Oracle database servers. Usually it is because someone in security told the sysadmin or the DBA that they had to install some kind of AV software because it was required. Been there; done that. I found out the hard way that doing so was a bad idea...
Understanding the AF/Oracle ESLA
A proper understanding of Oracle product licensing is essential to planning and controlling costs associated with system development and deployment. Taking into account that the cost and number of licenses you need may vary depending on the operating system you choose to use, the number of physical CPU sockets in your hardware, the number of users your system will support, or whether or not your servers are virtualized, and it doesn’t take much to get completely lost. If you don’t plan and implement carefully, an audit of database usage by Oracle (yes, they do that!) could wind up costing you hundreds of thousands of dollars or more in additional fees.
How to hide Oracle passwords in a script?
I was perusing (yes, "perusing") the My Oracle Support Community Database Administration posts recently when I came across this one: "How to hide oracle database account password in a create user sql script". The poster had a problem that every database administrator has had to confront at one time or another: namely, how to embed a … Continue reading How to hide Oracle passwords in a script?
Best Year Yet
I haven't ever done this before, but this has been the busiest year yet for this blog and I thought I would take a moment to say thank you, and to reflect. I know I'm not one of those flashy sites that posts multiple times per day (how do people have time for that while doing real … Continue reading Best Year Yet
APEX Authentication with a Smart Card – Part 3 (Application)
Authentication In my previous two posts, I discussed configuring the Apache web server and the APEX Workspace for smart card authentication. With those in mind, I will now look at basic smart authentication within an APEX application. In this architecture, individual APEX applications may now authenticate users through one of two methods: HTTP Header Variable: … Continue reading APEX Authentication with a Smart Card – Part 3 (Application)
APEX Authentication with a Smart Card – Part 2 (Workspace)
Welcome to the second step in the process of configuring Oracle APEX for smart card authentication. In my previous post I demonstrated how to configure an Apache HTTPD server to query a smart card and place the user's certificate Common Name into a header variable named SSL_CLIENT_S_DN_CN. In this post I will describe how to … Continue reading APEX Authentication with a Smart Card – Part 2 (Workspace)