Oracle Audit in a Nutshell - Database Audit but how?

Similar documents
Audit Management with DBMS_AUDIT_MGMT

How To Ensure Data Security On Anor

All About Oracle Auditing A White Paper February 2013

An Oracle White Paper August Oracle Database Auditing: Performance Guidelines

Oracle Database Auditing Performance Guidelines

Fine Grained Auditing In Oracle 10G

Developing Value from Oracle s Audit Vault For Auditors and IT Security Professionals

Guide to Auditing and Logging in the Oracle E-Business Suite

All About Oracle Auditing Everything You Need to Know

Using TimesTen between your Application and Oracle. between your Application and Oracle. DOAG Conference 2011

Securing Oracle E-Business Suite in the Cloud

Oracle. Brief Course Content This course can be done in modular form as per the detail below. ORA-1 Oracle Database 10g: SQL 4 Weeks 4000/-

Installing and Configuring Guardium, ODF, and OAV

Oracle Database 11g: Administration Workshop I 11-2

Obtaining Value from Your Database Activity Monitoring (DAM) Solution

Monitor Oracle Event Logs using EventTracker

SOUG-SIG Data Replication With Oracle GoldenGate Looking Behind The Scenes Robert Bialek Principal Consultant Partner

NYOUG Spring 2015 Its Only Auditing - Don t Be Afraid

New Oracle 12c Security Features Oracle E-Business Suite Perspective

Auditing Data Access Without Bringing Your Database To Its Knees

Oracle Database 11g: Security Release 2. Course Topics. Introduction to Database Security. Choosing Security Solutions

Database security tutorial. Part I

WHITE PAPER. Guide to Auditing and Logging in the Oracle E-Business Suite

<Insert Picture Here> Oracle Database Security Overview

D50323GC20 Oracle Database 11g: Security Release 2

1 Introduction. 2 Technical overview/insights into FDAs. 1.1 What is what

WHITE PAPER. Guide to Auditing and Logging in the Oracle E-Business Suite

Credit Cards and Oracle: How to Comply with PCI DSS. Stephen Kost Integrigy Corporation Session #600

CPU. Best Practices Nov 2007

WHITE PAPER. Guide to Auditing and Logging Oracle Databases

How To Secure A Database From A Leaky, Unsecured, And Unpatched Server

Oracle Database 11g: Security. What you will learn:

Credit Cards and Oracle E-Business Suite Security and PCI Compliance Issues

Database Auditing Report submitted by: D. Murali Krishna S.M Siva Rama Krishna

Oracle Database 11g: Security Release 2

McAfee Database Security. Dan Sarel, VP Database Security Products

Oracle Database Security Solutions

Securing Data in Oracle Database 12c

MySQL Security: Best Practices

Oracle Audit Vault Oracle FLEXCUBE Universal Banking Release [April] [2014]

Oracle Data Guard Fast Start Failover understood!

White Paper. Protecting Databases from Unauthorized Activities Using Imperva SecureSphere

Virtual Private Database Features in Oracle 10g.

Best Approaches to Database Auditing: Strengths and Weaknesses.

Secure Test Data Management with ORACLE Data Masking

Oracle Database Security Myths

Modern PL/SQL Code Checking and Dependency Analysis

Oracle Database 10g: Security Release 2

Oracle 1Z0-528 Exam Questions & Answers

THE FIRST UNIFIED DATABASE SECURITY SOLUTION. Product Overview Security. Auditing. Caching. Masking.

Oracle Database 11g: Security

Security Analysis. Spoofing Oracle Session Information

Achieving PCI COMPLIANCE with the 2020 Audit & Control Suite.

ManageEngine Desktop Central Training

USM IT Security Council Guide for Security Event Logging. Version 1.1

Achieving Security Compliancy and Database Transparency Using Database Activity Monitoring Systems

DATABASE AUDITING TOOLS AND STRATEGIES

Database Security. Oracle Database 12c - New Features and Planning Now

1 Copyright 2012, Oracle and/or its affiliates. All rights reserved. Public Information

Teleran PCI Customer Case Study

ITPS AG. Aplication overview. DIGITAL RESEARCH & DEVELOPMENT SQL Informational Management System. SQL Informational Management System 1

Oracle E-Business Suite APPS, SYSADMIN, and oracle Securing Generic Privileged Accounts. Stephen Kost Chief Technology Officer Integrigy Corporation

Oracle server: An Oracle server includes an Oracle Instance and an Oracle database.

Hayri Tarhan, Sr. Manager, Public Sector Security, Oracle Ron Carovano, Manager, Business Development, F5 Networks

Oracle Audit Vault and Database Firewall

ORACLE DATABASE 11G: COMPLETE

FREQUENTLY ASKED QUESTIONS

BASEL BERN BRUGG LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN

Oracle Database: SQL and PL/SQL Fundamentals NEW

Palo Open Source BI Suite

Complete Database Security. Thomas Kyte

Copyright 2013, Oracle and/or its affiliates. All rights reserved.

Oracle Database 12c: Performance Management and Tuning NEW

White Paper. What Auditors Want Database Auditing. 5 Key Questions Auditors Ask During a Database Compliance Audit

Oracle Health Sciences Network. 1 Introduction. 1.1 General Security Principles

Enforcive / Enterprise Security

Securing and Accelerating Databases In Minutes using GreenSQL

Oracle Total Recall with Oracle Database 11g Release 2

Copyright 2012, Oracle and/or its affiliates. All rights reserved.

SQL Server Auditing. By Minette Steynberg. Audit all SQL Server activities using ApexSQL Comply

Database Assessment. Vulnerability Assessment Course

Known issues appear in the end of the document.

Exporting IBM i Data to Syslog

Monitoring Audit Trails Using Enterprise Manager

Module 15: Monitoring

Making Database Security an IT Security Priority

APPLICATION COMPLIANCE AUDIT & ENFORCEMENT

Workflow Templates Library

DBMS Questions. 3.) For which two constraints are indexes created when the constraint is added?

Oracle 11g Database Administration

Data Security: Strategy and Tactics for Success

Security and Control Issues within Relational Databases

An Oracle White Paper June Oracle Database 11g: Cost-Effective Solutions for Security and Compliance

Oracle Database Security

A Walk Around the SQL Server 2012 Audit Feature. Timothy P. McAliley Microsoft Premier Field Engineer SQL Server

D12C-AIU Oracle Database 12c: Admin, Install and Upgrade Accelerated NEW

Oracle 11g DBA Training Course Content

Introduction to Database Log Management

Enforcive /Cross-Platform Audit

Oracle Database 12c: Administration Workshop NEW

Transcription:

Oracle Audit in a Nutshell - Database Audit but how? DOAG + SOUG Security-Lounge Stefan Oehrli Senior Consultant Discipline Manager Trivadis AG Basel 24. April 2012 BASEL BERN LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN

Trivadis facts & figures 11 Trivadis locations with more than 600 employees Hamburg Financially independent and sustainably profitable Key figures 2011 Dusseldorf ~200 employees Revenue CHF 104 / EUR 84 Mio. Frankfurt Services for more than 800 clients in over 1,900 projects Stuttgart 200 Service Level Agreements Freiburg Munich Vienna More than 4,000 training participants Basel Bern Zurich Lausanne ~380 employees ~30 employees Research and development budget: CHF 5.0 / EUR 4 Mio. 2

Why we are special Customer-specific solution competence and vendor independence Technology competence Solution and integration expertise offers substantiated techniques and skills as well as self-developed approaches guarantees repeatable quality and a safe execution offers more than 18 years of expertise in Oracle and Microsoft has its own Technology Center and strives for technological excellence has a wide and cross-sectorial customer basis and more than 1900 projects every year spanning a broad range of goals, complexity and corresponding framework conditions Combines technological expertise with an understanding of the specific business needs of the client Support for the entire IT project lifecycle has a modular portfolio of services for the entire IT project lifecycle provides the appropriate combination of solutions and services for every level of maturity 3

AGENDA 1. Overview 2. Oracle audit facilities and options 3. Audit Vault and third party tools 4. Housekeeping and archiving 5. Performance 6. Licensing 7. Audit concept and principles 8. One more thing

Overview Database audit may be needed for very different reasons. General Security Requirements Enable accountability for actions Notify an auditor of actions by an unauthorized user Investigate suspicious activity Detect problems with an authorization or access control implementation Compliance Requirements Sarbanes-Oxley Act (SOX) Payment Card Industry Data Security Standard (PCI DSS) Basel II Monitor Requirements Monitor and gather data about specific database activities E.g. Monitor changes during an update by an vendor

Overview Overview of audit facilities

AGENDA 1. Overview 2. Oracle audit facilities and options 3. Audit Vault and third party tools 4. Housekeeping and archiving 5. Performance 6. Licensing 7. Audit concept and principles 8. One more thing

Oracle audit facilities and options Oracle standard audit Configured by init.ora parameter and audit statements AUDIT_TRAIL defines the audit infrastructure resp where to store audit records Audit statement defines what to audit Since 11g default AUDIT_TRAIL is DB => audit is enabled by default! Set AUDIT_TRAIL OS and AUDIT_SYSLOG_LEVEL to send audit to SYSLOG Audit possibilities / statements By statement (CREATE,ALTER,DROP...) By privilege (SELECT ANY, BECOME USER...) Specific for a user (statement, privilege) On objects All statements Audit is used to record general database activity

Oracle audit facilities and options Trigger based auditing Triggered at database events Instance problems SERVERERROR Connect, disconnect of sessions LOGON, LOGOFF Start, stop of an instance STARTUP, SHUTDOWN Triggered at DML events Get before update values Who did what on a critical table/column Audit infrastructure must be developed individually Triggers and table to store audit data Reporting and housekeeping Reliability did I covered all?

Oracle audit facilities and options Fine grained auditing FGA - Policy-based auditing FGA policies are programmatically bound to the object (table, view) by using the DBMS_FGA package WHO has WHEN accessed table HR.EMPLOYEES and list names of all employees with a salary of more than 10000CHF Audit of select and DML statements (INSERT, UPDATE, DELETES) One policy can be used to audit multiple columns There are some limitations Audit records are create as well during a rollback Potential access of sensitive data will cause an audit record as well Updates on sensitive columns to no sensitive columns are not audited - Increase salary from 9000CHF to 11000CHF Flashback queries, export, rule based optimizers etc.

Oracle audit facilities and options SYS auditing Audit for DBA s Standard audit does not cover SYSDBA, SYSOPER Available since Oracle 9i Release 2 Set through init.ora parameter AUDIT_SYS_OPERATIONS Static parameter / instance restart required Audit records are always written to OS even if AUDIT_TRAIL=DB AUDIT_FILE_DEST or AUDIT_SYSLOG_LEVEL Certain database-related operations are always reported MOS 308066.1 Connections to the instance with administrator privileges SYSOPER/SYSDBA Database startup Database shutdown

Oracle audit facilities and options Application auditing Collect audit information within the application Who logged in Who accessed which object Before / after values High integration with application Must be part of the application architecture Audit only what s necessary Included reporting and housekeeping facilities Additional effort in application development Will not be easily added at a later time

AGENDA 1. Overview 2. Oracle audit facilities and options 3. Audit Vault and third party tools 4. Housekeeping and archiving 5. Performance 6. Licensing 7. Audit concept and principles 8. One more thing

Audit Vault and third party tools Beside classic audit there are alternatives and extensions available Oracle Audit Vault Oracle solution for central storage, management and reporting of audit data Organize as audit warehouse Data collection is partially based on standard and fine grained auditing Oracle Database Firewall Building a line of defense between data and access level Controlling and/or monitor how and who is accessing data McAfee database activity monitoring (DAM) Collection audit information from the shared memory rather than through database audit Allows other interesting functionalities

Audit Vault and third party tools Audit Vault architecture Audit Vault Agent Audit Vault Server zu überwachende monitored Datenbank database Source DBAUD Collector OSAUD Collector REDO Collector Data Collection Warehouse Reports Alerts Management Security MSSQL Collector Sybase Collector Reporting Alerts Management

Audit Vault and third party tools Database Firewall in HA Mode Database Firewall Remote / Local Monitor Management Server Source: Oracle Database Firewall Security Management Guide

Audit Vault and third party tools McAfee database activity monitoring not just a central database audit Kill sessions (thus indirect authorization) Quarantine of users (even DBAs) Virtual patching Monitor of compliance (pre configured SOX, PCI) 3 rd party mgmt tools Alerts Network Hedgehog JavaEE Server (software) Sensor Sensor Sensor Sensor Sensor DB DB DB DB DB Web-based Admin Console

AGENDA 1. Overview 2. Oracle audit facilities and options 3. Audit Vault and third party tools 4. Housekeeping and archiving 5. Performance 6. Licensing 7. Audit concept and principles 8. One more thing

Housekeeping and archiving Any audit facility will generate a bunch of raw audit data Plan the storage of audit data Separate table space for AUD$ and FGA_LOG$ (default SYSTEM) Keep the audit files on a dedicated file system or central server Choose a appropriate retention for the raw audit data Create regular reports to consolidate the data E.g.. keep raw data up to 3 months and consolidated reports for 1 year Consolidate audit data on a central system Oracle Audit Vault SYSLOG Server Custom solution

Housekeeping and archiving DBMS_AUDIT_MGMT a PL/SQL package to maintain any AUDIT_TRAIL s Part of 11g R2 or available as patch for 11g R1 and 10g R2 Initially required by Oracle Audit Vault Provides a set of procedures and functions to Initialize audit management infrastructure Move AUD$ and FGA_LOG$ tables to an other location Clean up any AUDIT_TRAIL and create purge jobs Set AUDIT_TRAIL properties Provides a set of new views DBA_AUDIT_MGMT_CLEANUP_JOBS DBA_AUDIT_MGMT_CLEAN_EVENTS DBA_AUDIT_MGMT_CONFIG_PARAMS DBA_AUDIT_MGMT_LAST_ARCH_TS

Housekeeping and archiving Initializing the audit management infrastructure exec DBMS_AUDIT_MGMT.INIT_CLEANUP(AUDIT_TRAIL_TYPE => DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_STD, DEFAULT_CLEANUP_INTERVAL => 12 / *hours*/); Move AUD$ to a new location BEGIN DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_LOCATION( AUDIT_TRAIL_TYPE => DBMS_AUDIT_MGMT.AUDIT_TRAIL_DB_STD, AUDIT_TRAIL_LOCATION_VALUE => 'AUDIT_DATA'); END; / Purge audit records before archive timestamp exec DBMS_AUDIT_MGMT.CLEAN_AUDIT_TRAIL( AUDIT_TRAIL_TYPE => DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_STD, USE_LAST_ARCH_TIMESTAMP => TRUE );

Housekeeping and archiving Setup a automatic clean job BEGIN DBMS_AUDIT_MGMT.CREATE_PURGE_JOB( AUDIT_TRAIL_TYPE => DBMS_AUDIT_MGMT.AUDIT_TRAIL_AUD_STD, AUDIT_TRAIL_PURGE_INTERVAL => 24 /* hours */, AUDIT_TRAIL_PURGE_NAME => 'Daily_Purge_Job', USE_LAST_ARCH_TIMESTAMP => TRUE); END; / Clean job as defined above select JOB_NAME,JOB_STATUS,AUDIT_TRAIL,JOB_FREQUENCY from DBA_AUDIT_MGMT_CLEANUP_JOBS; JOB_NAME JOB_STAT AUDIT_TRAIL JOB_FREQUENCY ---------------- -------- --------------------- ------------------------- DAILY_PURGE_JOB ENABLED STANDARD AUDIT TRAIL FREQ=HOURLY;INTERVAL=24

AGENDA 1. Overview 2. Oracle audit facilities and options 3. Audit Vault and third party tools 4. Housekeeping and archiving 5. Performance 6. Licensing 7. Audit concept and principles 8. One more thing

Performance Does audit impact Performance? It depends How and what will be audited, but it will generate additional redo information more CPU load more IO Only just as much as necessary but as much as possible. Audit can be done in different ways by access, whenever not successfully, etc. Only audit critical privileges, statements or objects Do not just audit any or all The different AUDIT_TRAIL settings/ possibilities OS does have the lowest performance impact XML, Extended and DB, Extended does have the most impact

Additional CPU Usage: Measured additional CPU after auditing was turned on For standard database auditing, a test was created to generate approximately 250 audit records per second Performance using the Oracle database standard audit command. Audit Trail Setting Additional Throughput Time Additional CPU Usage OS 1.39% 1.75% XML 1.70% 3.51% XML, Extended 3.70% 5.26% DB 4.57% 8.77% DB, Extended 14.09% 15.79% Table 3 Oracle Database 11.2.01 Standard Audit Trail with 50% CPU System Load Oracle Database Auditing Performance Guideline: http://www.oracle.com/technetwork/database/audit-vault/learnmore/ twp-security-auditperformance-166655.pdf For FGA, a test was created to generate approximately 200 audit records per second using the DBMS_FGA package. The condition of the audit policy creates an audit record when an UPDATE or SELECT occurs on the TPCC.ORDL table and the client_identifier value is equal to NULL. dbms_fga.add_policy ( object_schema => 'TPCC',

Performance!!!!!! 11g!standard!auditing!!! AUDIT!TRAIL! none! OS! DB! XML! CPU!Time! 78%! 76%! 75%! 73%! db!file!sequential!read! 17%! 19%! 20%! 21%!!!!!!!!!!!!!! SwingBench!Transactions/s! 57,1! 56,83! 56,65! 56,82! Transactions/s! 68,00! 67,20! 68,80! 68,40! Redo!size/transaction!(bytes)! 1408! 1493! 1481! 1473! BlockChanges/transaction! 10! 10,3! 10,2! 10,3! LogicalReads/transaction! 344! 357,3! 345,6! 337,1! CPU!Usage! 67,10%! 70,10%! 68,20%! 65,20%! Wait! times! AWR!results!!! Overhead!!!!!!!!!! time/transaction!(swingbench)! 0,00%! +0,47%! +0,79%! +0,49%! time/transaction!(awr)! 0,00%! 1,18%! T1,18%! T0,59%! redo!generated/transaction! 0%! 6%! 5%! 5%! block!changes/transaction! 0%! 3%! 2%! 3%! Trivadis article on Audit Performance http://www.trivadis.com/uploads/tx_cabagdownloadarea/ TTC_Oracle_Auditing_Report_AMI_June2011-final.pdf

AGENDA 1. Overview 2. Oracle audit facilities and options 3. Audit Vault and third party tools 4. Housekeeping and archiving 5. Performance 6. Licensing 7. Audit concept and principles 8. One more thing

Licensing Overview of audit facilities / options and there licenses Text Oracle SE(O) Oracle EE Licenses / Comment Oracle standard audit Trigger based auditing Fine grained auditing FGA SYS auditing DBMS_AUDIT_MGMT 11g R2 11g R2 Audit Vault Application auditing Database Activity Monitoring Part of all supported oracle releases Trigger have to be developed, tested, maintained EE License required SYSDBA connects are audited by default For earlier release AV Agent licenses is required (see MOS Note 731908.1) AV Server / Agent licenses is required Audit facilities have to be implemented within application Third Party Product

AGENDA 1. Overview 2. Oracle audit facilities and options 3. Audit Vault and third party tools 4. Housekeeping and archiving 5. Performance 6. Licensing 7. Audit concept and principles 8. One more thing

Audit concept and principles Since Oracle 11g standard audit is enabled by default Good starting point but needs to be extended depending on security level Audit critical statements and privileges Audit critical objects (tables, views, procedures) Define reporting of audit data before enabling auditing Define retention policies for raw and aggregated audit data Eg keep raw data up to 6 months and reports 2 years Set AUDIT_TRAIL to DB,EXTENDED Database is easier to query than OS files Ensure that all information on SQL statements is written to the AUDIT_TRAIL Store audit data in a separate table space if DB or DB, EXTENDED or on a dedicated location if OS or XML is used

Audit concept and principles Keep audit data in a central database Offline storage for long term archiving Define three different security levels INTERNAL, CONFIDENTIAL and SECRET Each level should have it s own audit concept INTERNAL => extended standard audit, 6 month retention CONFIDENTIAL => extended standard audit plus critical tables and privileges, retention 2 years SECRET => central audit solution, retention 7 years There are several My Oracle Support notes about auditing use Master Note For Oracle Database Auditing 1299033.1 to start

AGENDA 1. Overview 2. Oracle audit facilities and options 3. Audit Vault and third party tools 4. Housekeeping and archiving 5. Performance 6. Licensing 7. Audit concept and principles 8. One more thing

One more thing Audit data could be manipulated on different levels Audit data could be manipulated Change, remove audit files on the file system Update audit records in AUD$ or FGA_LOG$ Prevent tampering Limit access to audit files (*.aud, *.xml) Enable audit of the core audit tables AUD$, FGA_LOG$ Keep your software / database up to date to avoid security vulnerabilities Install latest patch set Regularly install Oracle CPU (critical patch updates)

One more thing Using oradebug to temporarily disable SYS audit or standard auditing SQL> oradebug setmypid Statement processed. SQL> oradebug dumpvar sga kzaflg ub2 kzaflg_ [0600340E0, 0600340E4) = 00000001 SQL> oradebug setvar sga kzaflg_ 0 BEFORE: [0600340E0, 0600340E4) = 00000001 AFTER: [0600340E0, 0600340E4) = 00000000 Auditing is disabled instance wide until next DB restart or manual reset SQL> oradebug setvar sga kzaflg_ 1 BEFORE: [0600340E0, 0600340E4) = 00000000 AFTER: [0600340E0, 0600340E4) = 00000001 Limit access on OS and use personalized user accounts

Conclusion: Oracle is providing audit facilities on different levels It is important to know what should be audited This is not always easy... But we are happy to assist you J

? Questions?

THANK YOU. Trivadis AG Stefan Oehrli Europa-Strasse 5 CH-8152 Glattbrugg Tel. +41 44 808 70 20 stefan.oehrli@trivadis.com www.trivadis.com www.oradba.ch BASEL BERN LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN