Auditoria de Oracle Bck

9
AUDITORIA DE ORACLE Para verificar la auditoria de Oracle primero se verifica el parámetro que tiene en la Base de datos qué valor tiene. SELECT * FROM V$PARAMETER WHERE NAME like '%audit%' NAME TYPE VALUE DISPLAY_VALUE audit_sys_ope rations 1 TRUE TRUE audit_file_de st 2 /u01/app/oracle/admin/ core/adump /u01/app/oracle/admin/ core/adump audit_trail 2 NONE NONE AUDIT_SYS_OPERATIONS Habilita la auditoria de las operaciones ejecutadas por los usuarios con privilegio SYSDBA o privilegios SYSOPER, incluido el usuario SYS. Todos los registros de auditoría se escriben en el registro de auditoría del sistema operativo. AUDIT_FILE_DEST Especifica el directorio de sistema operativo utilizado para guardar los archivos de auditoría OS, XML y XML, EXTENDED. AUDIT_TRAIL Determina la forma de auditoría. (NONE, OS, DB, EXTENDED, XML, EXTENDED) NONE o FALSE Auditoria Deshabilitada. DB o TRUE Auditoria Habilitada, todos los registros de la Auditoria se guardan en (SYS.AUD$).

Transcript of Auditoria de Oracle Bck

Page 1: Auditoria de Oracle Bck

AUDITORIA DE ORACLE

Para verificar la auditoria de Oracle primero se verifica el parámetro que tiene en la Base de datos qué valor

tiene.

SELECT * FROM V$PARAMETER WHERE NAME like '%audit%'

NAME TYPE VALUE DISPLAY_VALUE

audit_sys_operatio

ns 1 TRUE TRUE

audit_file_dest 2

/u01/app/oracle/admin/core/

adump

/u01/app/oracle/admin/core/

adump

audit_trail 2 NONE NONE

AUDIT_SYS_OPERATIONS Habilita la auditoria de las operaciones ejecutadas por los usuarios con privilegio

SYSDBA o privilegios SYSOPER, incluido el usuario SYS. Todos los registros de

auditoría se escriben en el registro de auditoría del sistema operativo.

AUDIT_FILE_DEST Especifica el directorio de sistema operativo utilizado para guardar los archivos

de auditoría OS, XML y XML, EXTENDED.

AUDIT_TRAIL Determina la forma de auditoría. (NONE, OS, DB, EXTENDED, XML, EXTENDED)

NONE o FALSE Auditoria Deshabilitada.

DB o TRUE Auditoria Habilitada, todos los registros de la Auditoria se guardan en

(SYS.AUD$).

DB, EXTENDED Como DB, pero las columnas SQL_BIND y SQL_TEXT también son pobladas.

XML Auditoria Habilitada, todos los registros guardados en formato XML en archivos

de OS.

XML, EXTENDED Como XML, pero las columnas SQL_BIND y SQL_TEXT también son pobladas.

OS Auditoria Habilitada, todos los registros los dirige a la auditoría del OS.

Page 2: Auditoria de Oracle Bck

CONFIGURACION PARA AUDITORIA ESTANDAR

Conectare a la base de datos como SYSDBA

[oracle@db]$sqlplus / as sysdba

SQL> ALTER SYSTEM SET AUDIT_TRAIL=DB_EXTENDED SCOPE=SPFILE;

Reiniciamos la base de datos ( shutdown immediate, startup ) y comprobamos que la auditoría se ha activado.

SELECT * FROM V$PARAMETER WHERE NAME = 'audit_trail'

NAME TYPE VALUE DISPLAY_VALUE

audit_trail 2 DB_EXTENDED DB

OPCIONES DE AUDITORIA

NIVEL EFECTO

Statement(Sentencias)

Auditoría de sentencias SQL o grupos de sentencias que afectan a un determinado tipo de objeto de base de datos. Por ejemplo, “AUDIT TABLE NUCLEO.MOCALLRECORD “audita las sentencias CREATE TABLE, TRUNCATE TABLE, COMENTARIO SOBRE LA MESA, y DELETE [FROM].

Privilege(Privilegios)

Auditoria de sentencias SQL que son autorizadas por un especifico Privilegio de Sistema. Por ejemplo, “AUDIT CREATE ANY TRIGGER” audita las sentencias emitidas que utilizan el Privilegio de Sistema CREATE ANY TRIGGER.

Object(Objetos)

Audita sentencias específicas en objetos específicos, tal como ALTER TABLE MOCALLRECORD sobre la tabla NUCLEO.MOCALLRECORD.

Network(Red)

Auditorías de errores inesperados en el protocolo de red o errores internos en la capa de red.

Al configurar las opciones de auditoría, también puede especificar las siguientes condiciones para la auditoría:

NIVEL EFECTO

BY SESSION(Sesión)

La Base de datos Oracle inserta un registro único para todas las sentencias SQL emitidos en el mismo período de sesiones.

BY ACCESS(Acceso)

La Base de datos Oracle inserta un registro único por cada acceso.

WHENEVER SUCCESSFUL(Exitosa)

La Base de datos Oracle inserta sólo para las sentencias que tienen éxito.

WHENEVER NOT SUCCESSFUL(No exitosa)

La Base de datos Oracle inserta sólo para las sentencias que fallan o dar lugar

Page 3: Auditoria de Oracle Bck

NIVEL EFECTO

a errores.

EJEMPLOS

AUDIT SESSION; Audita todas las conexiones exitosas y no exitosas y desconexiones de la base de datos, independientemente del usuario, por sesión (el valor por defecto y sólo para esta opción)

AUDIT SESSION BY DETALLE, CONSULTA;Audita todas las conexiones exitosas y no exitosas y desconexiones de la base de datos, de los usuarios DETALLE y CONSULTA, por sesión.

AUDIT DELETE ANY TABLE;Audita todos los usos exitosos y no exitosos del privilegio del sistema DELETE ANY TABLE.

AUDIT SELECT TABLE, INSERT TABLE, DELETE TABLE, EXECUTE PROCEDURE BY ACCESS WHENEVER NOT SUCCESSFUL

Para auditar todos los SELECT, INSERT, DELETE a todas las tablas y uso de privilegio EXECUTE PROCEDURE que no fueron exitosos, por todos los usuarios de Bases de Datos por sesión.

AUDIT DELETE ON NUCLEO.FWCALLRECORD;Audita todas las sentencias DELETE sobre la tabla NUCLOE.FWCALLRECORD exitosas y no exitosas por sesión (valor por defecto).

AUDIT SELECT, INSERT, DELETE ON NUCLEO2G_LPZ.TRCALLRECORD BY ACCESS WHENEVER SUCCESSFUL;

Audita todas las sentencias SELECT, INSERT, DELETE sobre la tabla NUCLEO2G_LPZ.TRCALLRECORD que fueron exitosas por sesión.

AUDIT SELECT ON DEFAULT WHENEVER NOT SUCCESSFUL;Audita todas las sentencias SELECT a todas las tablas que no fueron exitosas por sesión.

VERIFICAR LA AUDITORIA QUE EXISTE

Auditoria de Privilegios de Sistema

SELECT * FROM DBA_PRIV_AUDIT_OPTS;USER_NAME PROXY_NAME PRIVILEGE SUCCESS FAILURE CREATE EXTERNAL JOB BY ACCESS BY ACCESS CREATE ANY JOB BY ACCESS BY ACCESS

Page 4: Auditoria de Oracle Bck

GRANT ANY OBJECT PRIVILEGE BY ACCESS BY ACCESS EXEMPT ACCESS POLICY BY ACCESS BY ACCESS CREATE ANY LIBRARY BY ACCESS BY ACCESS GRANT ANY PRIVILEGE BY ACCESS BY ACCESS DROP PROFILE BY ACCESS BY ACCESS

Page 5: Auditoria de Oracle Bck

Auditoria de Objetos

SELECT * FROM DBA_OBJ_AUDIT_OPTS;

OWNER OBJECT_NAME OBJECT_TYPE ALTAlter

AUDAudit

COMComment

DELDelete

GRAGrant

INDIndex

INSInser

t

LOCLock

RENRename

SELSelect

UPDUpdate

REFObsoleto

EXEExecute

CRECreate

READear

WRI

Write

FBKFlashBack

NUCLEO MMSBORECORD TABLE -/- -/- -/- -/- -/- -/- -/- -/- -/- S/S -/- -/- -/- -/- -/- -/- -/-NUCLEO SMSBORECORD TABLE -/- -/- -/- -/- -/- -/- -/- -/- -/- S/S -/- -/- -/- -/- -/- -/- -/-NUCLEO MOCALLRECORD TABLE -/- -/- -/- -/- -/- -/- -/- -/- -/- S/S -/- -/- -/- -/- -/- -/- -/-SVA GPRSRECORD TABLE -/- -/- -/- -/- -/- -/- -/- -/- -/- S/S -/- -/- -/- -/- -/- -/- -/-NUCLEO2G_CBBA MOCALLRECORD TABLE -/- -/- -/- -/- -/- -/- -/- -/- -/- S/S -/- -/- -/- -/- -/- -/- -/-NUCLEO2G_LPZ FWCALLRECORD TABLE -/- -/- -/- -/- -/- -/- -/- -/- -/- -/S -/- -/- -/- -/- -/- -/- -/-NUCLEO2G_LPZ TRCALLRECORD TABLE -/- -/- -/- -/- -/- -/- -/- -/- -/- A/- -/- -/- -/- -/- -/- -/- -/-NUCLEO2G_LPZ MOCALLRECORD TABLE -/- -/- -/- -/- -/- -/- -/- -/- -/- S/S -/- -/- -/- -/- -/- -/- -/-NUCLEO2G_SC2 MOCALLRECORD TABLE -/- -/- -/- -/- -/- -/- -/- -/- -/- S/S -/- -/- -/- -/- -/- -/- -/-NUCLEO CREATE_PARTITION PROCEDURE -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- S/S -/- -/- -/- -/-

-/- No existe Auditoria.

S/S Auditoria exitosa y no exitosa por sesión.

A/- Auditoria exitosa por Acceso.

-/S Auditoria No exitosa por Sesión.

Page 6: Auditoria de Oracle Bck

VERIFICAR LOG EN LAS TABLAS

Privilegios de sistema

Ejecución de la sentencia desde mi PC con el usuario SYSTEM.

CREATE USER USR_PRUEBA IDENTIFIED BY USRP_12345;

Verificando en la tabla, solo se muestra información relevante, la tabla tiene más columnas.

SELECT * FROM DBA_AUDIT_TRAIL WHERE ACTION_NAME = 'CREATE USER'USERNAME USERHOST OS_USER TIMESTAMP OBJ_NAME ACTION_NAME PRIV_USED

SYSTEM TIGOBO\ITJOSED951 duranjl 02/02/2009 05:05:56 NUCLEO CREATE USER CREATE USERSYSTEM TIGOBO\ITJOSED951 duranjl 02/03/2009 11:14:50 SVA CREATE USER CREATE USER

SYSTEM TIGOBO\ITJOSED951 duranjl 02/03/2009 13:44:03 SISTEMAS CREATE USER CREATE USERSYSTEM TIGOBO\ITJOSED951 duranjl 02/04/2009 05:57:22 NUCLEO3G CREATE USER CREATE USER

SYSTEM TIGOBO\ITJOSED951 duranjl 02/04/2009 14:12:31 NUCLEO2G_CBBA CREATE USER CREATE USERSYSTEM TIGOBO\ITJOSED951 duranjl 03/09/2009 10:36:06 AUDITORIA CREATE USER CREATE USER

SYSTEM TIGOBO\ITJOSED951 duranjl 03/27/2009 12:56:17 SISPABLB CREATE USER CREATE USERSYSTEM TIGOBO\SCZPARPC1111IT riveroh 12/29/2010 09:28:36 DMCUENTAS CREATE USER CREATE USER

SYSTEM TIGOBO\SCZPARPC1111IT riveroh 01/06/2011 16:39:31 SECURITY CREATE USER CREATE USERSYSTEM TIGOBO\SCZPARPC1111IT riveroh 02/10/2011 11:02:09 USR_PRUEBA CREATE USER CREATE USER

Privilegios de Objeto

Ejecución de la sentencia desde mi PC con el usuario SYSTEM.

SELECT * FROM NUCLEO2G_LPZ.MOCALLRECORDVerificando en la tabla, solo se muestra información relevante, la tabla tiene más columnas.

SELECT * FROM DBA_AUDIT_TRAIL WHERE ACTION_NAME = ‘SESSION REC’OS_USERNAME USERNAME USERHOST TIMESTAMP OWNER OBJ_NAME ACTION_NAME SES_ACTIONS PRIV_USED

Administrator SISTEMAS mpdb10/02/2011

12:01 NUCLEOMOCALLRECORD SESSION REC ---------S------

dataware DATAWARE coredb10/02/2011

12:01 NUCLEO2G_SC2MOCALLRECORD SESSION REC ---------S------

SELECT ANY TABLE

riveroh SYSTEMTIGOBO\SCZPARPC1111IT

10/02/2011 11:45 NUCLEO2G_LPZ

MOCALLRECORD SESSION REC ---------S------

Administrator SISTEMAS mpdb10/02/2011

11:03 NUCLEO2G_CBBAMOCALLRECORD SESSION REC ---------S------

Administrator SISTEMAS mpdb10/02/2011

11:03 NUCLEO2G_CBBAMOCALLRECORD SESSION REC ---------S------

Administrator SISTEMAS mpdb10/02/2011

11:03 NUCLEOMOCALLRECORD SESSION REC ---------S------

Administrator DATAWARE sigma10/02/2011

10:46 NUCLEO MMSBORECORD SESSION REC ---------S------

alanocat DATAWARE sigma10/02/2011

10:12 SVA GPRSRECORD SESSION REC ---------S------SELECT ANY TABLE

Administrator DATAWARE sigma10/02/2011

10:06 NUCLEO2G_LPZMOCALLRECORD SESSION REC ---------S------

Administrator DATAWARE sigma10/02/2011

10:05 NUCLEO2G_CBBAMOCALLRECORD SESSION REC ---------S------

Administrator DATAWARE sigma10/02/2011

10:03 SVA GPRSRECORD SESSION REC ---------S------SELECT ANY TABLE

En ambos casos se observa que está registrado ambas sentencias ejecutadas.