Ejemplo de Estandar

44
Estado: Versión 1.0 Página: 1 de 44 Estándares de Seguridad de la información Oracle AS 10g, 11g Versión 1.0

Transcript of Ejemplo de Estandar

Page 1: Ejemplo de Estandar

Estado: Versión 1.0 Página: 1 de 44

Estándares de Seguridad de la información

OOrraaccllee AASS 1100gg,, 1111gg

Versión 1.0

Page 2: Ejemplo de Estandar

Estado: Versión 1.0 Página: 2 de 44

Contenido 1.1 Objetivo del Estándar Oracle Oracle AS 10g, 11g .........................................................................3

1.2 Consideraciones y recomendaciones generales sobre el estándar ...............................................4

1.3 Alcance ............................................................................................................................................4

1.4 Supuestos y limitaciones .................................................................................................................4

1.5 Actividades a realizar Antes de la Implementación del estándar Oracle AS 10g, 11g ..................4

1.6 Recomendaciones para la Auditoria del Sistema ..........................................................................5

1.7 conceptos fundamentales sobre la seguridad ................................................................................5

1.8 Proceso de instalación de oracle ....................................................................................................6

1.9 Estándar de Seguridad Oracle AS 10g, 11g .............................................................................. 12

1.10 Guía de Auditoria para el Estándar ......................................................................................... 31

1.11 Sitios de Referencia en Internet .............................................................................................. 35

1.12 Anexos ...................................................................................................................................... 36

Page 3: Ejemplo de Estandar

Estado: Versión 1.0 Página: 3 de 44

SECCIÓN DE CONTROL DEL DOCUMENTO

Todos los derechos están estrictamente reservados. Ninguna parte de este documento puede ser reproducida de ninguna forma o por ningún medio sin la previa autorización escrita de SYMANTEC.

Nombre del Archivo: Estándar configuración Oracle 1 Oracle AS 10g, 11g .doc

Historial de Revisión:

Este documento ha sido creado por:

Versión

Autor Fecha Descripción de Revisión

1.0 ALEXIS MENA 04/27/2008 Versión Inicial

Este documento ha sido revisado por:

It. Revisor Fecha Revisión

1.

2.

3.

Este documento ha sido aprobado por:

Expertos en el Tema

It. Nombre Firma Fecha Autorización

1.

2.

3.

11..11 OOBBJJEETTIIVVOO DDEELL EESSTTÁÁNNDDAARR OORRAACCLLEE OORRAACCLLEE AASS 1100GG,, 1111GG

Este documento describe el estándar de configuración de la Base de Datos Oracle en versiones,

Oracle AS 10g -11g. El objeto de este estándar es mantener los servicios asociados en un estado

de alta seguridad, disponibilidad y confiabilidad. Este estándar busca prevenir interrupciones al

servicio producidos por amenazas de tipo accidental o intencional que pueda ingresar al perímetro

de la red, a los sistemas de información y en especial proteger los servicios ofrecidos por la Base

de Datos Oracle en versiones Oracle AS 10g, 11g.

Page 4: Ejemplo de Estandar

Estado: Versión 1.0 Página: 4 de 44

11..22 CCOONNSSIIDDEERRAACCIIOONNEESS YY RREECCOOMMEENNDDAACCIIOONNEESS GGEENNEERRAALLEESS SSOOBBRREE EELL EESSTTÁÁNNDDAARR

Las recomendaciones de seguridad definidas en este documento deben ser probadas en un

ambiente fuera de producción. Los cambios que se realicen deben ser hechos en un ambiente

controlado, ya que al ser implementados pueden causar inestabilidad en el sistema y/o la red,

implicando una re-configuración o re-instalación del software.

La implantación del estándar, requiere como fase inicial, las pruebas preliminares en un piloto de

los parámetros presentados en este documento, antes de llevarlos al ambiente de producción. Las

configuraciones anteriores deben ser respaldadas antes de aplicar cualquier cambio en la Base de

Datos. Se debe tener también un procedimiento que describa claramente cuáles son las

actividades necesarias para que en caso de que el cambio no funcione correctamente, podamos

regresar a la configuración anterior al cambio. Esta implantación debe estar debidamente

aprobada y documentada por el Jefe de Departamento.

El chequeo de la seguridad sobre el sistema debe ser realizado por personal con conocimiento

técnico de la plataforma y en caso de no tenerlo, deberá ser apoyado por el Administrador de la

Base de Datos o el personal técnico capacitado de su compañía.

Cualquier cambio o modificación sobre el sistema que sea ocasionado como resultado de la

revisión de la seguridad con base en el estándar deberá ser documentado, para garantizar que es

posible ser reversado en caso de que interfiera con la funcionalidad requerida del sistema.

11..33 AALLCCAANNCCEE

El alcance de este estándar de configuración para Oracle 10.2.0.1 -10.2.0.3 – Oracle AS 10g, 11g

y Oracle Client cubre los aspectos referidos a la Administración de Usuarios y Seguridad que

soportan a esta Base de Datos.

11..44 SSUUPPUUEESSTTOOSS YY LLIIMMIITTAACCIIOONNEESS

Las especificaciones planteadas en este estándar están parametrizadas de manera que son

independientes del sistema operativo.

11..55 AACCTTIIVVIIDDAADDEESS AA RREEAALLIIZZAARR AANNTTEESS DDEE LLAA IIMMPPLLEEMMEENNTTAACCIIÓÓNN DDEELL EESSTTÁÁNNDDAARR OORRAACCLLEE AASS 1100GG,, 1111GG

Es recomendable seguir algunas indicaciones antes de implementar cualquier indicación del

estándar de seguridad. Entre las recomendaciones tenga en cuenta las siguientes:

Se recomienda realizar un backup completo de su sistema y una copia completa de su

Base de Datos (Instancias y Archivos de configuración) antes de implementar cualquiera

de las recomendaciones o en el caso especifico de que se esté realizando una

actualización.

Se debe tomar nota por escrito de los errores que pueda generar el sistema.

Page 5: Ejemplo de Estandar

Estado: Versión 1.0 Página: 5 de 44

11..66 RREECCOOMMEENNDDAACCIIOONNEESS PPAARRAA LLAA AAUUDDIITTOORRIIAA DDEELL SSIISSTTEEMMAA

Las Auditorias del Sistema que son recomendadas en este estándar, son configuradas para

garantizar niveles de seguridad adecuados al sistema y se supone que si están activadas es

porque hay un responsable de su seguimiento y de la generación de reportes con base en estas.

La activación de cualquier auditoria sobre el sistema puede consumir una gran cantidad de tiempo

del procesador y de espacio en disco. Es altamente recomendado que se revise, se guarde, y se

limpien los logs de auditoría diariamente o semanalmente para reducir la posibilidad de

degradación del sistema.

También se recomienda que por lo menos una vez cada 6 meses se revise la configuración de la

Base de Datos Oracle AS 10g, 11g con el fin de poder detectar posibles cambios que se hayan

realizado al sistema y que de manera directa o indirecta puedan comprometer la disponibilidad, la

confidencialidad o la disponibilidad.

11..77 CCOONNCCEEPPTTOOSS FFUUNNDDAAMMEENNTTAALLEESS SSOOBBRREE LLAA SSEEGGUURRIIDDAADD

La Seguridad Informática (S.I.) Se ocupa de diseñar las normas, procedimientos, métodos y

técnicas, orientados a proveer condiciones seguras y confiables, para el procesamiento de datos

en sistemas informáticos. La decisión de aplicarlos es responsabilidad de cada usuario. Las

consecuencias de no hacerlo… también

Principios de Seguridad Informática

Para lograr sus objetivos, la seguridad informática se fundamenta en tres principios, que debe

cumplir todo sistema informático como son: Confidencialidad, Integridad, Disponibilidad.

Confidencialidad

Se refiere a la privacidad de los elementos de información almacenados y procesados en un

sistema informático. Basándose en este principio, las herramientas de seguridad informática deben

proteger al sistema de invasiones, intrusiones y accesos, por parte de personas o programas no

autorizados.

Este principio es particularmente importante en sistemas distribuidos, es decir, aquellos en los que

usuarios, computadores y datos residen en localidades diferentes, pero están física y lógicamente

interconectados.

Integridad

Se refiere a la validez y consistencia de los elementos de información almacenados y procesados

en un sistema informático. Basándose en este principio, las herramientas de seguridad informática

deben asegurar que los procesos de actualización estén sincronizados y no se dupliquen, de forma

que todos los elementos del sistema manipulen adecuadamente los mismos datos.

Page 6: Ejemplo de Estandar

Estado: Versión 1.0 Página: 6 de 44

Este principio es particularmente importante en sistemas descentralizados, es decir, aquellos en

los que diferentes usuarios, computadores y procesos comparten la misma información.

Disponibilidad

Se refiere a la continuidad de acceso a los elementos de información almacenados y procesados

en un sistema informático. Basándose en este principio, las herramientas de seguridad Informática

deben reforzar la permanencia del sistema informático, en condiciones de actividad adecuadas

para que los usuarios accedan a los datos con la frecuencia y dedicación que requieran.

11..88 PPRROOCCEESSOO DDEE IINNSSTTAALLAACCIIÓÓNN DDEE OORRAACCLLEE

A continuación se presentan la secuencia de pasos a seguir para la instalación de su base de

datos Oracle.

Descripción de la instalación

Para instalar el software de Oracle se utiliza el Oracle Universal Installer (OUI). El Oracle

Universal Installer es una interfaz gráfica de usuario (GUI), herramienta que le permite ver el

software de Oracle que ya está instalado en su máquina, instalar nuevos programas informáticos

de Oracle y desinstalar el software que usted ya no tiene la intención de utilizar. La ayuda en

línea está disponible para guiar al usuario a través del proceso de instalación.

Comprobación de Requisitos previos

Antes de instalar el software, el instalador realiza una serie de controles automáticos para asegurar

que su máquina cumple con los básicos requisitos de hardware y software para una instalación de

bases de datos Oracle. Si su máquina no cumple con un requisito, aparece un mensaje de error.

Los requisitos pueden variar dependiendo del tipo de ordenador y sistema operativo que esté

ejecutando, pero algunos requisitos previos incluyen:

Un mínimo de 512 MB de memoria disponible.

Búsqueda de espacio disponible.

Sistema operativo apropiado service packs o parches están instalados.

Utilizar un adecuado formato de sistema de archivos

El instalador se ajusta automáticamente a cualquier sistema operativo de las variables de entorno

que el servidor de bases de datos Oracle requiere para su funcionamiento.

Remitirse a este Link

http://translate.google.com/translate?hl=es&langpair=en%7Ces&u=http://www.oracle.com/pls/db10

2/lookup%3Fid%3DGINST&prev=/translate_s%3Fhl%3Des%26q%3Dhttp://www.oracle.com/pls/db

102/homepage%26sl%3Des%26tl%3Den para obtener más información sobre los requisitos

exactos de su plataforma de sistema operativo específico.

Page 7: Ejemplo de Estandar

Estado: Versión 1.0 Página: 7 de 44

Preinstalación

Crear puntos de montaje: uno para el Software y hasta seis para las bases de datos:

– /u01 (sw)

– /u02 (datos), /u03 (índices), /u04 (redo), /u05 (system), /u06 (temp) y /u07 (rollback)

Crear grupo dba: “groupadd dba”.

Crear grupo oinstall: “groupadd oinstall”.

Crear usuario oracle con grupo primario dba y secundario oinstall: “useradd gdba G oinstall

oracle”.

Crear directorio /u01/app/oracle (ORACLE_BASE) y /u02/oradata, /u03/oradata, etc.

Variables de entorno del usuario oracle justo antes de instalar:

– DISPLAY=workstation_name:0.0 (servidor Xwin)

– ORACLE_BASE=/u01/app/oracle (el resto es opcional)

– PATH debe incluir $ORACLE_HOME/bin, /usr/bin, /bin,/usr/bin/X11/ y /usr/local/bin

– ORACLE_HOME=$ORACLE_BASE/product/

– ORACLE_SID

Instalación

Antes de comenzar una instalación de bases de datos Oracle en sistemas UNIX, asegúrese de

que el valor umask es 022 para el propietario de Oracle.

Montar CD desde el root:

– # mount /mnt/cdrom

Como usuario oracle, lanzar script de instalación desde fuera del punto de montaje del CD (por

ejemplo, desde el HOME del usuario oracle).

– Comprobar variables DISPLAY y ORACLE_BASE.

– $ /mnt/cdrom/runInstaller

– Cambiar CD: “eject” o “umount /mnt/cdrom” y luego “mount /mnt/cdrom”.

Notas:

El punto de montaje del CDROM no tiene por qué ser “/mnt/cdrom”, puede ser otro

(“/media/cdrom”, etc).

Se podría ejecutar en modo “no interactivo” con: $ /mnt/cdrom/runInstaller responsefile mirespfile

silent

La mayoría de medidas son comunes a todas las plataformas de funcionamiento y el Oracle

Universal Installer Los siguientes pasos presentan un resumen del proceso de instalación. Para

mayor asistencia a lo largo del camino, consulte la ayuda en línea en el siguiente link

http://translate.google.com/translate?hl=es&langpair=en%7Ces&u=http://www.oracle.com/pls/db10

2/lookup%3Fid%3DGINST&prev=/translate_s%3Fhl%3Des%26q%3Dhttp://www.oracle.com/pls/db

102/homepage%26sl%3Des%26tl%3Den para su plataforma de sistema operativo.

Page 8: Ejemplo de Estandar

Estado: Versión 1.0 Página: 8 de 44

1. Inicie sesión en su computador como un miembro del grupo administrativo que está

autorizado para instalar software de Oracle y para crear y ejecutar la base de datos.

2. Consulte la documentación de su sistema operativo específico o póngase en contacto con

el administrador del sistema para determinar si usted tiene los privilegios necesarios para

instalar nuevo software.

3. Inserte el medio de distribución para la base de datos en su ordenador. El Autorun

ventana se abre automáticamente. Haga clic en Instalar / desinstalar Productos.

4. Si la descarga de Oracle del sitio Web, a continuación, siga las instrucciones en el sitio.

5. El Oracle Universal Installer Seleccione Método de instalación aparece la ventana.

Figura1: Oracle Universal Installer método de instalación, seleccione la ventana

1. Ahora debe decidir qué tipo de instalación a realizar:

Instalación básica: Seleccione esta opción para la rápida instalación de bases de datos

Oracle. Este método no requiere la entrada del usuario. Se instala el software y

opcionalmente crea un propósito general de bases de datos basado en la información que

usted proporcione.

Debe especificar lo siguiente:

– Oracle Home Location - Introduzca el directorio en el que instalara el software de la

Base de Datos Oracle. Debe especificar un nuevo directorio Home de Oracle para cada

nueva instalación de la base de datos Oracle.

– Tipo de instalación: Seleccione cualquiera de Enterprise Edition, Standard Edition, o

Personal Edition (Windows solamente).

Page 9: Ejemplo de Estandar

Estado: Versión 1.0 Página: 9 de 44

– DBA Grupo UNIX (Linux y Unix solamente) - Especifique el grupo DBA para su

sistema operativo.

– Crear la base de datos para principiantes -Seleccione esta casilla para crear una

base de datos durante la instalación. Oracle recomienda que en la instalación sea

creada una base de datos para el arranque por primera vez.

Para iniciar la instalación básica, haga clic en Siguiente.

Instalación Avanzada: Seleccione esta opción para personalizar su instalación. Por

ejemplo, puede utilizar este método para instalar Oracle Real Application Clusters, para

actualizar una base de datos, para configurar Automatic Storage Management, o para

configurar copias de seguridad automatizadas. El instalador realiza una serie de

verificaciones del sistema.

2. Si esta es la primera vez que se instale el software Oracle en la máquina, usted debe

especificar un directorio para los archivos de instalación y el nombre del grupo de sistema

operativo que tiene permiso de escritura para el directorio.

3. posteriormente aparece un resumen en pantalla con información de la configuración global, las

necesidades de espacio y los nuevos productos que se van a instalar. Haga clic en Instalar

para iniciar la instalación. La ventana de Instalación aparece mostrando el progreso de

instalación.

4. Al final de la fase de instalación, aparece la ventana de configuración de las listas de

asistentes que se inician automáticamente. Si está creando una base de datos, entonces el

asistente de configuración de la base de datos se inicia automáticamente en una ventana

aparte.

5. Al final de la creación de la bases de datos, se le pedirá que desbloquee las cuentas de

usuario para hacer accesible las cuentas. Haga clic en Aceptar para eludir la contraseña de

gestión.

6. La instalación y creación de bases de datos ya está completo.

7. Después de tomar nota de las informaciones en el final de la pantalla de instalación, ya puede

salir del instalador.

Se establecen las contraseñas a las cuentas.

SYS

SYSTEM

SYSMAN

Post instalación

Page 10: Ejemplo de Estandar

Estado: Versión 1.0 Página: 10 de 44

Incluir variables en .bash_profile del usuario oracle:

– export ORACLE_BASE=/u01/app/oracle

– export ORACLE_HOME=$ORACLE_BASE/product/

– export LD_LIBRARY_PATH=$ORACLE_HOME/lib

– export PATH=$ORACLE_HOME/bin:$PATH

– export ORACLE_SID=mibd

Activar E/S asíncrona:

– Para activarla a nivel de una BD, asignar el parámetro del init: filesystemio_options =

setal

– Ejecutar, el siguiente comando: $ORACLE_HOME/rdbms/lib: $ make fins_rdbms.mk

asynch_on

Comprobar seguridad de la BD:

http://www.oracle.com/technology/deploy/security/database-

security/pdf/twp_security_checklist_database.pdf

Comprobar parches de seguridad:

http://www.oracle.com/technology/deploy/security/index.html

Comprobación Final

En el directorio $ORACLE_BASE/oraInventory/logs revisar los logs de lo ocurrido durante la

instalación.

Comprobar que el SW y la BD (si ha instalado una) funcionan.

Conectar a la BD usando Sql*Plus

SQL> connect / as sysdba

Connected.

Comprobar el Listener Sql*Net

Oracle Enterprise Manger:

o Arrancar el servidor web de OEM

o Acceder a “http://host:1158/em”

Recomendaciones de permisos sobre los directorios

En las plataformas Unix se recomienda que los directorios tengan los permisos 755. En

plataformas Windows, hay que conceder privilegio de fullcontrol sobre las carpetas del Software al

grupo ORA_DBA y privilegio NONE al grupo Everyone. Se recomienda también no cambiar la

función del servidor en producción, por ejemplo de Primary Domain Controller a Backup Domain

Controller o viceversa; puede generar comportamientos inesperados.

Lista de Control Recomendada para la Revisión de la Seguridad

Instalar sólo aquellas opciones que sean necesarias.

Page 11: Ejemplo de Estandar

Estado: Versión 1.0 Página: 11 de 44

Bloquear cuentas de usuarios creados por defecto que no vaya a utilizar.

DBCA bloquea todas menos SYS, SYSTEM, SCOTT y DBSNMP, por ejemplo: outln, mdsys,

wksys, ctxsys, ordsys, etc.

Cambiar claves de usuarios creados por defecto: SYS, SYSTEM, etc. Recomendaciones para

las contraseñas- Passsword Policy de la SAN:

http://www.sans.org/resources/policies/Password_Policy.pdf ( Ver Anexo )

Proteger el DD con O7_DICTIONARY_ACCESSIBILITY = FALSE, impidiendo acceso al DD a

través de privilegios ANY. Así, por ejemplo, usuarios con DROP ANY no podrán borrar el DD

Practicar el principio de “los privilegios justos”. Por ejemplo, para conectar a la BD dar CREATE

SESSION y no CONNECT.

Restringir los usuarios del sistema operativo (Unix o Windows) con acceso al servidor Oracle.

Restringir el acceso al servidor Oracle a través de y desde la red.

Aplicar todos los parches de seguridad que vayan saliendo. Sitio de referencia:

http://otn.oracle.com/deploy/security/alerts.html

Page 12: Ejemplo de Estandar

Estado: Versión 1.0 Página: 12 de 44

11..99 EESSTTÁÁNNDDAARR DDEE SSEEGGUURRIIDDAADD OORRAACCLLEE AASS 1100GG,, 1111GG

Tema: Configuración parámetros básicos

Parámetro /

Componente

Valor o cambio a

implantar

Procedimiento para su

implantación

Impacto de no aplicarlo Prioridad

CONFIGURACIONES BASICAS DE SEGURIDAD DURANTE O DESPUÉS DE LA INSTALACIÓN

– Configuración Básica de Seguridad en la inicialización de la Base de Datos

Después de

instalar la base de

datos Oracle, debe

garantizar la

instalación y

configuración de la

base de datos.

INIT.ora

Los Siguientes Parámetros Aplican A Todas

Las Versiones de Oracle

Iniciar base de datos de control

Nombre de usuario: SYS

Contraseña: Introduzca la

contraseña.

Conectar como: SYSDBA

SQL> ALTER SYSTEM SET

parameter_name = valor (Pulse

Enter)

Nota: Activar y Modificar durante o

después de la instalación la política

de contraseñas establecida por

defecto, para todas las cuentas de

usuario

Estos parámetros permiten

determinar la política de contraseña

para todas las cuentas de usuarios y

no determinarlas adecuadamente

permitirá accesos no autorizados a

la Base Datos

ALTA

PASSWORD_LIFE_TIME=30 (Días)

PASSWORD_GRACE_TIME=1 (Día)

PASSWORD_LOCK_TIME=UNLIMITED

PASSWORD_REUSE_MAX= UNLIMITED

PASSWORD_REUSE_TIME= UNLIMITED

PASSWORD_LOGIN_FAILURES=3 (Intentos)

– Asegurar el Diccionario de Datos Oracle

INIT.ora

O7_DICTIONARY_ACCESSIBILITY=FALSE

Iniciar base de datos de control

Nombre de usuario: SYS

Contraseña: Introduzca la

contraseña.

Conectar como: SYSDBA

SQL> ALTER SYSTEM SET

parameter_name = valor (Pulse

Enter)

Este parámetro evita que los

usuarios que tienen el privilegio Any

sistema de uso de los mismos

privilegios en el diccionario de

datos, es decir, a objetos en el

esquema SYS.

ALTA

Los Siguientes Parámetros Aplican Únicamente Para la

Versión 11g

SEC_RETURN_SERVER_RELEASE_BANNER= FALSE

Desactivar este parámetro ya que

un intruso podría utilizar el número

de versión de base de datos para

encontrar información sobre

vulnerabilidades de seguridad que

puedan estar presentes en la base

de datos de software.

MEDIA

Page 13: Ejemplo de Estandar

Estado: Versión 1.0 Página: 13 de 44

– Acceso del sistema operativo

Garantizar el acceso

a la base de datos

Oracle en el nivel de

sistema operativo.

Siga estas directrices:

Limite el número de usuarios del SO.

Limite los privilegios del SO de cuentas

(administrativos, raíz de privilegiados, o DBA)

Restringir la capacidad de modificar el archivo

por defecto de directorios y permisos para el

Home de la Base de Datos Oracle

Restringir los enlaces simbólicos.

Para aplicar a estas

recomendaciones es necesario

remitirse al estándar del sistema

operativo que tenga configurado para

Oracle Esta recomendación se aplica

a todos los tipos de archivos: de

datos, archivos de registro, localizar

archivos, DBFILEs, y así

sucesivamente.

No se debe permitir el acceso al

sistema operativo ya que esto

permitirá que algún usuario puede

borrar los archivos del directorio de

Oracle

ALTA

– Restricción de permisos en tiempo de ejecución

dbms_java.grant_permission

permission_type = 'SYS:

java.io.FilePermission'

permission_name = ' /

u01/app/oracle/ - '

permission_action = 'read'

Iniciar base de datos de control

Nombre de usuario: SYS

Contraseña: Introduzca la contraseña.

Conectar como: SYSDBA

SQL> exec dbms_java.grant_permission

('SCOTT','SYS: java.io.FilePermission', ' /

u01/app/oracle/ - ','read');

Restricción de permisos en

tiempo de ejecución esto impide

el acceso de escritura a los

directorios y archivos de Oracle

ALTA

SEGURIDAD PARA CUENTAS DE USUARIO

– Cuentas de usuario administrativas predefinidas por Oracle

ANONYMOUS = EXPIRED & LOCKED Opción 1:

1. Inicio base de datos de control.

2. Iniciar sesión con privilegios

administrativos.

3. Haga clic en Servidor para mostrar el

Servidor de subpágina.

4. En la sección Seguridad, haga clic en

Usuarios.

5. Seleccione la columna, seleccione la

cuenta que desea expirar y, a continuación,

haga clic en Modificar.

6. Realice una de las siguientes:

Para bloquear una contraseña, haga

clic en Vence Contraseña ahora.

Permitir el acceso a estas

cuentas permitirá tener

control de acceso al Oracle

ya que estas cuentas tienen

privilegios especiales.

ALTA

CTXSYS = EXPIRED & LOCKED

DBSNMP = OPEN

EXFSYS = EXPIRED & LOCKED

LBACSYS = EXPIRED & LOCKED

MDSYS = EXPIRED & LOCKED

MGMT_VIEW = OPEN

OLAPSYS = EXPIRED & LOCKED

OWBSYS = EXPIRED & LOCKED

ORDPLUGINS = EXPIRED & LOCKED

ORDSYS = EXPIRED & LOCKED

OUTLN = EXPIRED & LOCKED

Page 14: Ejemplo de Estandar

Estado: Versión 1.0 Página: 14 de 44

SI_INFORMTN_SCHEM

A

= EXPIRED & LOCKED Para cambiar la contraseña,

introduzca una nueva contraseña en

Ingresar Contraseña y Confirmar

contraseña campos. Para bloquear

la cuenta, seleccione Cerrado.

7. Haga clic en Aplicar.

8. Opción 2:

SQL> ALTER USER nombre de cuenta

CUENTA LOCK

SYS = OPEN

SYSMAN = OPEN

SYSTEM = OPEN

TSMSYS = EXPIRED & LOCKED

WK_TEST = EXPIRED & LOCKED

WKSYS = EXPIRED & LOCKED

WKPROXY = EXPIRED & LOCKED

WMSYS = EXPIRED & LOCKED

XDB = EXPIRED & LOCKED

– Cuentas de usuario no administrativas predefinidas por Oracle

APEX_PUBLIC_USER = EXPIRED & LOCKED Opción 1:

1. Inicio base de datos de control.

2. Iniciar sesión con privilegios

administrativos.

3. Haga clic en Servidor para mostrar el

Servidor de subpágina.

4. En la sección Seguridad, haga clic en

Usuarios.

5. Seleccione la columna, seleccione la

cuenta que desea expirar y, a

continuación, haga clic en Modificar.

6. Realice una de las siguientes:

7. Para bloquear una contraseña, haga clic

en Vence Contraseña ahora.

Para cambiar la contraseña,

introduzca una nueva contraseña

en Ingresar Contraseña y

Confirmar contraseña campos.

Para bloquear la cuenta,

seleccione Cerrado.

8. Haga clic en Aplicar.

Opción 2:

SQL> ALTER USER nombre de cuenta

CUENTA LOCK

Aunque algunas cuentas

tienen mínimos privilegios

permitir el acceso de forma no

autorizada a estas cuentas

puede ser un punto vulnerable

de seguridad en Oracle

ALTA DIP = EXPIRED & LOCKED

FLOWS_30000 = EXPIRED & LOCKED

FLOWS_FILES = EXPIRED & LOCKED

MDDATA = EXPIRED & LOCKED

ORACLE_OCM = EXPIRED & LOCKED

PÚBLIC = EXPIRED & LOCKED

SPATIAL_CSW_ADMIN_US

R

= EXPIRED & LOCKED

SPATIAL_WFS_ADMIN_USR = EXPIRED & LOCKED

XS $ NULL = EXPIRED & LOCKED

Page 15: Ejemplo de Estandar

Estado: Versión 1.0 Página: 15 de 44

– Esquema predefinido de cuentas de usuario

BI = EXPIRED & LOCKED Opción 1:

1. Inicio base de datos de control.

2. Iniciar sesión con privilegios administrativos.

3. Haga clic en Servidor para mostrar el Servidor de

subpágina.

4. En la sección Seguridad, haga clic en Usuarios.

5. Seleccione la columna, seleccione la cuenta que desea

expirar y, a continuación, haga clic en Modificar.

6. Realice una de las siguientes:

Para bloquear una contraseña, haga clic en Vence

Contraseña ahora.

Para cambiar la contraseña, introduzca una nueva

contraseña en Ingresar Contraseña y Confirmar

contraseña campos. Para bloquear la cuenta,

seleccione Cerrado.

7. Haga clic en Aplicar.

Opción 2:

SQL> ALTER USER nombre de cuenta CUENTA LOCK

Se debe dejar abiertas estas

cuentas para la operación y

administración de Oracle

ALTA HR = EXPIRED & LOCKED

OE = EXPIRED & LOCKED

PM = EXPIRED & LOCKED

IX = EXPIRED & LOCKED

SH = EXPIRED & LOCKED

– Cambiar las contraseñas de usuario por defecto

Al instalar la base de datos Oracle, se crea un conjunto predefinido de cuentas. Usted debe cambiar sus contraseñas.

SYS Cambiar Contraseña Para cambiar las contraseñas de las cuentas

creadas por defecto durante la instalación,

realice lo siguiente:

SQL>ALTER USER Username IDENTIFIED

BY New_password

1.

Es un punto de vulnerabilidad el no cambio de estas

contraseñas ya que no están sujetas a parámetros de

administración de contraseñas.

ALTA

SYSTEM Cambiar Contraseña

SYSMAN Cambiar Contraseña

DBSNMP Cambiar Contraseña

MDSYS Cambiar Contraseña

SCOTT Cambiar Contraseña

– Garantizar Las Cuentas de Usuario

INIT.ora

Los Siguientes Parámetros Aplican A

Todas Las Versiones de Oracle

FAILED_LOGIN_ATTEMPTS = 3

Iniciar base de datos de

control

Nombre de

usuario: SYS

Contraseña:

Introduzca la

contraseña.

De no especificar este parámetro permitirá

que un usuario no autorizado tenga un

numero de intentos para autenticarse en

búsqueda de acertar en la autorización de

acceso a la base de datos

ALTA

Los Siguientes Parámetros Aplican

Únicamente Para La Versión 11g

Este parámetro incremente la seguridad en

las contraseñas de cuentas de usuario ya que

ALTA

Page 16: Ejemplo de Estandar

Estado: Versión 1.0 Página: 16 de 44

Conectar como:

SYSDBA

SQL> ALTER

SYSTEM SET

parameter_name =

valor (Pulse Enter

permite el manejo de Mayúsculas y

Minúsculas

SEC_CASE_SENSITIVE_LOGON

=TRUE

SEC_MAX_FAILED_LOGIN_ATTEMPT

S = 3

De no especificar este parámetro permitirá

que un usuario no autorizado tenga un

numero de intentos para autenticarse en

búsqueda de acertar en la autorización de

acceso a la base de datos y se establece con

FAILED_LOGIN_ATTEMPTS

ALTA

ADMINISTRACION DE CUENTAS DE USUARIO

– Cuentas de Usuarios de Base de Datos

Parámetros para Contraseñas de Usuarios.

Recomendado estrategia SANS

http://www.sans.org/resources/policie

s/Password_Policy.pdf

No aplicar administración de

contraseñas establecería un

margen de vulnerabilidad en las

contraseñas que pueden fatal para

la seguridad ya que cualquier

persona puede tener acceso a la

base de datos

ALTA

Contraseña Débil =10 Caracteres

Contraseña Media =15 Caracteres

Contraseña Fuerte =20 Caracteres

Encriptar las Claves de acceso

Estos parámetros Aplican Únicamente para 9.2.0.4 – 9.2.0.6

SQLNET.ora ORA_ENCRYPT_LOGIN=TRUE Configurar este parámetro

como variable de

ambiente.

Permite la encriptación de claves a través

de la red

ALTA

INIT.ora DBLINK_ENCRYPT_LOGIN=TRUE SQL> ALTER SYSTEM

SET parameter_name =

valor

Permite la encriptación de claves a través

de la red

ALTA

– Perfiles y Recursos de Cuentas de Usuarios

SESSIONS_PER_USER =1 Sentencias SQL

SQL> ALTER PERFIL

Perfil LÍMITE Parameter;

El número máximo de sesiones concurrentes permitido

para cada nombre de usuario

MEDIA

CPU_PER_SESSION =UNLIMITED Total de tiempo de CPU - se mide en centésimas de

segundo

MEDIA

Page 17: Ejemplo de Estandar

Estado: Versión 1.0 Página: 17 de 44

CPU_PER_CALL =3000

CREATE PROFILE

ALTER PROFILE

DROP PROFILE

SQL>CREATE USER

<usuario>

IDENTIFIED BY

<contraseña>/

EXTERNALLY

DEFAULT TABLESPACE

<espacio>

TEMPORARY

TABLESPACE

<espacio>/<grupo_espacio

s>

QUOTA <xx>/UNLIMITED

ON <espacio>

PROFILE <perfil>

PASSWORD EXPIRE

ACCOUNT

LOCK/UNLOCK;

SQL> CREATE PROFILE

Perfil <nombe del perfil>

[parametros_recurso |

parametros_contraseña]

Máximo tiempo de CPU para hacer una declaración

analizar, ejecutar, o la obtención de operación, en

centésimas de segundo.

MEDIA

CONNECT_TIME =600 Total máxima conectar, tiempo transcurrido medido en

minutos

MEDIA

IDLE_TIME =20 Tiempo de inactividad en un periodo de sesiones

medido en minutos, cuando una consulta u otra

operación no se encuentran en progreso.

MEDIA

LOGICAL

READS_PER_SESSION

=DEFAUL Número de bloques de datos (físicos y lógicos

Lecturas) leer en cada período de sesiones, ya sea de

memoria o disco.

BAJA

LOGICAL

READS_PER_CALL

=1000 Número máximo de bloques de datos para leer una

declaración analizar, ejecutar, o la obtención de

operación.

BAJA

PRIVATE_SGA =15K Cantidad máxima de memoria de un período de

sesiones puede asignar a la piscina compartida de los

SGA se mide en bytes, kilobytes, megabytes o (se

aplica a compartidos del servidor solamente).

MEDIA

COMPOSITE_LIMIT =5000000 Total de gasto de recursos, en las dependencias de

servicios, como una suma ponderada de

CPU_PER_SESSION, CONNECT_TIME,

LOGICAL_READS_PER_SESSION, y PRIVATE_SGA.

MEDIA

FAILED_LOGIN_ATTEMPTS =3 (Intentos) Una persona no autorizada tendría tiempo ilimitado

para intentar descifrar una password de un usuario de

la BD.

ALTA

PASSWORD_LIFE_TIME =30 (Días) Numero de días en que un usuario puede utilizar su

contraseña y debe cambiarla

ALTA

PASSWORD_REUSE_TIME =UNLIMITED Este parámetro especifica un límite de tiempo antes de

que una contraseña anterior se pueda volver a entrar.

Para no permitir una nueva contraseña a utilizar para

establecer password_reuse_time

ALTA

PASSWORD_REUSE_MAX =UNLIMITED Este es el número de veces que usted puede volver a

un usuario y las contraseñas se destina a prevenir la

repetición de ciclos contraseña (norte, sur, este, oeste).

ALTA

PASSWORD_VERIFY_FUNC

TION

=

VERIFY_FUNCTION

No podría verificar la complejidad de los password y si

alguno de estos es vulnerable podrían haber robo de

claves, permitiendo accesos de personas no

ALTA

Page 18: Ejemplo de Estandar

Estado: Versión 1.0 Página: 18 de 44

autorizadas a la base de datos

PASSWORD_LOCK_TIME =UNLIMITED Si este parámetro no está especificado, la cuenta

tendría que ser desbloqueada por el DBA

ALTA

PASSWORD_GRACE_TIME =1 (Día) Aunque es parte de la configuración de seguridad para

una contraseña de usuario, es un parámetro que no

genera riesgos muy graves a la seguridad de la

contraseña.

ALTA

PRIVILEGIOS DE USUARIOS

– Privilegios de Seguridad a Usuarios

INIT.ora

RESOURCE_LIMIT=TRUE

Iniciar base de datos de

control

Nombre de usuario:

SYS

Contraseña:

Introduzca la

contraseña.

Conectar como:

SYSDBA

SQL> ALTER SYSTEM

SET parameter_name

= valor (Pulse Enter)

Habilitar o deshabilitar la limitación de recursos mediante

perfiles

MEDIA

MAX_ENABLED_ROLES=30

Especifica el número máximo de funciones de base de

datos que puede permitir a los usuarios, incluidas las

funciones contenidas dentro de otras funciones.

ALTO

SQL92_SECURITY=FALSE

Especifica si el usuario tiene el privilegio SELECT sobre

un objeto. Para ejecutar UPDATE o DELETE

ALTA

OS_ROLES = FALSE

Determina si Oracle o el sistema operativo identifica y

gestiona las funciones de cada nombre de usuario

ALTA

REMOTE_OS_AUTHENT=FA

LSE

Especifica si el S.O permite que los clientes remotos

ejecuten funciones.

ALTA

REMOTE_OS_ROLES=FALS

E

Especifica un prefijo que la base de datos Oracle utiliza

para autenticar a los usuarios que intentan conectarse a

la base de datos. Las Bases de datos Oracle concatena

el valor de este parámetro para el inicio del sistema

operativo, el nombre de usuario, el nombre de cuenta y

contraseña.

ALTA

Revocar privilegios Innecesarios a Usuarios

UTL_FILE =REVOKE ACCESS SQL> REVOKE EXECUTE ON <Privilege> FROM PUBLIC

Nota: Directorios de acceso a la UTL _FILE paquete debe ser

creado utilizando el comando CREATE DIRECTORY Por

ejemplo los siguientes comandos para crear dos directorios y

Estos privilegios incluyen

EXECUTE sobre diversos

paquetes PL / SQL, permitiendo

a alguien con un mínimo de

privilegios para el acceso pueda

ejecutar las funciones.

ALTA

UTL_TCP =REVOKE ACCESS

UTL_HTTP =REVOKE ACCESS

UTL_SMTP =REVOKE ACCESS

UTL_INADDR =REVOKE ACCESS

Page 19: Ejemplo de Estandar

Estado: Versión 1.0 Página: 19 de 44

DBMS_JAVA =REVOKE ACCESS autorizar DBA grupo y el usuario para acceder a APPUSER

SQL> CREATE DIRECTORY log_dir AS '/appl/gl/log';

SQL> GRANT READ ON DIRECTORY log_dir TO DBA;

SQL> GRANT WRITE ON DIRECTORY log_dir TO DBA;

SQL> CREATE DIRECTORY out_dir AS '/appl/gl/appuser'';

SQL> GRANT READ ON DIRECTORY user_dir TO appuser;

SQL> GRANT WRITE ON DIRECTORY user_dir TO appuser;

SQL> REVOKE SELECT ON all_users FROM PUBLIC

DBMS_RANDOM =REVOKE ACCESS

DBMS_SQL =REVOKE ACCESS

DBMS_SYS_SQL =REVOKE ACCESS

DBMS_BACKUP_RE

STORE

=REVOKE ACCESS

ALL_USERS =REVOKE ACCESS

Grant <permiso> on

<objeto> to public;

Revocar los siguientes

permisos: select, delete,

update, y all referentes a

privilegios del usuario

public

Revisar la vista DBA_TAB_PRIVS para encontrar los

objetos con permisos otorgados a PUBLIC y revocarlos

con:

REVOKE <permiso> ON <objeto> FROM PUBLIC;

Restringir el uso de privilegios

que afectan la integridad de la

base de datos.

ALTA

Grant

<privilegio_sistema>

to public;

Revocar los siguientes

permisos: create user,

create type, etc al usuario

public.

Revisar la vista DBA_SYS_PRIVS para encontrar los

privilegios de Nivel del Sistema otorgados a PUBLIC, y

revocarlos con REVOKE <permiso> FROM PUBLIC;

Restringir el uso de privilegios que

afectan la integridad de la base de

datos

ALTA

Grant <rol> to public; Revocar roles asignados al

pseudo usuario PUBLIC.

Revisar la vista DBA_ROLE_PRIVS para identificar

roles asignados a PUBLIC y revocarlos con; REVOKE

<rol> from PUBLIC;

Restringir el uso de privilegios que

afectan la integridad de la base de

datos

ALTA

ANY No se deben otorgar

permisos del sistema

(CREATE, DROP, ALTER,

EXECUTE

Revocar los permisos asignados con esta opción.

REVOKE <permiso> ANY <objeto> FROM <usuario>;

Restringir el uso de privilegios que

afectan la integridad de la base de

datos

ALTA

ASEGURAR LA RED

– Asegurar el Cliente de Conexión a la Red

INIT.ora

REMOTE_LISTENER = network_name

Nombre de usuario: SYS

Contraseña: Introduzca la

contraseña.

Conectar como: SYSDBA

SQL> ALTER SYSTEM

SET parameter_name =

valor (Pulse Enter)

Especificar el nombre de la red ALTA

OS_AUTHENT_PREFIX= ""

Especifica un prefijo que la base de

datos Oracle utiliza para autenticar a

los usuarios que intentan conectarse

ALTA

Page 20: Ejemplo de Estandar

Estado: Versión 1.0 Página: 20 de 44

a la base de datos.

SQLNET.ora

SSL_CLIENT_AUTHENTICATION =

TRUE

/u01/app/oracle/product/ para

Oracle 10g;

/network/ admin/ sqlnet.ora para

Oracle 11g

Nota: Cuando configure

SSL_SERVER_DN_MATCH en

el sqlnet.ora, configurar el

tnsnames.ora el parámetro

SSL_SERVER_CERT_DN

Especifica que un cliente es

autenticado con Secure Sockets

Leyer (SSL)

ALTA

OSS.SOURCE.MY_WALLET = (SOURCE

= (SHAPE = File) (METHOD_DATA = (=

DIRECTORY = <wallet_location>)))

Define el método para recuperar y

almacenar las credenciales para este

cliente

ALTA

SSL_CIPHER_SUITES=

SSL_RSA_WITH_RC4_128_SHA)

Utilice el parámetro

SSL_CIPHER_SUITES para controlar

lo que la combinación de cifrado y la

integridad de los datos sean utilizadas

por el SSL.

ALTA

SSL_VERSION= 0 Use SSL_VERSION el parámetro a la

fuerza la versión de la conexión SSL.

ALTA

SSL_SERVER_DN_MATCH = YES ALTA

TNSNAMES.ora

<addressname> =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(Host =

<hostname>)(Port = <PORT>))),

(CONNECT_DATA =

(SERVICE_NAME = <sid>)

),

),

Establecer este archivo de

configuración básica para

permitir la conexión del cliente

con la Base de Datos Oracle

ALTA

LISTENER.ora

SSL_CLIENT_AUTHENTICATION =

FALSE

/u01/app/oracle/product/ para

10; /network/ admin/

listener.ora para 11

Nota:

Conexión a la Base de Datos:

CONNECT / @

dnet_service_name

Especifica que un cliente es autenticado

con Secure Sockets Leyer (SSL)

ALTA

OSS.SOURCE.MY_WALLET = (SOURCE

= (SHAPE = File) (METHOD_DATA =

(DIRECTORY = <wallet_location>)))

Define el método para recuperar y

almacenar las credenciales para este

cliente

ALTA

Page 21: Ejemplo de Estandar

Estado: Versión 1.0 Página: 21 de 44

SSL_CIPHER_SUITES=

(SSL_RSA_WITH_RC4_128_SHA)

Utilice el parámetro

SSL_CIPHER_SUITES para controlar lo

que la combinación de cifrado y la

integridad de los datos sean utilizadas

por el SSL.

ALTA

SSL_VERSION= 0

Use SSL_VERSION el parámetro a la

fuerza la versión de la conexión SSL.

ALTA

– Garantizar la Conexión de Red - Encriptación

SQLNET.ora

SQLNET.CRYPTO_SEED = "10-70 random

characters"

/ u01/app/oracle/product/ 10

o 11 /network/ admin/

sqlnet.ora

SQL>tcp.exluded_nones =

(lista de direcciones IP

tcp.invited_nodes) = (lista

de direcciones IP)

Use un firewall.

Debidamente colocado y

configurado el firewall

puede impedir que fuera el

acceso a su intranet:

Mantener el servidor de

base de datos detrás

de un firewall

Asegúrese de que el

firewall se coloca fuera de

la red para ser protegida.

firewall para aceptar

sólo los protocolos,

aplicaciones o cliente /

servidor de fuentes que

usted sabe son

seguros.

Utilice un producto,

tales como Oracle

Connection Manager

para múltiplex de

Especifica los caracteres utilizados en

la generación de claves criptográficas.

Esto es necesario cada vez que el

cifrado o checksumming está

encendido.

ALTA

SQLNET.ENCRYPTION_TYPES_CLIENT = SHA- 1 Los algoritmos se definen en el archivo

sqlnet.ora, los algoritmos instalados se

utilizan con el fin de negociar una

solución mutuamente aceptable con el

otro extremo de la conexión.

ALTA

SQLNET.ENCRYPTION_TYPES_SERVER = SHA- 1 Los algoritmos se definen en el archivo

sqlnet.ora, los algoritmos instalados se

utilizan con el fin de negociar una

solución mutuamente aceptable con el

otro extremo de la conexión.

ALTA

SQLNET.ENCRYPTION_CLIENT= REQUEST Este parámetro especifica el

comportamiento deseado cuando este

cliente (o este servidor que actúa como

cliente) se conecta a un servidor.

ALTA

SQLNET.ENCRYPTION_SERVER= REQUEST Este parámetro especifica el

comportamiento deseado cuando un

cliente o un servidor que actúa como

un cliente se conectan a este servidor

ALTA

SQLNET.CRYPTO_CHECKSUM_SERVER=

REQUEST

Este parámetro especifica la integridad

de los datos deseados comportamiento

cuando un cliente (o otro servidor que

actúa como cliente) se conecta a este

servidor

ALTA

Page 22: Ejemplo de Estandar

Estado: Versión 1.0 Página: 22 de 44

SQLNET.CRYPTO_CHECKSUM_CLIENT= EQUEST múltiples clientes,

sesiones de red a

través de una única

conexión de red a la

base de datos.

Este parámetro especifica la integridad

de los datos deseados cuando el

comportamiento de este cliente (o este

servidor que actúa como cliente) se

conecta a un servidor.

ALTA

SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT =

RC4_256

Este parámetro especifica una lista de

algoritmos de cifrado que el cliente (o

un servidor que actúa como cliente)

utiliza cuando se conecta a un servidor.

Si un algoritmo que no está instalado

se especifica en este lado, la conexión

termina con el mensaje de error ORA-

12650.

ALTA

SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER=

RC4_256

Este parámetro especifica una lista de

algoritmos de cifrado utilizado por el

servidor, en el orden del destino.

Introduzca el algoritmo más deseado

en primer lugar. Si un algoritmo que no

está instalado se especifica en este

lado, la conexión termina con el

mensaje de error ORA-12650.

ALTA

SQLNET.EXPIRE_TIME = 10 Determina el intervalo de tiempo para

enviar un sondeo y para comprobar

que está activo.

MEDIA

SQLNET.FIPS_140 = TRUE Permite garantizar Oracle Advanced

Security cumpla con las normas

definidas en FIPS 140-1

ALTA

Comprobar permanentemente las direcciones IP

de red para esto utilice el Oracle Net válido para las

características de control de seguridad para permitir o

denegar el acceso a Oracle servidor procesos de los

clientes de la red con dirección IP concreta.

Restringe el acceso a un período de

sesiones de los clientes a los destinos

privilegios que permiten una acogida.

ALTA

TCP.VALIDNODE_CHECKING = YES

TCP.EXCLUDED_NODES = (lista de direcciones IP)

Utilice el parámetro para especificar

que los clientes se les niegan el acceso

ALTA

Page 23: Ejemplo de Estandar

Estado: Versión 1.0 Página: 23 de 44

a la base de datos.

TCP.INVITED_NODES = (lista de direcciones IP)

Utilice el parámetro para especificar

que los clientes se les permite el

acceso a la base de datos

ALTA

REMOTE_LOGIN_PASSWORDFILE = NONE Oracle especifica si los controles de un

archivo de claves y el número de bases

de datos pueden utilizar el archivo de

contraseñas.

MEDIA

listener.ora

Restringir el oyente a las direcciones IP configure el

oyente a la dirección IP específica.

Asegúrese de que la contraseña no se ha fijado en el

archivo listener.ora.

Remove_Password

ADMIN_RESTRICTIONS_LISTENER = ON

LSNRCTL> remove_password

/ u01/app/oracle/product/ 10 o 11

/network/ admin/ listener.ora

Nota: Usar SSL cuando se

administre el listener , Haciendo

que los TCPs de la primera

entrada en la lista de direcciones

de la siguiente manera:

= Listener (descripción =

(ADDRESS_LIST = (=

DIRECCION (PROTOCOLO =

TCPs) (HOST = ed-

pdsun1.us.oracle.com) (PORT =

8281)))

Para administrar remotamente

el listener. Definir el listener en

el listener.ora archivo en el

cliente. Por ejemplo, para el

acceso remoto USER281 listener

, utiliza la siguiente

configuración:

user281 = (DESCRIPCIÓN = (=

DIRECCION (PROTOCOLO =

TCPs) (HOST = ed-

pdsun1.us.oracle.com) (PORT =

Evitar el acceso al Listener.ora ALTA

SQLNET.FIPS_140 = TRUE Restringir la administración del

Listener. El parámetro es útil si el

Listener no está protegido por

contraseña.

ALTA

Controlar el comportamiento del listener

Todos los cambios realizados por el

comando SET LSNRCTL se harán

permanentes si el parámetro es TRUE.

MEDIA

SAVE_CONFIG_ON_STOP_listener = TRUE

LOGGING_listener = ON El registro está siempre a menos que

usted proporcione este parámetro.

MEDIA

Page 24: Ejemplo de Estandar

Estado: Versión 1.0 Página: 24 de 44

8281))))

– Endurecer el Sistema Operativo Anfitrión

Deshabilitar algunos

servicios del sistema

operativo que no son

necesarios para Oracle y si

vulneran su seguridad.

FTP=DISABLE

TFTP=DISABLE

TELNET=DISABLE

TCP = CLOSED

UDP=CLOSED

Cerrar para los puertos cada servicio

que se está desactivado

Para aplicar a estas

recomendaciones es necesario

remitirse al estándar del sistema

operativo que tenga configurado

para Oracle.

Desactivar todos los sistemas

operativos innecesarios servicios.

Tanto UNIX y Windows

proporcionan una variedad de

servicios de sistemas operativo, la

mayoría de los cuales no son

necesarias

ALTA

– Permisos sobre los directorios donde reside el software

Permiso de escritura 755 LS-ALR> recursivels.txt

$ ORACLE_HOME / bin establecidos para 0755

y todos los demás ORACLE_HOME a $ 0750

cat /etc /passwd

Nota:

Tener el control de los archivos que deberían ser propiedad de la cuenta Oracle.

Compruebe los permisos de archivos en $ ORACLE_HOME/bin y $ ORACLE_HOME y todos deben ser

propiedad de ORACLE y la pertenencia a un grupo comprobado.

COPIAS DE SEGURIDAD

Es necesario, además de disponer de un plan de copia y recuperación, anticiparse a posibles problemas.

Un aspecto básico es tener múltiples copias de los archivos de “redo” en línea así como de los archivos de control y del “redo” archivado y que estas copias residan

cada una en un disco físico diferente.

Si un fallo daña una de las copias de “redo” en línea, la bd puede continuar sin interrupción. Si no se dispone de copias y se daña el “redo”, la bd se detiene y

pueden perderse datos.

Si se daña cualquier archivo de control, esté o no multiplexado, la bd se detiene cuando se intenta leer o escribir en dicho archivo.

Es necesario anotar la configuración “hw” y “sw” del servidor.

– Nombre, fábrica y modelo de la máquina donde reside la bd.

– Versión del s.o.

– Número de discos y controladoras

Page 25: Ejemplo de Estandar

Estado: Versión 1.0 Página: 25 de 44

– Capacidad de disco y espacio libre.

– Nombre de todos los archivos de datos.

– Nombre y versión del sw de gestión de almacenamiento.

– Nombre de la instancia (SID).

– Identificador de la bd (DBID).

– Versión y parche del servidor Oracle.

– Versión y parche del sw de comunicaciones.

– Método y frecuencia de las copias así como de la recuperación

Conjunto de Redundancia.

Está integrado por los archivos necesarios para recuperar la bd: Copia del archivo de control y de todos los archivos de datos (“datafiles”), “redo log” archivado,

duplicado de los “redo log” en línea y del archivo de control actual y archivos de configuración (archivo de parámetros, tnsnames.ora y listener.ora). El conjunto de

redundancia debe estar en discos distintos de aquellos que contienen archivos de datos, “redo” en línea y archivos de control. También se aconseja mantener distintas

copias del conjunto.

Es aconsejable hacer copias espejo del archivo de control. Es necesario que todas las copias del archivo de control estén accesibles o caería la instancia.

Hacer copias espejo de los archivos de datos si es posible para evitar la realización de “media recovery” debido a un fallo de disco.

Copia en modo ARCHIVELOG.

Disponer de múltiples destinos de archivado (entre ellos puede figurar la “flash recovery area”).

Copiar la bd al completo tras su creación o paso a modo ARCHIVELOG.

Realizar copias de los tbsp con la bd abierta o cerrada. En particular de aquellos de uso intensivo deben hacerse copias frecuentes (para reducir el tiempo de

recuperación).

Copiar el archivo de control cada vez que se realice un cambio estructural en la bd (“ALTER DATABASE BACKUP CONTROLFILE”).

Copiar los “redo log” archivados frecuentemente. Es conveniente realizar copias a varios soportes (cinta, disco, ...).

Realizar copias de manera frecuente y regular (más frecuencia a mayor número de operaciones DML).

Realizar copias antes y después de cambios en la estructura de la bd (creado/borrado de tbsp, adición/renombrado de datafiles, adición, renombrado o

borrado de “redo log” en línea).

Realizar copia después de operaciones con la opción NOLOGGING, creación de tablas e índices, puesto que la bd no genera “redo” para dichos objetos y no

podrían recuperarse desde las copias existentes.

Realizar copia completa después de abrir la bd con la opción RESETLOGS.

Guardar las copias antiguas de la bd.

Realizar copias lógicas de la bd, como complemento a las copias físicas, puesto que no son sustitutivos de las mismas.

Evitar la copia de “redo log” en línea pues accidentalmente pueden ser restaurados y corromper la bd.

La mejor forma de protegerlos es tener múltiples miembros en cada grupo, y en diferentes discos.

Si la bd está en modo ARCHIVELOG, el proceso ARC guarda los “redo” que se han llenado. Si la bd está en modo NOARCHIVELOG, el único tipo de copias

válido es el realizado con la bd cerrada, consistente y completo; los archivos en este tipo de copia son todos consistentes y no necesitan recuperación ni, por

Page 26: Ejemplo de Estandar

Estado: Versión 1.0 Página: 26 de 44

tanto, los “redo” en línea.

Pueden restaurarse, por error, copias de los “redo log” en línea y corromper la bd.COPIAS

– Parámetros de Copia de Seguridad

INIT.ora

LOG_ARCHIVE_START= TRUE

Nombre de usuario: SYS

Contraseña: Introduzca la

contraseña.

Conectar como: SYSDBA

SQL> ALTER SYSTEM SET

parameter_name = valor (Pulse

Enter)

Se indica si los logs se guardan de

manera automática o manual cuando

se inicia la instancia

MEDIA

LOG_ARCHIVE_DUMP= lugar físico

donde se almacenan los archivos

Lugar donde se almacena los archivos ALTA

LOG_ARCHIVE_FORMAT =

"LOG%t_%s_%r.ARC"

Permite indicar el formato de nombre

que se aplicará a los archive.

ALTA

LOG_ARCHIVE_DEST_STATE_n=

Alternate

Permite especificar hasta diez destinos

de archivado

BAJA

LOG_ARCHIVE_MIN_SUCCEED_DEST

=2

Determina el mínimo número de

destinos de archive que debe poder

escribirse satisfactoriamente antes de

reutilizar el “redo log” en línea. Su valor

por defecto es 1

MEDIA

LOG_ARCHIVE_DEST_1 =

'LOCATION=// arch_dir_name'

Destino del archive ALTA

LOG_BUFFER=8Mb Especifica la cantidad de memoria (en

bytes) que Oracle.

MEDIA

ARCHIVELOG=ACTIVAR Activar este modo de trabajo para tener

una recuperación que incluya hasta la

última transacción de la base de datos

ALTA

LOG_ARCHIVE_DEST_STATE_1 =

ENABLE

LOG_ARCHIVE_DEST_2 =

'LOCATION=<USE_DB_RECOVERY_FI

LE_DEST>

Otra ruta de ubicación de la copia de

seguridad

MEDIA

Activar el

modo de

trabajo

ARCHIVELOG

Activar este modo de trabajo para tener

una recuperación hasta la última

transacción de la base de datos

Subir la BD: shutdown;

Arrancar la instancia y montar la BD con: startup mount BD;

Teclear la siguiente orden: alter database [dbname] archivelog;

Abrir la BD con: alter database [dbname] open;

Page 27: Ejemplo de Estandar

Estado: Versión 1.0 Página: 27 de 44

Guardar todos los archivos redo log pendientes de Archivar: alter system archive log all;

Recomendación: Deben hacerse periódica y frecuentemente copias completas y coherentes de la bd

(con la bd cerrada consistentemente)

– Recuperación de Backups

INIT.ora

DB_RECOVERY_FILE_DEST_SIZE=21474836

48

ALTER SYSTEM SET

DB_RECOVERY_FILE_DE

ST_SIZE=2147483648

Especifica (en bytes) el límite total de

espacio para ser utilizado con objetivo

la recuperación de archivos de base de

datos creada en la zona de

recuperación de flash.

MEDIA

DB_RECOVERY_FILE_DEST = C: \ ORACLE \

RECOVERY_AREA

ALTER SYSTEM SET

DB_RECOVERY_FILE_DE

ST = C: \ ORACLE \

RECOVERY_AREA

Especifica la ubicación por defecto para

el flash zona de recuperación

MEDIA

DB_FLASHBACK_RETENTION_TARGET=4320

(2 Dias tempo en minutos)

ALTER SYSTEM SET

DB_FLASHBACK_RETEN

TION_TARGET=4320

Hasta dónde se puede retroceder un

flashback de una base de datos

depende de cuánto flashback de datos

Oracle se ha mantenido en la zona de

recuperación de flash.

MEDIA

Activar

FLASHBACK

DATABASE.

FLASHBACK=ON

Para activarla

Asegúrese de que la base

de datos está en modo de

archivo

SQL> startup MONTE

EXCLUSIVO;

SQL>ALTER DATABASE

FLASHBACK ON

Para desactivar

SQL>ALTER DATABASE

FLASHBACK OFF

“Flashback Database” permite

“retroceder” la bd al completo y

deshacer los efectos de cambios no

deseados en la bd

ALTA

CONFIGURACION DE LA UTILIDAD DE ORACLE RMAN PARA BACKUP Y RECOVERY

– Revisar Los Ajustes de Configuración Por Defecto

Page 28: Ejemplo de Estandar

Estado: Versión 1.0 Página: 28 de 44

Verificar ajustes actuales de configuración por defecto:

RMAN> SHOW RETENTION POLICY;

RMAN> SHOW DEFAULT DEVICE TYPE;

Restaurar los ajustes de configuración por defecto:

RMAN> CONFIGURE BACKUP OPTIMIZATION CLEAR;

RMAN> CONFIGURE RETENTION POLICY CLEAR;

RMAN> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK CLEAR;

Parámetros De Configuración

Configuración de copia de

seguridad de optimización

CONFIGURE BACKUP OPTIMIZATION ON RMAN> CONFIGURE

Configurar una directiva

de retención:

CONFIGURE RETENTION POLICY TO

RECOVERY WINDOW OF 3 DAYS

RMAN> CONFIGURE

Configuración automática

de disco y cinta canales

CONFIGURE CHANNEL DEVICE TYPE DISK

FORMAT '/?/%U';

CONFIGURE CHANNEL DEVICE TYPE sbt

PARMS 'ENV=(NSR_SERVER=bksrv1)';

CONFIGURE DEFAULT DEVICE TYPE TO sbt;

CONFIGURE DEVICE TYPE sbt PARALLELISM 2;

RMAN> CONFIGURE

Configuración automática

de canales en todos los

sistemas de archivos

CONFIGURE DEVICE TYPE DISK PARALLELISM

3;

CONFIGURE CHANNEL 1 DEVICE TYPE DISK

FORMAT '/disk1/backup/%U';

CONFIGURE CHANNEL 2 DEVICE TYPE DISK

FORMAT '/disk2/backup/%U';

CONFIGURE CHANNEL 3 DEVICE TYPE DISK

FORMAT '/disk3/backup/%U'; BACKUP DEVICE

TYPE DISK DATABASE PLUS ARCHIVELOG;

RMAN> CONFIGURE

Configurar el Paralelismo CONFIGURE DEVICE TYPE DISK PARALLELISM 2

BACKUP TYPE TO BACKUPSET

RMAN> CONFIGURE

Configuración de las copias CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE RMAN> CONFIGURE

Page 29: Ejemplo de Estandar

Estado: Versión 1.0 Página: 29 de 44

de seguridad TYPE DISK TO 3; BACKUP DEVICE TYPE DISK

DATABASE FORMAT '/disk1/backup/%U',

'/disk2/backup/%U', '/disk3/backup/%U';

Cifrado por defecto para la

base de datos

CONFIGURE ENCRYPTION FOR DATABASE OFF RMAN> CONFIGURE

Algoritmo DE Cifrado CONFIGURE ENCRYPTION ALGORITHM „AES128′ RMAN> CONFIGURE

Especificando el formato

predeterminado para el

control del archivo

Autobackup

CONFIGURE CONTROLFILE AUTOBACKUP ON;

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT

FOR DEVICE TYPE DISK TO '?/oradata/%F';

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT

FOR DEVICE TYPE sbt TO 'cf_auto_%F';

RMAN> CONFIGURE

AUDITORIA A LA ACTIVIDAD DE LA BASE DE DATOS

– Inicialización de parámetros para la

Auditoria

INIT.ora

Los Siguientes Parámetros Aplican A Todas

Las Versiones De Oracle

SQL> ALTER SYSTEM SET

parameter_name = valor (Pulse Enter)

SQL> ALTER SYSTEM SET

audit_sys_operations = true scope = spfile;

Recomendación: Crear un tablespace

exclusivo para los datos de la auditoría

- Crear el tablespace

CREATE TABLESPACE audit_db

DATAFILE „/db1/ORACLE/test/audit1.dbf‟

SIZE 25M;

- Crear una copia de la tabla AUD$.

CREATE TABLE aud_tmp

TABLESPACE audit_db

STORAGE (INITIAL 10M

AUDIT_TRAIL=DB Activa o desactiva la

Auditoria, no activarla

permitirá que no se realicen

seguimiento a las acciones

sobre Oracle

ALTA

AUDIT_FILE_DEST=ORACLE_HOME /

DBMS / auditoria

Especifica el directorio del

sistema operativo para

auditoría.

ALTA

AUDIT_SYS_OPERATIONS=TRUE Activa o desactiva la

auditoría de las operaciones

emitidas por el usuario SYS,

y los usuarios que se

conectan con SYSDBA o

SYSOPER

ALTA

Page 30: Ejemplo de Estandar

Estado: Versión 1.0 Página: 30 de 44

Los Siguientes Parámetros Aplican

Únicamente Para la Versión 11g

AUDIT_SYSLOG_LEVEL = 'facility_clause.

Priority_clause'

Nota: Establecer la longitud máxima de

mensajes syslog en el sistema a 512 bytes.

NEXT 1M

MINEXTENTS 1

MAXEXTENTS 10

PCTINCREASE 1)

AS SELECT * FROM sys.aud$;

- Borrar la tabla original:

DROP TABLE sys.aud$;

- Renombrar la copia de la tabla:

RENAME audit_tmp TO aud$;

Auditoría

de tipo de órdenes

o comandos

AUDIT

La auditoría de objetos se debe habilitar a nivel de

sesión para evitar Incrementar en forma exagerada

el ritmo al que se generan las pistas.

Las pistas de auditoria deben ser verificadas y

revisadas diariamente así como también cada

cinco días guardar y limpiar los registros. El tamaño

de la pista de auditoria no debe exceder un 2% del

almacenamiento en disco.

AUDIT comando_a_auditar

BY usuario /*Sólo órdenes de un usuario*/

BY SESSION /*Una solo línea por órdenes

ejecutadas en una sesión*/

BY ACCESS /*Una línea por cada orden

auditada*/

WHENEVER SUCCESSFUL /*Sólo las órdenes

que han tenido éxito*/

WHENEVER NOT SUCCESSFUL /*Sólo órdenes

fallidas*/

SQL> AUDIT SESSION;

Auditoría terminada con éxito.

SQL> AUDIT CREATE TABLE BY SESSION;

Auditoría terminada con éxito.

SQL> AUDIT TABLE WHENEVER NOT

SUCCESSFUL;

Auditoría terminada con éxito.

Nota: para ampliar la información en relación a al

pista de auditoria remitirse al siguiente Link:

http://74.125.93.104/translate_c?hl=es&langpair=e

n%7Ces&u=http://download.oracle.com/docs/cd/B

28359_01/network.111/b28531/auditing.htm&prev

=/translate_s%3Fhl%3Des%26q%3DLA%2BAUDI

TORIA%2BEN%2BORACLE%26sl%3Des%26tl%

3Den&usg=ALkJrhiBHipB8PvcOwsv4gXumVmd6X

D2_g

Auditar acciones

relacionadas con las

instrucciones de comando u

órdenes dadas en el Oracle

ALTA

Page 31: Ejemplo de Estandar

Estado: Versión 1.0 Página: 31 de 44

Auditoría de

privilegios de

sistema

AUDIT CREATE ANY INDEX SQL> AUDIT CREATE ANY INDEX;

Auditoría terminada con éxito.

SQL> AUDIT CREATE ANY INDEX WHENEVER

NOT SUCCESSFUL;

Auditoría terminada con éxito.

Auditar acciones

relacionadas con los

privilegios asignados a los

usuarios

ALTA

Auditoría sobre los

objetos

Auditar sys.aud$

Se debe auditar todos las actividades que intenta

realizar un usuario sobre la tabla

sys.aud$. No hay que permitir que algún usuario

vea esta información.

AUDIT delete, select, update, insert ON sys.aud$

BY ACCESS

Auditar acciones

relacionadas con los objetos

establecidos en Oracle

ALTA

DELETE_CATAL

OG_ROLE

Rol que solo debe ser asignado al DBA, para evitar

que se borre información de la tabla sys.aud$ por

usuarios no autorizados.

REVOKE DELETE_CATALOG_ROLE from

<usuarios_no_dba>;

Solo el DBA debe tener

asignado este rol, para

evitar que se borre

información de la tabla

sys.aud$ por usuarios no

autorizados.

ALTA

11..1100 GGUUÍÍAA DDEE AAUUDDIITTOORRIIAA PPAARRAA EELL EESSTTÁÁNNDDAARR

Fecha

Revisión

(D/M/A)

Nombre Auditor Firma Nombre

Especialista

Plataforma

Firma

Parámetro / Componente Valor requerido Resultado Observaciones /

Comentarios /

Recomendación

Evidencia

LA BASE DE DATOS DE INSTALACIÓN Y CONFIGURACIÓN

Verificación de la configuración de seguridad

AUDIT_TRAIL BD

O7_DICTIONARY_ACCESSIBILITY FALSE

PASSWORD_GRACE_TIME 1

Page 32: Ejemplo de Estandar

Estado: Versión 1.0 Página: 32 de 44

PASSWORD_LOCK_TIME UNLIMITED

PASSWORD_LOGIN_FAILURES 3

PASSWORD_LIFE_TIME 30

PASSWORD_REUSE_MAX UNLIMITED

PASSWORD_REUSE_TIME UNLIMITED

REMOTE_OS_ROLES FALSE

SEC_RETURN_SERVER_RELEASE_BANNER FALSE

VERIFICAR QUE ESTEN SEGURAS LAS CUENTAS DE USUARIOS PREDEFINIDAS

CUENTAS ADMINISTRATIVAS

PREDEFINIDAS

OPEN o EXPIRED &

LOCKED

Verifique las cuentas que

hay que tener abiertas o

cerradas de cuentas

administrativas

predefinidas en la Pág. 14

de este estándar

CUENTAS NO ADMINISTRATIVAS

PREDEFINIDAS

EXPIRED & LOCKED

CUENTAS DE EJEMPLO DE ESQUEMA

PREDEFINIDOS

EXPIRED & LOCKED

SEC_CASE_SENSITIVE_LOGON TRUE

SEC_MAX_FAILED_LOGIN_ATTEMPTS 3

FAILED_LOGIN_ATTEMPTS 3

VERIFIQUE LOS PARÁMETROS UTILIZADOS PARA LOS PRIVILEGIOS DE SEGURIDAD

OS_ROLES FALSE

Page 33: Ejemplo de Estandar

Estado: Versión 1.0 Página: 33 de 44

MAX_ENABLED_ROLES FALSE

REMOTE_OS_ROLES 30

SQL92_SECURITY FALSE

PASSWORD_VERIFY_FUNCTION VERIFY_FUNCTION

Verifique la política de contraseñas si esta

habilitado

Para ello, comprobar el

valor del atributo

orclpwdpolicyenable en la

política de contraseñas de

entrada. Un valor de 1

indica que la contraseña

está habilitada

1 =

Habilitado

0 = No

habilitado

VERFIQUE LOSPARAMETROS BASICOS PARA LA SEGURIDAD DE LA RED

OS_AUTHENT_PREFIX “”

REMOTE_LISTENER

Especifica un nombre de red

que resuelve a una dirección o

lista de direcciones de Red de

Oracle remoto oyentes (es

decir, los oyentes que no se

están publicando en el mismo

equipo). La dirección o lista de

direcciones se especifica en el

tnsnames.ora archivo u otra

dirección como repositorio

configurado para su sistema.

REMOTE_OS_AUTHENT FALSE

REMOTE_OS_ROLES FALSE

VERIFICAR QUE ESTÉN ACTIVOS LOS PARÁMETROS UTILIZADOS PARA LA AUDITORÍA

AUDIT_TRAIL BD

Page 34: Ejemplo de Estandar

Estado: Versión 1.0 Página: 34 de 44

AUDIT_FILE_DEST ORACLE_HOME / RDBMS /

auditoria

AUDIT_SYS_OPERATIONS TRUE

OTROS ASPECTOS A VERIFICAR

Buscar cualquier sistema de privilegios que

se conceden privilegios de administrador

Verificar en el

DBA_SYS_PRIVS

Verificar Todos los privilegios asignados a

las cuentas de usuarios de la Base de Datos

Acceder al diccionario de datos

para verificar los privilegios, role

y recursos a signados a cada

usuario de la Base de Datos

Verifique las configuraciones de Backup y

Recovery tener siempre habilitado

FLASHBACK

ARCHIVELOG

ON

Activo

Obtener información de Auditoría Vistas sobre la tabla SYS.DBA$:

AUDIT_ACTIONS Tabla con tipos de acción de la auditoría (acción, nombre)

ALL_DEF_AUDIT_OPTS Opciones por defecto auditoría (ALT, AUD, COM, DEL, GRA, IND, INS, LOC, REN, SEL, UPD, REF, EXE)

DBA_AUDIT_EXISTS Registros de auditoría del sistema (AUDIT EXISTS)

DBA_AUDIT_OBJECT Todos los objetos del sistema

DBA_AUDIT_SESSION CONNECT y DISCONNECT

DBA_AUDIT_TRAIL Todo el sistema

DBA_STMT_AUDIT_OPTS Opciones actuales sobre el sistema y por el usuario

USER_AUDIT_EXISTS Reg. A. del usuario (AUDIT EXISTS)

USER_AUDIT_OBJECTS Los objetos del usuario

USER_AUDIT_SESSION CONNECT y DISCONNECT usuario

USER_AUDIT_TRAIL Reg. Auditoría por usuario

USER_OBJ_AUDIT_OPTS Tablas y vistas del usuario

Page 35: Ejemplo de Estandar

Estado: Versión 1.0 Página: 35 de 44

11..1111 SSIITTIIOOSS DDEE RREEFFEERREENNCCIIAA EENN IINNTTEERRNNEETT

En la siguiente lista encontrará algunos de los sitios de referencia que han sido consultados y que le pueden servir para

referencias futuras tanto en la instalación, configuración, vulnerabilidades y lineamientos a seguir.

Base de Datos Oracle Guía de instalación

http://www.sans.org/resources/policies/Password_Policy.pdf

www. Oracle.com – Conceptos

La página de Oracle.com contiene toda la información relacionada con todas las versiones de la herramienta y en especial el tema

relacionado con los conceptos sobre Oracle

www. Oracle.com – Guía de Seguridad

La página de Oracle.com contiene toda la información relacionada con todas las versiones de la herramienta y en especial el tema

de seguridad

www. Oracle.com – Guía de Configuración

La página de Oracle.com contiene toda la información relacionada con todas las versiones de la herramienta y en especial el tema

relacionado con la configuración

www. Oracle.com – Guia de Administración

La página de Oracle.com contiene toda la información relacionada con todas las versiones de la herramienta y en especial el tema

relacionado con la Administración de Oracle

Para visualizar parches de seguridad. Sitio de referencia:

http://otn.oracle.com/deploy/security/alerts.html

Revise periódicamente el sitio sobre seguridad Oracle Technology Network para obtener más información acerca las

publicaciones de seguridad por Oracle en http://www.oracle.com/technology/deploy/security/alerts.htm

Page 36: Ejemplo de Estandar

Estado: Versión 1.0 Página: 36 de 44

También revise el Mundo Oracle Servicio de Apoyo sitio, Oracle MetaLink , para más detalles disponibles acerca de próximas y

relacionadas con la seguridad en parches http://metalink.oracle.com http://metalink.oracle.com

11..1122 AANNEEXXOOSS

A continuación presentamos información asociada a la instalación y configuración de la Base de Datos Oracle e información sobre

seguridad.

Anexo A: LA PROTECCIÓN DE DATOS EN LA RED. USO DEL CIFRADO

Además de proteger mediante la encriptación de información en la base de datos de nivel, hay que protegerla cuando se transmite

a través de la red.

Acerca de la red de cifrado

Red de encriptación se refiere a la encriptación de datos cuando se transmite a través de la red entre el cliente y el servidor. La

razón debe cifrar los datos a nivel de la red, y no sólo la base de datos, se debe a que los datos pueden estar expuestos a la red

de nivel aunque tenga cuidadosamente encriptada en la base de datos. Por ejemplo, un intruso puede utilizar un paquete de red

sniffer para capturar información que viaja por la red y, a continuación, spool a un archivo para uso malintencionado. Cifrar datos

en la red impide que este tipo de actividad.

Para cifrar los datos en la red, necesita los siguientes componentes:

Una semilla de encriptación. La encriptación de semillas es una cadena aleatoria de hasta 256 caracteres. Genera las

claves criptográficas que ocultar los datos cuando se transmite a través de la red.

Puede especificar cualquiera de los tipos apoyado algoritmo: AES, RC4, DES o 3DES.

Si la configuración se aplica a un cliente o servidor. Hará falta configurar el servidor y cada cliente al que se conecta.

¿Cómo el cliente o servidor que procesa los datos cifrados. La configuración que seleccione (usted tiene cuatro opciones)

debe complementar tanto el servidor y el cliente.

Un mecanismo para configurar el cifrado. Puede utilizar Oracle Net Manager para configurar el cifrado. Si lo prefiere,

puede editar el archivo de configuración sqlnet.ora. Tanto Oracle Net Manager y el archivo sqlnet.ora están disponibles en

una base de datos Oracle por defecto la instalación.

Configuración de la red de cifrado

Puede configurar la red mediante el uso de cifrado, ya sea Oracle Net Manager o editando el archivo sqlnet.ora. Esta guía explica

cómo utilizar Oracle Net Manager para configurar la red de cifrado.

Para configurar la red de cifrado:

Page 37: Ejemplo de Estandar

Estado: Versión 1.0 Página: 37 de 44

1. En el equipo servidor, inicie Administrador de Oracle Net.

o UNIX: Desde $ ORACLE_HOME / bin, introduzca la siguiente en la línea de comandos:

netmgr

o Windows: En el menú Inicio, haga clic en Todos los programas. A continuación, haga clic Oracle - HOME_NAME,

configuración y herramientas de migración y, a continuación, Net Manager

2. Desde la configuración de Oracle Net árbol de navegación, ampliar Local y, a continuación, seleccione Perfil.

3. De la lista, seleccione Oracle Advanced Security.

4. En virtud de Oracle Advanced Security, seleccione la pestaña de cifrado.

El panel de configuración de cifrado aparece.

Page 38: Ejemplo de Estandar

Estado: Versión 1.0 Página: 38 de 44

5. Introduzca los siguientes ajustes:

o Cifrado: De la lista, seleccione el servidor para configurar la red de cifrado para el servidor. (Para el equipo cliente,

seleccione CLIENTE.)

o Tipo de cifrado: Seleccione de los siguientes valores para especificar las acciones del servidor (o cliente) al negociar la

encriptación e integridad:

Aceptamos: El servicio se activa si la otra parte de la conexión especifica ya sea requerido o solicitado, y es

compatible algoritmo disponible en el otro lado; En caso contrario, se inactiva.

Rechazadas: Servicio no debe ser activa, y la conexión fallará si la otra parte requiere.

Solicitada: El servicio se activa si la otra parte de la conexión especifica bien aceptado, es necesario, o se

solicita, y que es compatible algoritmo disponible en el otro lado; En caso contrario, se inactiva.

Necesario: Este servicio debe ser activa, y la conexión fallará si la otra parte especifica rechazada, o si no hay

un algoritmo compatible en el otro lado.

o Semillas de cifrado: Introduzca una cadena aleatoria de hasta 256 caracteres. Bases de datos Oracle utiliza el cifrado

de semillas para generar claves criptográficas. Esto es necesario cuando cualquiera de cifrado o la integridad está

habilitado.

Si decide utilizar caracteres especiales como una coma [,] o de un derecho paréntesis [)] como parte del parámetro de

cifrado de Semillas, adjuntar el valor dentro de comillas simples.

Page 39: Ejemplo de Estandar

Estado: Versión 1.0 Página: 39 de 44

o Los métodos disponibles: Seleccione una o más de los siguientes algoritmos, y utilizar el botón de avanzar (>) para

pasar a la lista de métodos seleccionados. El orden en que aparecen en la lista de seleccionados Métodos determina el

orden para la negociación. Es decir, el primer algoritmo de la lista se selecciona en primer lugar, y así sucesivamente.

En el caso: Advanced Encryption Standard (AES). AES fue aprobado por el Instituto Nacional de Estándares y

Tecnología (NIST) para sustituir los datos Encryption Standard (DES). En el caso le permite cifrar un tamaño de

bloque de 256 bits.

RC4_256: Rivest Cipher 4 (RC4), que es el más comúnmente usado flujo de cifrado que protege protocolos como

Secure Sockets Layer (SSL). RC4_256 le permite encriptar un máximo de 256 bits de datos.

AES192: Permite utilizar AES para cifrar un tamaño de bloque de 192 bits.

3DES168: Triple Data Encryption Standard (TDES), con un período de tres opciones fundamentales. 3DES168 le

permite codificar hasta 168 bits de datos.

AES128: Permite utilizar AES para cifrar un tamaño de bloque de 128 bits.

RC4_128: Permite utilizar RC4 para cifrar hasta 128 bits de datos.

3DES112: Permite utilizar Triple DES con dos claves (112 bits) opción.

DES: Data Encryption Standard (DES) de 56 bits. Tenga en cuenta que Instituto Nacional de Estándares y

Tecnología (NIST) ya no recomienda DES.

RC4_40: Permite utilizar RC4 para cifrar hasta 40 bits de datos.

DES40: Permite utilizar DES para cifrar hasta 40 bits de datos.

6. En el menú Archivo, seleccione Guardar configuración de red y, a continuación, seleccione Salir para salir de Oracle Net

Manager.

7. Repita estos pasos para cada equipo cliente que se conecta al servidor.

Anexo B:

Información asociada a la creación de perfiles y roles a cuentas de usuario:

OTROS ROLES DEL SISTEMA

Rol Privilegios

CONNECT alter session, create session, create cluster, create table, create view, create synonym, create sequence, create

database link

Page 40: Ejemplo de Estandar

Estado: Versión 1.0 Página: 40 de 44

RESOURCE create cluster, create table, create procedure, create sequence, create trigger

DBA todos los privilegios de sistema con la opción with admin option

PRIVILEGIOS MAS COMUNES DEL SISTEMA

Privilegio Capacidades

– Manejo de Objetos.

CREATE ANY INDEX Crear cualquier índice.

CREATE [PUBLIC] SYNONYM Crear sinónimos [públicos].

CREATE [ANY] TABLE Crear tablas. El usuario debe tener cuota en el espacio de tablas, o ha de tener asignado el

privilegio UNLIMITED TABLESPACE.

CREATE [ANY] VIEW Crear vistas.

ALTER ANY INDEX Alterar cualquier índice.

ALTER ANY TABLE Alterar cualquier tabla

DROP ANY INDEX Borrar cualquier índice.

DROP ANY SYNONYM Borrar cualquier sinónimo.

DROP PUBLIC SYNONYM Borrar sinónimos públicos.

DROP ANY VIEW Borrar cualquier vista.

DROP ANY TABLE Borrar cualquier tabla.

SELECT ANY TABLE Efectuar selecciones de cualquier tabla o vista.

INSERT ANY TABLE Insertar en cualquier tabla o vista.

DELETE ANY TABLE Borrar filas de cualquier tabla o vista, y también truncar.

ALTER SESSION Alterar los parámetros de la sesión.

CREATE SESSION Conectarse a la BD.

– Gestión de la BD

Page 41: Ejemplo de Estandar

Estado: Versión 1.0 Página: 41 de 44

CREATE PROFILE Crear perfiles de usuario.

CREATE ROLE Crear roles.

CREATE ROLLBACK SEGMENT Creación de segmentos de rollback.

CREATE TABLESPACE Crear espacios de tablas.

CREATE USER Crear usuarios.

ALTER PROFILE Alterar perfiles existentes.

ALTER ANY ROLE Alterar cualquier rol.

ALTER ROLLBACK SEGMENT Alterar segmentos de rollback.

ALTER TABLESPACE Alterar espacios de tablas.

ALTER USER Alterar usuarios.

DROP PROFILE Borrar un perfil existente.

DROP ANY ROLE Borrar cualquier rol.

DROP ROLLBACK SEGMENT Borrar un segmento de rollback existente.

DROP TABLESPACE Borrar un espacio de tablas.

DROP USER Borrar un usuario. Añadir CASCADE si el usuario posee objetos.

ALTER DATABASE Permite una sentencia ALTER DATABASE.

GRANT ANY PRIVILEGE Otorgar cualquiera de estos privilegios.

GRANT ANY ROLE Otorgar cualquier rol a un usuario.

UNLIMITED TABLESPACE Puede usar una cantidad de almacenamiento ilimitada.

DROP PROFILE Borrar un perfil existente.

Page 42: Ejemplo de Estandar

Estado: Versión 1.0 Página: 42 de 44

PRIVILEGIOS SOBRE OBJETOS

Privilegio Capacidades Otorgadas

SELECT Puede consultar a un objeto.

INSERT Puede insertar filas en una tabla o vista. Puede especificarse las columnas donde se permite insertar

dentro de la tabla o vista.

UPDATE Puede actualizar filas en una tabla o vista. Puede especificarse las columnas donde se permite actualizar

dentro de la tabla o vista.

DELETE Puede borrar filas dentro de la tabla o vista.

PERFILES DE USUARIO

Recurso Descripción

SESSIONES_PER_USER El número de sesiones concurrentes que un usuario puede tener en una instancia.

CPU_PER_SESSION El tiempo de CPU, en centenas de segundos, que una sesión puede utilizar.

CONNECT_TIME El número de minutos que una sesión puede permanecer activa.

IDLE_TIME El número de minutos que una sesión puede permanecer sin que sea utilizada de manera

activa.

LOGICAL_READS_PER_SESSION El número de bloques de datos que se pueden leer en una sesión.

LOGICAL_READS_PER_CALL El número de bloques de datos que se pueden leer en una operación.

PRIVATE_SGA La cantidad de espacio privado que una sesión puede reservar en la zona de SQL

compartido de la SGA.

COMPOSITE_LIMIT El número de total de recursos por sesión, en unidades de servicio. Esto resulta de un

cálculo ponderado de CPU_PER_SESSION, CONNECT_TIME,

LOGICAL_READS_PER_SESSION y PRIVATE_SGA, cuyos pesos se pueden variar con

el comando ALTER RESOURCE COST.

Page 43: Ejemplo de Estandar

Estado: Versión 1.0 Página: 43 de 44

ALTER Puede alterar la tabla.

INDEX Puede crear índices de una tabla.

REFERENCES Puede crear claves ajenas que referencie a esta tabla.

EXECUTE Puede ejecutar un procedimiento, paquete o función.

LISTAR PRIVILEGIOS OTORGADOS

Vista Contenidos

DBA_ROLES Nombres de los roles y su estado del password.

DBA_ROLES_PRIVS Usuarios a los que han sido otorgados roles.

DBA_SYS_PRIVS Usuarios a los que han sido otorgados privilegios del sistema.

DBA_TAB_PRIVS Usuarios a los que han sido otorgados privilegios sobre objetos.

DBA_COL_PRIVS Usuarios a los que han sido otorgados privilegios sobre columnas de tablas.

ROLE_ROLE_PRIVS Roles que han sido otorgados a otros roles.

ROLE_SYS_PRIVS Privilegios de sistema que han sido otorgados a roles.

ROLE_TAB_PRIVS Privilegios de tabla que han sido otorgados a roles.

Anexo C: Oracle Advanced Security

Sistema de cifrado SSL Suites en edición de Oracle Advanced Security

Suite de cifrado Autenticación

Cifrado

La integridad

de los datos

SSL_RSA_WITH_3DES_EDE_CBC_SHA RSA 3DES EDE CBC 3DES EDE CBC SHA

SSL_RSA_WITH_RC4_128_SHA RSA RC4 128 RC4 128 SHA

SSL_RSA_WITH_RC4_128_MD5 RSA RC4 128 RC4 128 MD5

SSL_RSA_WITH_DES_CBC_SHA RSA DES CBC DES CBC SHA

SSL_DH_anon_WITH_3DES_EDE_CBC

_SHA

DH anon DH Anon 3DES EDE CBC 3DES EDE CBC SHA

Page 44: Ejemplo de Estandar

Estado: Versión 1.0 Página: 44 de 44

SSL_DH_anon_WITH_RC4_128_MD5 DH anon DH Anon RC4 128 RC4 128 MD5

SSL_DH_anon_WITH_DES_CBC_SHA DH anon DH Anon DES CBC DES CBC SHA

SSL_RSA_EXPORT_WITH_RC4_40_MD

5

RSA RC4 40 RC4 40 MD5

SSL_RSA_EXPORT_WITH_DES40_CBC

_SHA

RSA DES40 CBC DES40 CBC SHA

SSL_DH_anon_EXPORT_WITH_RC4_40

_MD5

DH anon DH Anon RC4 40 RC4 40 MD5

SSL_DH_anon_EXPORT_WITH_DES40

_CBC_SHA

DH anon DH Anon DES40 CBC DES40 CBC SHA

SSL de cifrado en las suites de edición Oracle Advanced Security

Suite de cifrado Autenticación

Cifrado

La integridad

de los datos

SSL_RSA_EXPORT_WITH_RC4_4

0_MD5

RSA RC4 40 RC4 40 MD5

SSL_RSA_EXPORT_WITH_DES40

_CBC_SHA

RSA DES40 CBC DES40 CBC SHA

SSL_DH_anon_EXPORT_WITH_R

C4_40_MD5

DH anon DH Anon RC4 40 RC4 40 MD5

SSL_DH_anon_EXPORT_WITH_D

ES40_CBC_SHA

DH anon DH Anon DES40 CBC DES40 CBC SHA