40
Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Embed Size (px)

Citation preview

Page 1: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Sistemas Mainframe

Capítulo 9 : Seguridad en z/OS

Page 2: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

2

Objetivos

En este capítulo veremos como:

– Explicar los conceptos de seguridad e integridad

– Explicar RACF y su interfaz con el sistema operativo

– Autorizar un programa

– Discutir los conceptos de integridad

– Explicar la importancia del control de cambios

– Explicar el concepto de la evaluación de riesgos

Page 3: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

3

Términos clave

Librerías autorizadas

authorized program facility (APF)

encripción

SAF

SVC

PASSWORD

firewall

hacker

page protection bit

Resource Access Control Facility (RACF)

política de seguridad

separación de funciones

Integridad del sistema

user ID

Page 4: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

4

Introducción

Un dato o programa es el recurso más valioso de la instalación, y debe ser protegido

Hace tiempo, un dato estuvo seguro porque nadie conocía como acceder a él

Cada vez más gente se convirtió en experta en computación y capaz de usar herramientas simples, y los datos no protegidos se volvieron accesibles

La seguridad de los datos es ahora más importante que antes, incluída la prevención ante destrucción inadvertida

Page 5: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

5

Porqué seguridad?

Cualquier sistema de seguridad debe permitir a usuarios autorizados el acceso a lo que necesiten, y prevenir el acceso no autorizado

Muchos datos críticos de las compañías están ahora en computadoras, y son fáciles de ‘robar’ si no están protegidos

El Servidor de Seguridad del z/OS provee una estructura de funciones para proteger los datos

Page 6: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

6

RACF (Resource Access Control Facility)

RACF (parte del Servidor de Seguridad) y otros paquetes disponibles, son productos que proveen la estructura básica de seguridad en un mainframe z/OS

Identifica y autentica usuarios

Autoriza usarios para acceder a recursos protegidos

Registra y reporta intentos de accesos no autorizados

Controla el modo de acceso a los recursos

Page 7: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

7

RACF: Visión General de Funciones

Administración de Seguridad

Control deautorizaciónde recursosy control delsistema

Iidentificación y autorizaciónde Usuarios

Reportes de auditoría e integridad, alertas de violaciones

RACFRACF

RACFdatabase

Page 8: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

8

Identificación y verificación de usuarios

RACF usa un ‘userid’ y una ‘password’ de sistema encriptada para realizar la identificación y verificación de los usuarios

El ‘userid’ identifica la persona para el sistema

La ‘password’ verifica la identidad del usuario

La ‘password’ no debería ser trivial, y se pueden usar exits para forzar políticas centralizadas para su formato

Page 9: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

9

Niveles de Protección

RACF trabaja en una estructura jerárquica

– ALLOC permite creación y destrucción de un data set

– CONTROL permite repro de un data set VSAM

– WRITE permite actualización de datos

– READ permite lectura de datos

– NONE ningún acceso

Un permiso mayor, implica todos los que están por debajo de él

Page 10: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

10

Protegiendo un dataset

Se crea un perfil (profile) de data set y se almacena en la database de RACF

Este le dará acceso a nivel de usuario o grupo

También se puede definir un acceso universal

El perfil puede ser específico o genérico, con o sin caractéres especiales (wild cards)

Page 11: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

11

Display típico de un perfil de RACF

INFORMATION FOR DATASET SYS1.*.** (G) LEVEL OWNER UNIVERSAL ACCESS WARNING ERASE ----- -------- ------------------------------ ------- ----- 00 SYS1 READ NO NO AUDITING -------- FAILURES(READ) NOTIFY -------- NO USER TO BE NOTIFIED YOUR ACCESS CREATION GROUP DATASET TYPE -------------------- -------------------------- ---------------------- ALTER SYS1 NON-VSAM

Page 12: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

12

Lista de acceso de RACF para SYS1.*.** ID ACCESS -------- -------SYS1 ALTER KARRAS ALTER WANDRER ALTER SCHUBER ALTER KURTKR UPDATE KURTKR2 UPDATE KURTKR3 NONE CICSRS1 ALTER CICSRS2 ALTER HEISIG UPDATE JUSTO UPDATE GERALD READ

Page 13: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

13

Protegiendo recursos generales o comunes

Se pueden proteger muchos recursos del sistema

– Volumenes de discos (DASD)

– Cintas y cartuchos

– Transacciones CICS o IMS

– Datasets de Spool del JES

– Comandos del sistema

– Recursos de una aplicación

– y mucho más

RACF es flexible, y se puede agregar mucho más

Page 14: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

14

Sistema operativo y RACF

..

SistemaOperativo

Administradorde

recursos

RACF

RACFDatabases

o dato en

memoria

SAFSAF

1

7 6

2 3

5

4

Page 15: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

15

Conceptos de RACF: chequeo de perfil (profile)

S

A

F

.

.

.

.

ADMINISTRADOR DE RECURSOS

S

A

F

RACROUTE

SAF CALLABLESERVICE

.

.

.

. SAF

Si / No

PRODUCTO DE SEGURIDAD

Exits Opcionales

Exit RC

ExitCheck

RACF call

RACF RC

RACFCheck

databases

Page 16: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

16

System Authorization Facility

SAF es parte del z/OS

Usa RACF si está presente

También puede usar rutinas exits (opcionales)

SAF es un servicio del sistema y es un punto focal para todos los productos que proveen control de recursos

SAF se invoca en un punto de control dentro del código del administrador de recursos

Page 17: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

17

Estructura del RACF

Userid (usuario)

Group (grupo)

– Cada userid pertenece como mínimo a un group

– Las estructuras de ‘group’ se usan para acceso a los recursos

Resource (recurso)

Resource classes

Class descriptor table – usado para personalizar (customize)

Page 18: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

18

Visión general de la estructura de RACF

GROUPPROFILES

GROUPPROFILESPERFILES

GROUP

DATASET AND GENERAL RESOURCE PROFILES

DATASET AND GENERAL RESOURCE PROFILES

PERFILES DATASET Y RECURSOS GENERALES

USERPROFILES

USERPROFILESPERFILES

USER

RESOURCE CLASSESRESOURCE CLASSESRESOURCE CLASSES

SYSTEM OPTIONSOPCIONES DEL SISTEMA

ADMINISTRACION de RACF

Page 19: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

19

Funciones del RACF

Administración de Seguridad

Control deautorizaciónde recursosy control delsistema

Iidentificación y autorizaciónde Usuarios

Reportes de auditoría e integridad, alertas de violaciones

RACFRACF

RACFdatabase

Page 20: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

20

Identificación del Usuario

RACF lo identifica en su logon

Son necesarios Userid y Password

Cada userid de RACF tiene una única password

La password está encriptada para que nadie la conoza, ni el administrador

Se revoca un Userid luego de una cantidad determinada de intentos de logon, cuando se ingresaron password inválidas

Page 21: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

21

Chequeo del perfil de RACF

RecursoProtegido?

SIUser y Group válido?

Accesoautorizado?

denegado (*)

(*) si está en efecto la opción Protect All

denegado

permitido

No

denegado

No No

SI SI

Page 22: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

22

Registro (log) y Reporte:

RACF mantiene información estadística

RACF graba un registro de seguridad cuando detecta:

– Intentos no autorizados para entrar al sistema

– Acceso a recursos

• Esto depende de las definiciones del recurso• Por ejemplo: AUDIT(ALL(UPDATE) registrará todas las

actualizaciones al recurso

– Ejecución de comandos

Page 23: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

23

Administración de Seguridad

Interpreta la política de seguridad como:

– Determinar cuáles funciones de RACF usar

– Identificar el nivel de protección de RACF

– Identificar cuáles datos proteger

– Identificar la estructura administrativa y de usuarios

Page 24: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

24

RACF compartir datos en sysplex y RRSF

Si varios sistemas comparten la database de RACF habrá problemas de contención

RACF propagará los comandos a través del sysplex

RACF puede usar un ‘coupling facility’ en un ‘parallel sysplex’ para mejorar la performance

Se puede usar RRSF para tener databases de RACF distribuidas y en línea

Page 25: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

25

Programas autorizados

Tareas autorizadas ejecutando programas autorizados se les permite acceder a funciones sensitivas del sistema

Para evitar problemas de integridad, programas no autorizados sólo podrán usar funciones standard

Page 26: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

26

Authorized Program Facility (APF)

SYS1.LINKLIBSYS1.LPALIBSYS1.SVCLIB

+

Lista de librerías definidas por la instalación

Librerías autorizadas

APF

Page 27: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

27

Librerías Autorizadas

Una tarea (task) es ‘autorizada' cuando el progama en ejecución tiene las siguientes características:

– Ejecuta en estado supervisor

– Ejecuta en su PSW con clave (key) 0 a 7

– Todos los programas previos en la misma tarea fueron programas APF

– El módulo fué cargado desde una librería APF

Page 28: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

28

Problem Programs (Programas Problema)

A los programas normales se los conocen como ‘programas problema’, y ejecutan en estado problema (en oposición al estado supervisor)

Ejecutan con clave 8 (problema) en su PSW

Pueden o no estar en una librería APF

Page 29: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

29

Librerías APF

Las librerías autorizadas se definen en la lista APF en SYS1.PARMLIB

SYS1.LINKLIB, SYS1.SVCLIB y SYS1.LPALIB son automáticamente autorizadas

Las librerías de instalación se definen en PROGxx

Por default, todas las librerías en LINKLIST son autorizadas, pero muchas instalaciones definen LNKAUTH=APFTAB

Page 30: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

30

Autorizando un programa

El primero, y sólo el primero de los módulos de carga del programa, debe ser linkeditado con el código de autorización AC=1

Ese y todos los módulos subsiguientes deben ser cargados desde una librería autorizada

Las librerías APF se deben proteger de manera que sólo los usuarios autorizados puedan almacenar programas en ellas

Page 31: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

31

Librerías autorizadas

LIbrerías autorizadas:SYS1.LINKLIBSYS1.LPALIBSYS1.SVCLIBLista de librerías definidas por la instalación

programasautorizados

APF

programas noautorizados

Los programas del sistema usualmente:

residen en librerías APFejecutan en estado supervisorusan clave de memoria 0 a 7

Librerías no autorizadas

Los programas aplicativos usualmente:residen en librerías no autorizadasejecutan en estado problemausan clave de memoria 8

Page 32: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

32

Librerías autorizadas

La lista APF se crea durante el IPL, usando las librerías incluídas en el miembro PROGxx de parmlib

Si se especifica una lista dinámica, se puede actualizar mediante un comando de operador

Page 33: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

33

Un ejemplo de lista APF

BROWSE SYS1.PARMLIB(PROGTT) -    01.01          Line 00000000 Col 001 080Command ===>                                             Scroll ===> PAGE*************************** Top of Data ********************************APF FORMAT(DYNAMIC)APF ADD    DSNAME(SYS1.VTAMLIB)    VOLUME(******)APF ADD    DSNAME(SYS1.SICELINK)    VOLUME(******)APF ADD    DSNAME(SYS1.LOCAL.VTAMLIB)    VOLUME(TOTCAT)APF ADD    DSNAME(ISP.SISPLOAD)    VOLUME(*MCAT*)*************************** Bottom of Data *****************************

Page 34: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

34

APF dinámica

Actualizar un miembro PROGxx y activarlo con el comando de operador SET PROG=xx

Use el comando SETPROG APF

El comando DISPLAY PROG,APF mostrará la lista actual

Page 35: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

35

D PROG,APFD PROG,APF CSV450I 12.46.27 PROG,APF DISPLAY 027 FORMAT=DYNAMIC ENTRY VOLUME DSNAME 1 Z04RE1 SYS1.LINKLIB 2 Z04RE1 SYS1.SVCLIB 3 Z04RE1 ANF.SANFLOAD 4 Z04RE2 AOP.SAOPLOAD 5 Z04RE1 AOP.SAOPLOAD 6 Z04RE1 ARTURO.BFSLMOD 7 Z04RE1 ASMA.V1R2M0.SASMMOD1 8 TOTDBZ ASN.V7R1M0.SASNALNK 9 TOTDBZ ASN.V7R1M0.SASNLLNK 10 TOTDBZ ASN.V8R1M0.SASNLOAD 11 TOTPT1 ASNA.V5R1M0.SASNALNK 12 TOTPT1 ASNL.V5R1M0.SASNLLNK……

Page 36: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

36

Operator Console Security

A las consolas se les pueden asignar niveles de autorización en el miembro CONSOLxx de parmlib

Los comandos están agrupados en:

– INFO comandos informativos

– SYS comandos de control del sistema

– IO comandos de I/O

– CONS comandos de control de consola

– MASTER comandos de consola maestra

Cada consola puede tener uno o más niveles de autorización

Page 37: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

37

Consolas

Al menos una consola debe tener autoridad MASTER

En un sysplex las consolas son compartidas

Se puede requerir logon para las consolas usando RACF

Todas las consolas extendidas (MCS) podrían necesitar un logon

Page 38: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

38

Roles de Seguridad

El system programmer configura el RACF

Los administradores del sistema implementan las políticas de seguridad

Los administradores de seguridad definen las políticas de seguridad

Es necesaria la separación de las tareas para prevenir el acceso no controlado

Page 39: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

39

Resumen

z/OS Security Server

RACF

SAF

Programas Autorizados

Lista APF

Consola de seguridad

Page 40: Sistemas Mainframe Capítulo 9 : Seguridad en z/OS

Capítulo 9 Seguridad

40

RACFdatabase

RACFdatabase

RACFdatabase

RACFdatabase

Sistema D1

RACFdatabase

Nodo D

Nodo CNodo B

Nodo A

Nodo E

Sistema D2 Sistema E

Sistema CSistema B

Sistema A