2. Obetivos
Después de completar esta lección, usted
debería ser capaz de :
Describir las responsabilidades del DBA para la
seguridad
Aplicar el principio de menos privilegios
Habilitar la auditoría standard de la base de datos
Especificar las opciones de auditoría
Revisar la información de auditoría
Mantener el audit trail
3. Requerimientos de Seguridad de la
Industria .
Legal:
Sarbanes-Oxley Act (SOX)
Health Information Portability and Accountability
Act (HIPAA)
California Breach Law
UK Data Protection Act
Auditando
> Requerimientos
Menor Privilegio
Auditando
Value-based
FGA
DBA
Sec. Updates
4. Separación de Responsabilidades
Usuarios con privilegios de DBA deben ser
confiables. Considere:
Abuso de confianza
Que audit trails protegen la posición de confianza
Las responsabilidaes de DBA deben ser
compartidas.
Cuentas nunca deben ser compartidas.
El DBA y el administrador de sistemas deben
ser personas diferentes.
Separe las responsabilidades de operador y
DBA.
5. Seguridad de Base de Datos
Un sistema seguro asegura la
confidencialidad de los datos que
contiene. Hay varios aspectos de
seguridad:
Restringiendo el acceso a datos y servicios
Autenticando usuarios
Monitoreando actividades sospechosas
6. Principio de Menos Privilegios .
Instale en la máquina sólo el software requerido.
Active en la máquina sólo los servicios requeridos.
Otorgue acceso al SO y base de datos sólo a
aquellos usuarios que requieren acceso.
Limite los accesos a la cuenta root o administrador.
Limite los accesos a las cuentas SYSDBA y SYSOPER.
Limite el acceso a los usuarios sólo a los objetos
requeridos para su trabajo.
Requerimientos
> Menos Privilegios
Auditando
Value-based
FGA
DBA
Sec. Updates
7. REVOKE EXECUTE ON UTL_SMTP, UTL_TCP, UTL_HTTP,
UTL_FILE FROM PUBLIC;
O7_DICTIONARY_ACCESSIBILITY=FALSE
REMOTE_OS_AUTHENT=FALSE
Aplicando el Principio de Menos
Privilegios
Proteja el diccionario de datos:
Revoque privilegios innecesarios del PUBLIC:
Restrinja el acceso a directorios accesibles por los
usuarios.
Limite usuarios con privilegios administrativos.
Restrinja la autenticación remota a la base de datos:
8. Monitoreando Actividad
Sospechosa .
Monitorear o auditar debe ser una parte
integral de sus procedimientos de seguridad.
Revise lo siguiente:
Auditoría Mandatoria
Auditoría de base de datos Standard
Auditoría Value-based
Auditoría Fine-grained (FGA)
Auditoría DBA
Requerimientos
Menos Privilegios
> Auditando
Value-based
FGA
DBA
Sec. Updates
9. Audit
trail
Parameter
file
Especificar opciones de
auditoría.
Genera
audit trail.
Auditoría Standard de Base de Datos
DBA User
executa
comandos
Database
OS or XML
audit
trail
Audit
options
Server
process
1
2
3
Habilitar
auditoría de
base de datos.
Revisar información
de auditoría.
Mantener
audit trail.
4
10. Habilitando Auditoría
Reinicie la base de datos después de modificar
el parámetro de inicialización estático.
ALTER SYSTEM SET audit_trail=“XML” SCOPE=SPFILE;
11. Uniformar Audit Trails
Use AUDIT_TRAIL para habilitar la auditoría
de base de datos
DBA_AUDIT_TRAIL DBA_FGA_AUDIT_TRAIL
DBA_COMMON_AUDIT_TRAIL
EXTENDED_TIMESTAMP,
PROXY_SESSIONID, GLOBAL_UID,
INSTANCE_NUMBER, OS_PROCESS,
TRANSACTIONID, SCN, SQL_BIND, SQL_TEXT
STATEMENTID,
ENTRYID
AUDIT_TRAIL=DB,EXTENDED
13. Especificando opciones de Auditoría
Auditoría de sentenciasSQL:
Auditoría de System-privilege (nonfocused y
focused):
Auditoría Object-privilege (nonfocused y focused):
AUDIT select any table, create any trigger;
AUDIT select any table BY hr BY SESSION;
AUDIT table;
AUDIT ALL on hr.employees;
AUDIT UPDATE,DELETE on hr.employees BY ACCESS;
14. Usando y Manteniendo Información de Auditoría
Deshabilite opciones de auditoría si no las está usando.
15. AuditoríaValue-Based
Cambio efectuado
por el usuario es
hecho.
Trigger
gatillado.
Registro de auditoría
es grabado por el trigger.
Registro de auditoría
es insertado en la
tabla auditoría.
Un usuario
efectúa un
cambio.
Requirements
Least Privilege
Auditing
> Value-based
FGA
DBA
Sec. Updates
16. Auditoría Fine-Grained
Monitorea el acceso a los datos
Audita SELECT, INSERT, UPDATE, DELETE, y MERGE
Puede ser asociado a una tabla o vista, a una o más
columnas
Puede ejecutar un procedimiento
Es administrada con el package DBMS_FGA
employees
Policy: AUDIT_EMPS_SALARY
SELECT name, salary
FROM employees
WHERE
department_id = 10;
Requerimientos
Menos Privilegios
Auditando
Value-based
> FGA
DBA
Sec. Updates
17. Política FGAdbms_fga.add_policy (
object_schema => 'HR',
object_name => 'EMPLOYEES',
policy_name => 'audit_emps_salary',
audit_condition=> 'department_id=10',
audit_column => 'SALARY,COMMISION_PCT',
handler_schema => 'secure',
handler_module => 'log_emps_salary',
enable => TRUE,
statement_types => 'SELECT' );
SELECT name, job_id
FROM employees;
SELECT name, salary
FROM employees
WHERE
department_id = 10;
SECURE.LOG_
EMPS_SALARY
employees
Define:
Criterio de
auditoría
Acción de
Auditoría
Es creado con
DBMS_FGA.ADD_POLICY
18. Sentencia DML Auditada: Consideraciones
Registros son auditados si el predicado del FGA es
satisfecho y las columnas relevantes son referenciadas.
Sentencias DELETE son auditadas independientemente de
las columnas auditadas.
Sentencias MERGE son auditadas con las sentencias
subyacentes generadas INSERT o UPDATE.
UPDATE hr.employees
SET salary = 10
WHERE commission_pct = 90;
UPDATE hr.employees
SET salary = 10
WHERE employee_id = 111;
19. FGA Guía
Para auditar todas las sentencias, use una condición
null.
Los nombres de Política deben ser únicos.
La tabla o vista a auditar debe existir antes de crear
la política.
Si la sintaxis de la condición de auditoría es inválida
será generado un error ORA-28112 cuando el objeto
auditado se accese.
Si la columna auditada no existe en la tabla, no serán
auditadas las filas.
Si el manejador de eventos no existe, no se reportará
un error y el registro de auditoría se creará.
20. Auditando al DBA
Usuarios con privilegios SYSDBA o SYSOPER
pueden conectarse a cuando la base de datos
está cerrada.
Registro de Auditoría debe ser almacenado fuera de
la base de datos.
Conecciones como SYSDBA o SYSOPER siempre
deben ser auditadas.
Auditar las acciones de SYSDBA o SYSOPER con
audit_sys_operations.
Controlar el registro de auditorá con
audit_file_dest.
Requirements
Least Privilege
Auditing
Value-based
FGA
> DBA
Sec. Updates
21. Manteniendo el Registro de
Auditoría (audit trail)
El registro de Auditoría debería ser
mantenido.
Guía de buenas prácticas:
Revisar y almacenar los registros obsoletos.
Prevenir problemas de almacenamiento.
Evitar pérdida de registros.
22. Actualizaciones de Seguridad
Oracle reporta las alertas de seguridad en el sitio
Web Oracle Technology Network:
http://www.oracle.com/technology/deploy/security/alerts.htm
Administradores de base de datos Oracle y
desarrolladores pueden suscribirse para ser
notoficados respecto de alertas críticas de seguridad
vía e-mail en el link “Subscribe to Security Alerts
Here”.
Requirements
Least Privilege
Auditing
Value-based
FGA
DBA
> Sec. Updates
23. Aplicando Parches de Seguridad
Utilice el procesos Critical Patch Update.
Aplique todos los parches de seguridad
cuando corresponda.
Contactar al equipo Oracle security products.
24. Resumen
En esta lección, usted debió haber
aprendido:
Describir sus responsailidad como DBA para
asuntos de seguridad
Aplicar el principio de menos privilegios
Habilitar auditoría de base de datos estándar
Especificar opciones de auditoría
Revisar la información de auditoría
Mantener el registro de auditoría