La auditoría de Oracle es un tema amplio, complejo y confuso, con muchas opciones tecnológicas. Nuestro objetivo es desmitificarlas y ayudarle a tomar decisiones tecnológicas con conocimiento de causa, guiándole hacia una solución que funcione para usted. Desde la captura de datos hasta la obtención de valor a partir de ellos y desde el bricolaje hasta las soluciones de gama alta, vamos a explorar la auditoría de Oracle.

Captura
La captura es la recopilación de datos en bruto. La auditoría siempre empieza con la recopilación de información. Después hay que procesar los datos, almacenarlos, elaborar informes, etc. Estos aspectos se tratarán más adelante, en la sección Obtener valor.
Aunque obtener valor de la información es un reto, conseguir la información para empezar es aún más difícil, con implicaciones de gran alcance sobre lo que está disponible para procesar.
Desafíos
¿Por qué es complicado recopilar datos de auditoría? Parece que debería ser fácil de hacer.
El problema subyacente es que Oracle ejecuta enormes cantidades de actividad a velocidades increíbles. Cualquier interferencia con esta máquina altamente ajustada puede paralizar el rendimiento y ralentizar la base de datos hasta convertirla en un rastreo. Por tanto, el impacto en el rendimiento es el mayor reto para capturar la actividad.
Un segundo obstáculo es que normalmente debemos auditar a los DBA. Sin embargo, estas cuentas privilegiadas controlan las tecnologías de captura integradas en la base de datos, lo que las hace ineficaces para supervisar la actividad privilegiada.
La cuenta SYS en Oracle es especialmente problemática, ya que muchas instalaciones de auditoría no capturan su actividad. Esto se debe a que SYS es una cuenta integrada en la base de datos, y también se utiliza para la actividad interna de la base de datos.
Otra dificultad es la actividad interna de la base de datos. Oracle tiene muchas capacidades que ejecutan actividad internamente y no son visibles desde el exterior, como bloques anónimos PL/SQL a procedimientos, disparadores, programas Java internos y trabajos programados. Algunas tecnologías de captura (específicamente la inspección de paquetes) sólo pueden ver la actividad fuera de la base de datos y no verán las SQL, tablas y columnas de la actividad interna.
Discutiremos estas limitaciones a medida que revisemos cada tecnología.

¿Qué datos podrías recopilar?
Cuando se audita una base de datos Oracle, existen diferentes tipos de información que puede necesitar recolectar.
El requerimiento más básico es capturar Logons y Logons Fallidos. Esto significa monitorizar las conexiones a la base de datos (o sesiones) y dónde se originan. Esto incluye datos como la hora de conexión, la hora de desconexión, el nombre de usuario, el programa, la dirección IP, etc.
Otro requisito común son las SQL. Los SQL son los comandos ejecutados en las sesiones. Se dividen en tres categorías: DDL, DML y Consultas (select). Este desglose es importante porque las consultas no son fáciles de capturar y limitan las tecnologías de captura que podemos utilizar. La captura de consultas es fundamental para detectar el robo de datos, la captura de DML sirve para identificar cambios no autorizados y los DDL están relacionados con el control de cambios. Si el robo de datos es un riesgo, hay que capturar consultas, y esa tecnología de captura permitirá capturar cualquier SQL.
La captura selectiva es una forma de reducir la sobrecarga al no capturar todos los SQL. También simplifica el procesamiento, ya que hay muchos menos datos. No es ideal porque se perderá mucha información, pero es la única forma con capacidades de auditoría de Oracle incorporadas. Incluso si captura todo, debe considerar qué hará con los datos capturados. La captura selectiva puede ser una buena opción si más tarde descarta la mayoría de los datos capturados y sólo graba unos pocos SQLs (ver más en la sección de obtención de valor más abajo).
La captura de valores antes y después no es un requisito frecuente, excepto en algunos sectores en los que es necesario para el cumplimiento de la normativa (especialmente la banca y las finanzas). Antes y después de los valores significa auditar los valores que cambian en la base de datos. Si alguien, por ejemplo, actualiza los salarios utilizando salario=salario*2, este tipo de captura registrará todos los salarios originales y los salarios posteriores al cambio. En este ejemplo, no hay valores en el SQL, lo que explica por qué la captura SQL, incluso con variables bind, no satisface esta necesidad.
Otra función que no es de auditoría pero que está relacionada con la tecnología de captura es el bloqueo. El bloqueo permite impedir la ejecución de determinadas sentencias SQL. Se trata de una potente capacidad preventiva que, en algunas soluciones, está integrada en el motor de captura. Por último, existe una forma simplificada de auditoría que aprovecha las instantáneas de metadatos. Por ejemplo, se pueden identificar los cambios entre la lista de usuarios de ayer y la de hoy. Es un tipo de supervisión del control de cambios y puede aplicarse a la configuración, los usuarios, los permisos y los objetos (por ejemplo, tablas, vistas, etc.).
Tecnologías Disponibles
Esta tabla resumen muestra qué tecnología de auditoría es relevante para qué captura de datos. Como puede ver, casi nada es perfecto. Estas tecnologías también tienen muchas limitaciones y desventajas, y varias están relacionadas. Así que lea los detalles a continuación.
Inicios de Sesión | SQLs | Antes y Después de Valores | Metadata Snapshot | Bloqueo | |||
DDL | DML | Consultas | |||||
Hágalo usted mismo (DIY) | ✓ | ||||||
C2 Modo de auditoría | ✓ | ✓ | ✓ | ✓ | |||
Auditoría SQL Server | ✓ | ✓ | ✓ | ✓ | |||
Perfilador/Rastreo | ✓ | ✓ | ✓ | ✓ | |||
Eventos Ampliados | ✓ | ✓ | ✓ | ✓ | |||
Triggers | ✓ | ✓ | |||||
Registros de logs | ✓ | ||||||
Inspección de paquetes | ✓ | ✓ | ✓ | ✓ | ✓ | ||
Full Capture | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Hágalo Usted Mismo (DIY)
El «hágalo usted mismo» (DIY) es una solución sencilla que puede crear internamente sin tecnología ni procesamiento complejos. Por ejemplo, puede tomar una instantánea diaria de los usuarios de la base de datos e identificar los cambios del día anterior. No es una seguridad sólida, pero ayudará a validar el control de cambios. Aparte de sus capacidades limitadas, el principal inconveniente de éste y de cualquier proyecto DIY es el tiempo y el esfuerzo que su equipo de DBA tendrá que invertir en la implementación, el mantenimiento y el funcionamiento.
Auditoría Tradicional
La Auditoría Tradicional (utilizando la sentencia AUDIT) ofrece una auditoría selectiva de Oracle. Puede elegir auditar tipos específicos de sentencias, acceso a tablas particulares, o actividad de usuarios específicos (y algunas combinaciones de estos). La opción de configuración audit_trail controla cómo se registran los datos con opciones de os, db, xml y extended añadidas a las dos últimas.
Este es el método principal para la auditoría nativa de Oracle. Oracle lo está eliminando gradualmente y reemplazando con la Auditoría Unificada más completa. Las principales limitaciones de la auditoría tradicional son:
- Los registros de auditoría contienen principalmente la hora, la cuenta de la base de datos, la cuenta del sistema operativo, la máquina y el nombre de la tabla. Si se añade la opción ampliada, también se registrará el SQL. Sin embargo, no es la solución adecuada si necesita información adicional, como la dirección IP.
- No captura la actividad del SYS. SYS puede incluso purgar los datos de auditoría sin ningún mensaje. Se trata de una limitación paralizante que requiere otra función de Oracle (SYS auditing) para compensarla. También es la principal ventaja de la nueva Auditoría Unificada.
- Su capacidad para controlar a los DBA es limitada, ya que son ellos quienes la administran. El registro contiene acciones que manipulan la auditoría y purgan datos, pero éstas pueden excusarse fácilmente.
- El impacto en el rendimiento es el mayor problema, con un impacto base de más del 1.000% para SQLs cortos (audit_trail=db). Cuando también se registra el texto SQL, el impacto es del 2.000% (audit_trail=db, extended). Cuando se escribe en el sistema operativo, la sobrecarga es superior al 800% (audit_trail=os). La opción XML es irrelevante, con una sobrecarga de más del 80.000%.
Incluso activar audit_trail=db en lugar de audit_trail=none supone una sobrecarga del 20%. Y eso sin auditar nada. La razón es que una vez que el sistema de auditoría está activado, Oracle evalúa las reglas de auditoría, y ese proceso de evaluación crea una sobrecarga incluso cuando no hay reglas de auditoría.
- Sólo se puede registrar un volumen limitado de actividad. Las sobrecargas superiores al 5% se consideran inaceptables en entornos Oracle, por no mencionar la huella de disco resultante. La elevada sobrecarga de la auditoría tradicional significa que sólo es práctica si se limita a un pequeño número de SQL.
- La complejidad de la administración, como la creación de reglas de auditoría y la gestión de los datos de auditoría, también es significativa. Esto se traduce en el tiempo de DBA necesario para gestionar la auditoría nativa de Oracle.
- Otras utilidades de Oracle, como RMAN, SQL Loader y Data Pump, también pueden acceder a los datos. […]

Auditoría de grano fino (FGA)
La auditoría de grano fino (FGA) es una función de auditoría de Oracle que pretende mejorar la funcionalidad de la auditoría tradicional siendo aún más selectiva. FGA puede limitar la auditoría al acceso a columnas específicas o sólo auditar el acceso a filas concretas (como departamento=5 o salario>1000). FGA pretende resolver los problemas de rendimiento cuando se auditan tablas con un alto volumen de actividad.
Sin embargo, limitar las filas y columnas es una solución pobre, y FGA se utiliza raramente. Los clientes que se encuentran con este tipo de problemas suelen optar por otros métodos de auditoría que no requieren ser tan selectivos. Por ejemplo, con Core Audit se pueden auditar 1.000 millones de SQL con menos del 3% de sobrecarga y utilizando 32 GB de espacio en disco.
Auditoría SYS
La auditoría SYS se refiere al parámetro de configuración de Oracle AUDIT_SYS_OPERATIONS. Cuando se establece en true, registra toda la actividad del usuario SYS. Es vital porque SYS es una cuenta de base de datos incorporada a la que los DBAs siempre pueden acceder y no puede ser auditada por la auditoría tradicional. Los usuarios SYS también pueden borrar información de los datos de auditoría sin dejar rastro. SYS es un usuario complicado de auditar porque la base de datos lo utiliza internamente.
La auditoría SYS tiene importantes limitaciones:
- No registra la actividad interna de la base de datos, sólo la externa. Esto significa que no es difícil de eludir.
- No puede ser selectiva y registra automáticamente toda la actividad del SYS.
- Si los DBA pueden acceder al sistema operativo, pueden borrar o manipular los datos de auditoría.
- Tiene una sobrecarga superior al 1.200%. Cuando se mide con ida y vuelta de red (que es más apropiado para transacciones externas), la sobrecarga es superior al 90%.
- Los datos de auditoría suelen contener mucho ruido procedente de diversas actividades y operaciones internas de la base de datos. Es casi imposible localizar información significativa en su interior si no se sabe lo que se está buscando.
Auditoría Unificada
La Auditoría Unificada (usando una POLÍTICA DE AUDITORÍA) es el nuevo mecanismo de auditoría incorporado en Oracle que combina características de la auditoría tradicional, FGA y SYS. Tiene mejor cobertura, pero la sobrecarga es mucho peor.
Por el lado bueno, la auditoría SYS es mucho más completa y similar a la de otros usuarios. Se registra la actividad interna del SYS y sólo lo que requiere la política (por tanto, menos ruido). Unified Auditing también puede registrar la actividad de otras herramientas de Oracle. Todo esto se combina para una cobertura mucho mejor.
Pero las limitaciones son:
- Los registros de auditoría contienen principalmente la hora, la cuenta de la base de datos, la cuenta del sistema operativo, la máquina, la aplicación, el nombre de la tabla y el texto SQL. No es la solución adecuada si se necesita información adicional, como la dirección IP.
- Los DBA lo administran, por lo que no puede controlarlos eficazmente. Aunque hay un registro de acciones que detienen la auditoría y purgan los datos, éstas pueden excusarse fácilmente.
- El impacto en el rendimiento es el mayor problema, con una sobrecarga de alrededor del 4.000% para SQLs cortos.
- Sólo se puede auditar un volumen limitado de actividad. Cualquier sobrecarga superior al 5% es inaceptable en entornos Oracle, por no mencionar la huella de disco aún mayor. La Auditoría Unificada no es práctica a menos que se limite a un pequeño número de SQLs.
- La complejidad de la administración, como la creación de las reglas de auditoría y la gestión de los datos de auditoría, es significativa. Eso significa tiempo de DBA que se requiere para gestionar Oracle Unified Auditing.
La conclusión es que la Auditoría Unificada puede ser una buena opción para una captura de bajo volumen con el fin de cumplir requisitos de conformidad menores (véase más adelante). Capturar la actividad en mesas activas o pretender utilizar los datos para análisis, como perfiles de comportamiento y anomalías, no es realista.

Triggers
Los triggers o disparadores son pequeños fragmentos de código que la base de datos puede ejecutar en respuesta a una actividad.
Existen tres tipos de disparadores. Los disparadores de inicio de sesión se activan cuando alguien inicia sesión. Puede utilizarlos para auditar la actividad de inicio de sesión. Aunque es posible, es un enfoque de auditoría poco común para las sesiones. También hay disparadores DDL y DML. Sin embargo, el texto SQL sólo es visible en un número limitado de casos.
Sin embargo, los disparadores DML pueden auditar los valores antes y después. Es un método realista para auditarlos.
El problema con los triggers es que se ejecutan como parte del SQL y aumentan el tiempo que tarda en finalizar. Dado que los desencadenadores de auditoría suelen registrar información en otras tablas, tienden a causar una sobrecarga elevada al añadir otro DML al DML actual. En otras palabras, los disparadores DML en tablas altamente transaccionales causan un impacto significativo en el rendimiento.
Más allá de la sobrecarga, el inconveniente de los triggers es que están controlados por los DBA y otras personas con los permisos adecuados y pueden ser desactivados por cualquiera que desee saltárselos.
También es importante señalar que no existen disparadores para las consultas. Los triggers son irrelevantes cuando se trata del riesgo de robo de datos.
Registros de Logs
Logminer o Registro de Logs es una función de Oracle que puede extraer información de los redo logs de Oracle. Los redo logs forman parte del funcionamiento de Oracle. Contienen todos los cambios en la base de datos y se utilizan para la recuperación de fallos. Independientemente de su función principal en la recuperación de fallos, puede procesar los redo logs para extraer todos los valores anteriores y posteriores. Esto es útil para seguridad, replicación y otros propósitos.
El uso de los redo logs es beneficioso porque el procesamiento se realiza una vez finalizada la actividad de la base de datos. Aunque el procesamiento consume recursos de la máquina, ocurre en paralelo y no ralentiza las transacciones de la base de datos.
Aunque siempre puede procesar los redo logs con Logminer, puede extraer información de mejor calidad si solicita a Oracle que capture información adicional. Puede hacerlo con un SQL como «ALTER DATABASE ADD SUPPLEMENTAL LOG DATA». Tenga en cuenta que puede registrar distintos tipos de datos de registro suplementarios.
Los redo logs de Oracle también tienen un ciclo en el que los redo logs anteriores se copian a una ubicación separada y se denominan Archive logs. Las bases de datos de producción siempre tienen registros de archivo configurados, pero el tiempo de retención depende del entorno. Sin embargo, Logminer puede extraer tanto los registros de archivo como los registros de rehacer en línea. Sólo necesita tener los registros en algún lugar para minarlos.
Puede acceder al Registro de Logs con la ayuda de un DBA o utilizando una solución como Core Audit.
Inspección de Paquetes
La tecnología de Inspección de Paquetes o Packet Inspection descifra la comunicación que entra y sale de la base de datos para identificar los SQL. Hay dos implementaciones: como sniffer de red fuera de la máquina o con un agente del kernel dentro de ella.
Como sniffer de red, esta tecnología no afecta al rendimiento de la base de datos, pero no puede ver la comunicación local. Esto suele ser inaceptable. La mayoría de las implantaciones utilizan el agente local. Esto permite a la solución capturar la comunicación local, pero genera una elevada sobrecarga de red.
Ambos métodos de despliegue plantean problemas con la codificación de la red, pero una de las limitaciones más importantes es la falta de visibilidad dentro de la base de datos. Esto significa que se puede intentar deducir lo que ocurre dentro de la base de datos basándose en el SQL, pero no siempre es posible. Esto se debe a que las bases de datos pueden ejecutar procedimientos, disparadores, programas Java y bloques anónimos. Todos ellos son fragmentos de código que pueden generar SQL dentro de la base de datos. SQLs que serían invisibles para una solución basada en la inspección de paquetes.
Algunas soluciones basadas en la inspección de paquetes también pueden bloquear la actividad no deseada. Sin embargo, suele haber un problema de sincronización que permite que las peticiones ofensivas pasen.
Full Capture
Core Audit Full Capture o Captura Total es una tecnología de auditoría de nueva generación que se conecta directamente al motor SQL. Se diseñó desde cero para abordar los retos exclusivos de la seguridad y la auditoría de la actividad de Oracle. La calidad de la información es superior a la de cualquier otro método, con una sobrecarga insignificante, y los DBA no pueden obviarla.
Full Capture hace lo que se espera de una tecnología de captura: ver todo sin afectar a la base de datos. Esto le proporciona una visibilidad del 100% con menos del 3% de sobrecarga.
También puede capturar los valores anteriores y posteriores mediante la integración con disparadores de baja sobrecarga y Logminer. Así que tiene ambas alternativas con diferentes pros y contras.
Por último, Full Capture tiene capacidades de bloqueo que pueden devolver errores o advertencias para SQLs ofensivos. A diferencia de la inspección de paquetes, Full Capture no tiene agujeros de temporización u otros agujeros de seguridad.

Conclusión sobre la Captura
La parte más difícil de la captura son las consultas. Normalmente, también es la más importante, ya que está relacionada con el robo de datos. Una vez que se tienen las consultas, se tiene la mayoría del resto de la información. Si además necesita valores de antes y después, puede conseguirlo en Oracle sin interfaz de usuario o como parte de una solución que lo soporte.
Esto significa que tiene cuatro opciones básicas:
- Hágalo usted mismo (DIY) – Utilice Auditoría Unificada para capturar la actividad y procesarla usted mismo (ver más abajo). También puede añadir disparadores para registrar valores anteriores y posteriores o extraer la información de Logminer. No hay costes de licencia, pero lleva mucho tiempo construirlo y mantenerlo. No lo recomendamos porque suele ser un proyecto interminable con resultados poco satisfactorios.
- Solución de bajo coste: – Soluciones que utilizan una de las funciones de auditoría nativas de Oracle, como la auditoría tradicional o unificada. Estas soluciones se encargan del almacenamiento y la generación de informes, pero dependen de la base de datos para realizar la captura. La auditoría DBA es ineficaz debido al método de captura. Además, estas soluciones no pueden escalarse para registrar un gran volumen de SQL. Esto puede ser aceptable para algunos requisitos de cumplimiento, pero nada más. No pueden proporcionar una seguridad de calidad sin una supervisión eficaz de los DBA, una grabación de mayor volumen para el acceso a datos sensibles y las anomalías necesarias para el control de las aplicaciones.
- Solución de inspección de paquetes – Solución de auditoría de gama alta que examina los paquetes de la base de datos. Puede manejar mucho más volumen que las soluciones de bajo coste, pero proporciona informes en la misma línea. En cierto modo, son peores que las soluciones de bajo coste que se basan en Unified Auditing, ya que los inspectores de paquetes no pueden ver la actividad interna de la base de datos. Estas soluciones son razonables para el cumplimiento, pero ofrecen una seguridad limitada.
- Core Audit – Es una solución de gama alta que puede capturar todo lo que necesita y proporcionar potentes informes, alertas y análisis. No tiene limitaciones ni agujeros de seguridad, y ofrece la seguridad más completa.
Obteniendo Valor
Captar datos de auditoría es sólo la primera mitad del problema. Una vez que se tienen los datos, hay que convertirlos en información significativa. Un repositorio con miles de millones de SQL no sirve para nada por sí solo. Esta sección analiza brevemente lo que se puede hacer para obtener valor de todos estos datos.
Informes de cumplimiento. Una expectativa básica de la auditoría de bases de datos es lograr la conformidad. Para ello, se necesitan informes sobre inicios de sesión, inicios de sesión fallidos, actividad privilegiada, acceso a datos confidenciales y mucho más. El reto es decidir qué registrar y cómo crear informes significativos a partir de los datos. Los informes eficaces se basan en tres principios básicos:
- El tema del informe debe ser realista en su entorno. Este tipo de informes funciona para subconjuntos de actividad de alto riesgo y bajo volumen. Como DDLs, DBAs ejecutando DMLs, etc.
- Encuentre la forma correcta de informar sobre ello. Muchas veces de forma agregada, como contar el número de inicios de sesión de cada usuario en lugar de enumerarlos.
- Afinar los informes sin perder valor de seguridad. Por ejemplo, excluir la actividad de un script de monitorización, pero asegurarse de que lo que se excluye no puede suponer un riesgo para la seguridad.
La elaboración de informes de cumplimiento no supone ningún reto técnico una vez que se dispone de los datos capturados. Sólo se necesita un repositorio, un motor de generación de informes y un poco de tiempo. En Core Audit, dispone de un repositorio altamente escalable, un motor de generación de informes fácil de usar y asistentes con informes incorporados para empezar. Y lo que es más importante, dispone de un análisis forense proactivo que le ahorra tiempo al ayudarle a averiguar qué incluir en los informes.
Análisis de anomalías. La mayor parte de la actividad de las bases de datos no se presta a la elaboración de informes de cumplimiento y requiere algo que pueda escalar a volúmenes masivos. Eso requiere un tipo especial de repositorio y automatización que pueda localizar actividad inusual en él. Esto sólo existe en las soluciones de gama alta.
Core Audit puede alertar cuando hay nuevos usuarios activos cuando se conectan desde diferentes aplicaciones o IPs o están activos en momentos inusuales, cuando SQLs inusuales acceden a información sensible, de volúmenes SQL inusuales, potenciales ataques de inyección SQL, y mucho más. Hay muchas formas de cortar, dividir, comparar y contrastar la actividad para encontrar comportamientos anómalos.
Análisis forense reactivo. La investigación forense reactiva consiste en obtener detalles adicionales sobre los eventos de seguridad. Estos eventos pueden ser una línea sospechosa en un informe, una violación potencial, una indicación de otra fuente, y más. Sea cual sea el suceso, siempre es necesario saber más sobre lo que ha ocurrido.
El reto es disponer de un repositorio con la información. En la mayoría de las soluciones, usted está limitado a los eventos que decide registrar. En Core Audit, aparte del repositorio de cumplimiento, también tiene el repositorio de seguridad que almacena automáticamente información sobre cada SQL en su base de datos. Aunque el repositorio de seguridad es menos detallado, garantiza que siempre podrá saber lo que ha ocurrido.
Análisis forense proactivo. Este tipo de análisis forense le ofrece visibilidad de toda la actividad de la base de datos. Tiene múltiples objetivos, pero el más importante es desarrollar controles. No se pueden diseñar informes de cumplimiento eficaces ni alertas de anomalías sin una comprensión sólida de lo que ocurre en la base de datos. Ni siquiera puedes comprender las amenazas a las que te enfrentas.
No se puede asegurar lo que no se puede ver, y el análisis forense proactivo es un primer paso muy recomendable para proteger su base de datos Oracle. Pero también es fundamental para identificar las malas prácticas de seguridad, ataques y brechas, cambios en los patrones de comportamiento, las lagunas en los controles que ha desplegado, y mucho más.
Core Audit Proactive Forensics incluye herramientas de análisis gráfico para visualizar los perfiles de actividad desde varias dimensiones. Por ejemplo, dispone de pilas basadas en el tiempo, gráficos de árbol, gráficos Sunburst, un Sankey, gráficos de red, etc.

Soluciones Oracle
Además de las tecnologías de captura, Oracle ofrece dos soluciones de seguridad. Éstas no forman parte de la licencia de la base de datos e incurren en importantes costes adicionales, por no hablar de la configuración, administración, etc.
Audit Vault y Database Firewall (AVDF)
Oracle Audit Vault and Database Firewall es una solución de inspección de paquetes que puede complementar sus datos a partir de funciones de auditoría nativas de Oracle como Traditional Auditing, FGA, SYS auditing y Unified Auditing. A pesar de su confuso nombre, se trata de una única solución que contiene funciones de auditoría y prevención.
Esta malla de tecnologías (inspección de paquetes y auditoría nativa) pretende compensar las limitaciones de cada método de captura. Las soluciones de inspección de paquetes que sólo se basan en la red, como AVDF, no pueden ver la actividad local o interna de la base de datos. La actividad local de la máquina es crítica ya que contiene actividad privilegiada desde dentro de la máquina y, en algunos casos, actividad de la aplicación cuando la aplicación se ejecuta en el servidor de base de datos. Por lo que respecta a la auditoría nativa, cada función tiene sus propias limitaciones, pero todas se ven limitadas por el volumen de actividad que pueden gestionar.
La solución combinada puede capturar toda la actividad externa y parte de la local e interna, siempre que el volumen no sea elevado. Sin embargo, AVDF no puede fusionar las fuentes de datos, por lo que las almacena de forma independiente. Eso significa que hay un solapamiento significativo entre la actividad capturada por la auditoría nativa y la capturada por la inspección de paquetes.
Bóveda de Bases de Datos (DV)
Database Vault es una medida preventiva, no una solución de auditoría. Su objetivo es limitar el acceso de los DBA del sistema y evitar que accedan al esquema de datos.
DV redefine las funciones de administración de bases de datos de forma diferente y las aísla en varias categorías. Sin embargo, la administración del esquema de datos sigue siendo la misma y probablemente se asigne a uno o varios DBA. Por tanto, aunque tiene algunas ventajas, no resuelve el problema.
La DV es una solución increíblemente complicada e intrusiva que, en última instancia, no aporta mucha seguridad. Hay soluciones más fáciles y efectivas, como Core Audit, que son más efectivas y menos intrusivas para la organización.
Mejores Prácticas
A continuación se indican algunos pasos básicos de buenas prácticas que le ayudarán a empezar:
- Defina sus drivers. ¿Quiere cumplir una normativa concreta o proteger su base de datos contra algunas amenazas? ¿Por qué realiza este proyecto y qué pretende conseguir? Es difícil tener éxito sin objetivos.
- Identifique los recursos disponibles y defina el marco. ¿Hay un plazo de ejecución? ¿Existe un presupuesto? ¿Quién participará en el proyecto y está familiarizado con Oracle? Conocer sus recursos le permite definir objetivos realistas.
- ¿Cuáles son sus requisitos de captura? ¿Es el robo de datos un riesgo y necesita capturar las consultas? ¿Le preocupan los cambios no autorizados en los datos? ¿Necesita capturar valores anteriores y posteriores? ¿Le preocupa el abuso de privilegios? Esto se deriva de sus riesgos, necesidades de seguridad y requisitos de conformidad.
- ¿Qué valor espera obtener de los datos? ¿Necesita informes de conformidad o alertas de anomalías? ¿Le preocupa la inyección SQL? Depende del nivel de seguridad y de cumplimiento de la normativa que desee alcanzar.
- Elige un enfoque. Tus recursos y objetivos te orientarán rápidamente entre el bricolaje, un producto de bajo coste o una solución de gama alta. Póngase en contacto con algunos proveedores para obtener demostraciones y presupuestos que le permitan cuantificar los costes y calibrar el valor potencial. Póngase en contacto con nosotros y le proporcionaremos más información y asistencia de forma gratuita.
- Si se trata de un proyecto de DIY o si va a comprar una solución de bajo coste, tendrá que experimentar en producción. Así se asegurará de que el impacto en el rendimiento es aceptable y determinará los filtros que necesita para una huella de almacenamiento razonable. Cuando utilice Core Audit, comience con Proactive Forensics para comprender el perfil de actividad de su base de datos y diseñar sus controles.
- Audite el acceso local, los DBA y las cuentas privilegiadas. El acceso local es un vector de ataque popular en el robo de datos y ataques de ransomware. Las cuentas DBA también son un vector de alto riesgo para el robo de credenciales y el abuso de privilegios.
- Con Core Audit, controle la cuenta de aplicación. Las cuentas de aplicación son el objetivo de la inyección SQL y otras vulnerabilidades de las aplicaciones. Auditarlas requiere una captura y un análisis de anomalías de alto nivel.
- Examine otras cuentas que necesite controlar. Tenga en cuenta las cuentas nuevas, no aprobadas e inactivas.
- Mejore la eficacia del control. Realice un análisis de deficiencias para determinar la eficacia de sus controles. Eso incluye estimar los falsos negativos (eventos no detectados) y el potencial de ataques desconocidos (como los de día cero). Existen varios métodos para hacerlo.
Reflexiones finales
Existen múltiples tecnologías y soluciones para proteger una base de datos Oracle. Van desde el bricolaje hasta productos de bajo coste y soluciones de gama alta. Todo depende de sus necesidades y de los recursos disponibles. Póngase en contacto con nosotros y le ayudaremos a encontrar el mejor enfoque para su caso particular.