Tema 3

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 85

Otros sistemas

[3.1] ¿Cómo estudiar este tema?

[3.2] Seguridad en Mac OS X

[3.3] Dispositivos móviles

[3.4] Virtualización de sistemas operativos

TEMA
Otros sistemas operativos
Esquema

Mac OX Dispositivos móviles Virtualización de sistemas

TEMA 3 – Esquema
Seguridad por acceso físico Android: Introducción:
• Arquitectura
• Qué es y en qué consiste
• Actualización de Android
• La Sandbox
Tipos de virtualización
Seguridad en el inicio del • Protección contra el acceso
sistema físico

2
• Seguridad a nivel de aplicación
Ventajas y desventajas

iOS:
Seguridad en las
• Arquitectura
preferencias: Software de virtualización
• Actualización de iOS
• iCloud, Cuentas y usuarios…
• La Sandbox
• Protección contra el acceso
Seguridad en las utilidades: Seguridad en sistemas
físico
• Llaveros, utilidad de discos… virtuales
• Seguridad a nivel de aplicación
Seguridad en Sistemas Operativos
Seguridad en Sistemas Operativos

Ideas clave

3.1. ¿Cómo estudiar este tema?

Para estudiar este tema lee las Ideas clave.

En este tema vamos a hablar de la seguridad en otros sistemas operativos diferentes a


Linux y Windows, en concreto vamos a ver tres: MAC OS X, iOS y Android. Además
veremos la seguridad en entornos de virtualización, ya que, aunque no sea un sistema
operativo propiamente dicho, afecta a la seguridad de los sistemas operativos a los que
involucra, tanto el sistema host como los virtualizados.

En primer lugar veremos los sistemas operativos Mac OS X, en los que nos centraremos
en:

Seguridad por acceso físico.


Seguridad en el inicio del sistema.
Seguridad en las preferencias del sistema.
Seguridad en las utilidades del sistema.

Después trataremos el tema de los dispositivos móviles, pues son un sistema operativo
que llevamos en el bolsillo a todas partes y es importante securizarlo. Veremos los dos
principales sistemas para móviles: Android e iOS.

Comenzaremos con Android y seguiremos con iOS. Los puntos que se irán viendo, entre
otros, son:

La arquitectura de seguridad.
Las funciones principales de protección de acceso físico.
Las Sandbox.
El cifrado del dispositivo.
Gestión empresarial de los dispositivos.
La seguridad en las aplicaciones.
Los modos root (Android) o jailbreak (iOS).

TEMA 3 – Ideas clave 3


Seguridad en Sistemas Operativos

Finalmente hablaremos de la seguridad en la virtualización de sistemas operativos. Se


verán:

Los tipos de virtualización.


Ventajas e inconvenientes de virtualizar un sistema.
Software para virtualización.
Seguridad en sistemas virtualizados.

3.2. Mac OS X

Mac OS X ha logrado mucha popularidad en el mercado, captando tanto a novatos,


facilitando su entrada a la informática gracias a una interfaz sencilla e intuitiva,
como a profesionales; dando la oportunidad para crear grandes cosas con potentes
herramientas.

La proliferación de dispositivos de Apple, no solo Mac sino también tablets y iPhones


que utilizan el sistema operativo OS X, ha hecho que sea necesario dedicarle parte del
temario.

OS X está basado en UNIX BSD, en una adaptación del kernel conocida como
«Darwin» que fue desarrollada en la Universidad de California y que tiene una popular
interfaz gráfica conocida como «aqua», que no deja de sorprender a los usuarios de
Mac gracias a su potencia, facilidad de uso y gráficos.

Gracias a que el kernel de Mac está basado en UNIX, la seguridad de OS X es una


característica que ya viene implantada en el kernel, con una eficiente gestión de
usuarios y permisos que garantizan la seguridad dentro del sistema.

Los servicios de seguridad del sistema operativo OS X están basado en dos estándares
de código abierto: BSD (Berkeley Software Distribution) y CDSA (Common Data
Security Architecture). BSD es un tipo de sistema operativo UNIX que incluye servicios
fundamentales como el sistema de archivos y los permisos de acceso a archivos. CDSA
es una serie de servicios de seguridad por capas y una framework de criptografía que
provee una infraestructura multiplataforma. Por ejemplo provee una serie de permisos
de acceso, más específicos o un almacenamiento seguro. Por defecto MAC OS está

TEMA 3 – Ideas clave 4


Seguridad en Sistemas Operativos

pensado para que sea seguro, aun así se pueden hacer mejoras en su configuración por
defecto que iremos viendo en este documento.

El kernel de OS X es el centro del sistema operativo y está basado en BSD y Mach.


BSD aporta principalmente el esquema de identificación de usuario y grupo. Mach
aporta principalmente los permisos de acceso a los recursos. Un permiso es la posibilidad
de poder realizar una tarea, como puede ser el acceso a un dato o la ejecución de código.
Los permisos en OS X están pensados a nivel de carpetas, subcarpetas, archivos y
aplicaciones. Los diferentes componentes de BSD y Mach del kernel, controlan los
permisos a altos niveles.

OS X incluye código propietario junto a servicios de código abierto. Es el caso de ciertas


herramientas de FreeBSD, Apache, y Kerberos, entre otros. El código abierto provee
una gran seguridad puesto que dicho código es continuamente escrito y revisado por
desarrolladores independientes. El código abierto también tiene la ventaja de estar
perfectamente documentado.

La seguridad en OS X se efectúa por capas. Cada una de ellas utiliza diferentes servicios
del sistema para que este se mantenga seguro.

Figura 1: Capas de seguridad en MAC OS X.

Internet seguro: uso de Firewall y filtro de correo para prevenir software


malicioso.
Aplicaciones seguras: autenticación usando Llaveros y el uso del FileVault
ayuda a prevenir que intrusos usen nuestras aplicaciones y los datos de nuestro
ordenador.

TEMA 3 – Ideas clave 5


Seguridad en Sistemas Operativos

Protocolos seguros de red: SSL previene que intrusos puedan ver la información
que recibimos o enviamos y Kerberos securiza el proceso de autenticación.
Sistema operativo seguro: para prevenir que intrusos puedan ver nuestros
archivos el sistema usa POXIS y los permisos ACL.
Hardware seguro: se previene que los usuarios que pueden tener acceso a
permisos de súper usuario, puedan acceder al hardware.

Todos los ejemplos mostrados en este documento se han probado sobre la versión de
MAC OS X 10.6 Snow Leopard. En versiones posteriores puede ser que algunos
aspectos técnicos o de configuración sean diferentes. Esto no significa que no se puedan
adaptar, de hecho, durante el documento se hacen referencias a posibles variaciones
pero no se hacen en detalle.

Seguridad por acceso físico

Lo más importante a la hora de securizar un sistema desde el aspecto físico, es evitar que
cualquier persona tenga un contacto directo con el sistema. Cualquier medida física que
se pueda aplicar, como el aislamiento de la máquina en habitaciones o encadenar dicha
máquina, es importante. Esta medida es aplicable a cualquier máquina de cualquier
sistema operativo y plataforma.

En el caso de que alguien pudiera acceder físicamente, la parte del hardware más
sensible es el disco duro pues contiene todos nuestros datos, cualquier persona con
acceso físico ilimitado a esta parte del hardware podría hacer funcionar dicho sistema
en otra máquina. Por esto medidas como la FileVault sobre el cifrado de nuestros datos,
que veremos más adelante, pueden evitar que aunque caiga en manos ajenas nuestros
datos sigan seguros.

Por esto mismo, mantén protegido tu ordenador en armarios preparados al efecto,


escóndelo si ya no lo usas, no lo dejes en lugares donde pueda ser robado, destruye el
disco duro (a martillazos si es posible) si lo vas a tirar.

Específicamente, en Mac OS X se pueden realizar otras tareas que evitarían un acceso


físico.

TEMA 3 – Ideas clave 6


Seguridad en Sistemas Operativos

Hardware inseguro

El wifi, por ejemplo es potencialmente un hardware de riesgo en nuestros ordenadores.


Cualquiera con el software adecuado y algo de tiempo, podría saber qué datos enviamos
entre el ordenador e internet o incluso meterse en nuestros ordenadores. Del mismo
modo podrían ser inseguros nuestros dispositivos Bluetooth. Pese a que todas estas
tecnologías llevan consigo formas de proteger las comunicaciones, se debería
deshabilitar todo hardware inalámbrico que no se esté utilizando. Tampoco es seguro el
uso indebido de los puertos de nuestro ordenador.

Deshabilitar el hardware que consideramos potencialmente inseguro, se podría hacer


de forma manual pero lo tendría que hacer un técnico de Apple. Por otro lado, si lo
hacemos nosotros físicamente, perderemos la garantía de Apple. Una manera alternativa
sería la eliminación de las extensiones del kernel para cierto hardware.

Las siguientes instrucciones explican y muestran en modo comando, cómo se


deshabilitan las diferentes extensiones del kernel:

# Eliminar las extensiones del kernel AppleAirport. (soporte para Wifi)


sudo srm -r /System/Library/Extensions/IO80211Family.kext

# Eliminar las extensiones del kernel Bluetooth.


sudo srm -r /System/Library/Extensions/IOBluetoothFamily.kext
sudo srm -r /System/Library/Extensions/IOBluetoothHIDDriver.kext

# Eliminar las extensiones del kernel IR.


sudo srm -rf /System/Library/Extensions/AppleIRController.kext

# Eliminar las extensiones del kernel para la grabación de Audio.


sudo srm -rf /System/Library/Extensions/AppleUSBAudio.kext
sudo srm -rf /System/Library/Extensions/IOAudioFamily.kext

# Eliminar las extensiones del kernel para la grabación de video.


# Eliminar la cámara externa iSight.
sudo srm -rf /System/Library/Extensions/Apple_iSight.kext

TEMA 3 – Ideas clave 7


Seguridad en Sistemas Operativos

# Eliminar la cámara interna iSight.


sudo srm –rf
/System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns/\
AppleUSBVideoSupport.kext

# Eliminar las extensiones del kernel para USB (almacenamiento masivo).


sudo srm -rf /System/Library/Extensions/IOUSBMassStorageClass.kext

# Eliminar las extensiones del kernel para FireWire.


sudo srm -rf /System/Library/Extensions/\
IOFireWireSerialBusProtocolTransport.kext

# Eliminar extensiones en caché.


sudo touch /System/Library/Extensions

Finalmente reiniciaremos el sistema para que se realicen todos los cambios.

Hay que tener en cuenta, que cada vez que el ordenador se actualice, es probable que
algunas de estas extensiones que hemos eliminado, vuelvan a aparecer. Tendremos que
eliminar dichas extensiones cada vez que actualicemos si decidimos este método de
deshabilitar componentes del sistema.

Seguridad en el inicio del sistema

Cuando el ordenador se inicia, lo primero que se ejecuta es el Extensible Firmware


Interface (EFI). El EFI determina de qué partición cargar el sistema operativo OS X.
También determina si el usuario puede entrar en el modo single-user.

El modo single-user arranca el sistema como usuario root (súper usuario) para casos
de restauración del sistema. Esto es muy peligroso pues este usuario tiene todos los
permisos del sistema y sus acciones se realizan de forma anónima.

Será importante crear una clave para proteger el EFI, para proteger la entrada en modo
single-user, y para proteger la carga de sistemas que se encuentren en otras particiones
o discos externos como CD-ROOM o USB.

TEMA 3 – Ideas clave 8


Seguridad en Sistemas Operativos

Para llegar a la Utilidad de la Contraseña de Firmware desde Snow Leopard puedes ir a


Aplicaciones > Utilidades y seleccionar “Utilidad Contraseña Firmware”.

Figura 2: Utilidad Contraseña Firmware.

Para probar si la configuración tiene efecto, reiniciaremos el ordenador y apretaremos


las teclas Comando + S. Si aparece la pantalla de login, será que hemos hecho
correctamente dicha configuración.

Figura 3: Icono de login.

Seguridad en las preferencias del sistema

Mediante las preferencias del sistema se pueden se pueden cambiar aspectos de


seguridad.

TEMA 3 – Ideas clave 9


Seguridad en Sistemas Operativos

Figura 4: Preferencias del sistema en MAC OS X

De manera estándar solo se pueden modificar aquellas preferencias que no requieren


permisos de súper usuario. En los casos en los que dichas preferencias requieran los
permisos de súper usuario, aparecerán en un tono más claro y no serán modificables.
También aparecerá el símbolo de un candado cerrado. Para ganar permisos de súper
usuario (si es que su usuario puede ganar dichos permisos) y modificar dichas opciones,
tendremos que hacer un clic en el candado cerrado.

Figura 5: Ejemplo de preferencia con candado.

TEMA 3 – Ideas clave 10


Seguridad en Sistemas Operativos

Tras hacer clic en el candado nos pedirá la contraseña de súper usuario y el candado se
abrirá dejándonos modificar las opciones descritas.

Figura 6: Candado desbloqueado

Estos aspectos de seguridad también pueden ser modificados usando el Workgroup


Manager. Mediante esta herramienta se pueden manejar usuarios, grupos y
ordenadores. El Workgroup Manager trabaja directamente con el directorio de dominio.

Figura 7: Interfaz de Workgroup Manager.

iCloud

MobileMe fue una serie de herramientas para la sincronización de datos en Internet


soportada hasta 2011, cuando fue sustituida por iCloud. MobileMe ya no existe y
iCloud no está soportada por Snow Leopard (OS X 10.6) y no será soportada hasta la
siguiente versión Lion (OS X 10.7.5). iCloud, no es más que la idea extendida de
MobileMe.

TEMA 3 – Ideas clave 11


Seguridad en Sistemas Operativos

Hoy en día hay muchos servicios en la nube, que sincronizan los datos de tus contactos,
calendario, notas, configuración, etc. y nuestro OS X puede estar configurado con estos
servicios.

Pese a que la comunicación iCloud u otro de estos servicios en la nube, está realizada
mediante protocolos muy seguros, es mucho más seguro que los datos sensibles se
mantengan en una red interna. En los casos donde se contengan datos especialmente
sensibles, deberíamos de cortar cualquier comunicación con la nube y cifrar dichos datos.

Si ya tenemos los servicios de iCloud dados de alta o bien no lo sabemos, iremos a


Preferencias del sistema > iCloud. Una vez allí haz clic en «Cerrar sesión».

Figura 8: Icono de iCloud.

Figura 9: Preferencias de iCloud.

TEMA 3 – Ideas clave 12


Seguridad en Sistemas Operativos

También podremos ir a Preferencias del sistema > Correo Contactos y calendario,


donde iremos desactivando servicios de iCloud u otros servicios de otras nubes que
tengamos instalados.

Figura 10: Preferencias de Correo, Contactos y Calendarios

Cuentas de Usuario

Para hacer cambios en las cuentas de usuario ve a Preferencias del Sistema > Cuentas.
En versiones posteriores del sistema operativo se llama Usuarios y Grupos.

Figura 11: Icono de Cuentas.

TEMA 3 – Ideas clave 13


Seguridad en Sistemas Operativos

Figura 12: Preferencias de Usuarios y grupos

Para mantener el ordenador protegido, deberemos de atender a las Opciones de inicio de


sesión. Consideremos los siguientes puntos:

Mantener deshabilitado el login automático. Aunque es mucho más sencillo


que uno de los usuarios inicie la máquina sin necesidad de que introduzca su
contraseña, es un gran fallo de seguridad, porque alguien que tenga acceso físico a la
máquina puede acceder a todos los datos.
Requerir que el usuario introduzca el nombre y la contraseña cuando se
autentican. De esta manera no aparecen la lista de usuarios y el intruso no puede
saber ningún nombre de usuario.
No mostrar las indicaciones a la contraseña. Podría poner demasiado fácil que
un usuario adivinase la contraseña.
Deshabilita que el usuario pueda apagar, reiniciar y poner en reposo el
ordenador desde la pantalla de login. Si alguien tiene acceso físico a la máquina
podría fácilmente apagarla y con ella todos los servicios que esté dando.
Deshabilita el cambio rápido de usuario. Evita que varios usuarios estén
trabajando en la máquina a la vez, lo que es un riesgo de seguridad pues hay más
riesgo de errores y complica la vigilancia del sistema.

TEMA 3 – Ideas clave 14


Seguridad en Sistemas Operativos

Evitaremos la creación de cuentas compartidas. Cada usuario tendrá que


tener su propia cuenta de tipo estándar o gestionada, de otro modo perderemos el
control individual de cada usuario.

Figura 13: Opciones de inicio de sesión

También deberemos considerar una contraseña más adecuada. Para ello, tanto en la
creación de un nuevo usuario o en su cambio de contraseña, OS X nos podrá ayudar.
Podremos ver una llave al lado del cuadro de texto donde introducimos la contraseña. Si
hacemos clic en dicha llave, se nos abrirá una ventana con diferentes opciones para hacer
una contraseña más segura teniendo en cuenta factores de longitud, tipo y la valoración
de su calidad.

Según el tipo de usuario que se utilice se podrá evitar que se modifiquen unas opciones
u otras de dentro de las preferencias del sistema.

También es importante desactivar el acceso mediante usuario invitado.

TEMA 3 – Ideas clave 15


Seguridad en Sistemas Operativos

Figura 14: Asistente para contraseña

CD y DVD

Para securizar los CD y DVD tendremos que evitar que se realicen acciones automáticas
cuando estos se insertan en el ordenador. Para su configuración iremos a Preferencias
del sistema > CD y DVD. Una vez allí tendremos que establecer todas las acciones a
“Ignorar”.

Figura 15: Icono de CD y DVD

TEMA 3 – Ideas clave 16


Seguridad en Sistemas Operativos

Figura 16: Preferencias de CDs y DVDs.

Fecha y hora

Una fecha y hora incorrectas pueden ser un problema de seguridad. Protocolos de


autenticación como Kerberos, necesitan de una fecha y hora correctas.

Figura 17: Icono de Fecha y Hora

Figura 18: Preferencias de Fecha y Hora

TEMA 3 – Ideas clave 17


Seguridad en Sistemas Operativos

Deberemos establecer fecha y hora mediante un servidor Network Time Protocol


(NTP). Ve a Preferencias del sistema > Fecha y hora. Seleccionaremos que la fecha y
la hora se ajusten automáticamente.

Salvapantallas y escritorio

Ve a Preferencias del sistema > Escritorio y salvapantallas. Una vez allí, hacer clic
sobre la «pestaña» salvapantallas.

Figura 19: Icono de Escritorio y Salvapantallas.

El salvapantallas debería tener un tiempo de inicio de actividad corto, se propone no más


de cinco minutos. También habría que configurar «Esquinas activas» para iniciar el
salvapantallas rápidamente si ponemos el ratón sobre una de las equinas de la pantalla.

Figura 20: Icono de Fecha y Hora

TEMA 3 – Ideas clave 18


Seguridad en Sistemas Operativos

Compartir recursos

Existen una serie de servicios que comparten recursos del sistema con otros usuarios. De
esta manera se pueden compartir DVDs, archivos, el escáner o acceso remoto al sistema.
Técnicamente existen los siguientes servicios:

Pantalla compartida. La pantalla compartida utiliza VNC (virtual network


computing). Permite a otros usuarios compartir la visualización de tu pantalla y su
uso remotamente. La comunicación no está cifrada por lo que solamente se debe de
utilizar en entornos de red seguros.
Escáner compartido. Permite el uso remoto de tu escáner compartido.
DVD y CD compartido. Permite el uso remoto de tu unidad de DVD o CD
compartida. Es importante tener en cuenta que este servicio no cifra los datos que se
trasmiten.
Bluetooth compartido. Permite a otros ordenadores mediante Bluetooth,
compartir archivos.
Archivos compartidos. Permite compartir archivos con los protocolos AFP (Apple
Filing Protocol), FTP (File Transfer Protocol) y SMP (Server Message Block). No se
debe utilizar el protocolo FTP pues no cifra las comunicaciones.
Login remoto. Permite acceder a tu ordenador de forma remota. Se deberá usar SSH
si se habilita.
Escritorio remoto. Permite el uso del escritorio remoto de Apple.
Eventos remotos. Permite recibir eventos Apple de otros ordenadores.

Por defecto solamente está activo el Login remoto y no se recomienda la activación de


ningún otro servicio compartido a no ser que realmente se vaya a hacer uso de este
servicio.

En la sección Preferencias del sistema > Compartir, se recomienda cambiar el nombre


del sistema para que sea más difícil la identificación. Por defecto, si utilizan datos de
nombre y apellidos para nombrar la máquina al compartir recursos.

Figura 21: Icono de Compartir.

TEMA 3 – Ideas clave 19


Seguridad en Sistemas Operativos

Figura 22: Preferencias de Compartir

Seguridad General

Ve a Preferencias del sistema > Seguridad. En otras distribuciones del sistema más
actuales se llama Seguridad y privacidad. Habrá que considerar la siguiente
configuración:

Solicitar contraseña tras inactividad o salvapantallas. Esto previene el acceso


sin autorización, en ordenadores desatendidos.
Desactivar el inicio de sesión automático. Es necesario de que todos los
usuarios, con permisos restringidos o no, introduzcan su usuario y clave para acceder
al sistema.
Desactivar los servicios de localización. Es importante no proporcionar la
localización de nuestro ordenador a ninguna de nuestras aplicaciones. Sería una
estrategia de prevención de acceso físico.
Desactivar el receptor de infrarrojos. Pese a que anteriormente ya hemos
desactivado hardware que pudiera ser peligroso, no estaría de más también realizar
esta acción desde las propiedades del sistema.
Cerrar sesión tras inactividad. Se recomienda un tiempo elevado de inactividad
para que la sesión se cierre. Al menos sesenta minutos.

TEMA 3 – Ideas clave 20


Seguridad en Sistemas Operativos

Figura 23: Icono de Seguridad.

Figura 24: Preferencias de Seguridad.

En otras versiones posteriores a la 10.6 se puede configurar, para que se pida una
contraseña de administrador para acceder a las preferencias de todo el sistema, para que
se cierre la sesión de usuario tras cierto tiempo de inactividad o para que solo se permitan
aplicaciones descargadas del App Store o de desarrolladores de confianza (según
Apple).

TEMA 3 – Ideas clave 21


Seguridad en Sistemas Operativos

Figura 25: Preferencias de Seguridad y privacidad en versiones posteriores

FileVault

Ve de nuevo a Preferencias del sistema > Seguridad. En otras distribuciones del


sistema se llama Seguridad y privacidad. Iremos a las «pestaña» FileVault.

FileVault cifra la información de la carpeta de los usuarios. Utiliza un cifrado de 256-


bit (AES-256). El uso de FileVault implica que, internamente, los archivos de los
usuarios se muevan a una imagen de disco que se cifra. Si se eliminan archivos de la
carpeta de un usuario con el FileVault activo, el tamaño en disco tarda algo de tiempo
en recuperarse. Tras la optimización de la carpeta será posible el acceso a archivos
rápidamente.

En versiones posteriores FileVault no solo cifra la carpeta de los usuarios, sino que cifra
todo el disco duro mediante nuestra contraseña maestra. Además, cuando se cifra el
disco, crea automáticamente una clave de recuperación por si olvidamos la primera. En
caso de perder ambas, se perderían todos los datos.

TEMA 3 – Ideas clave 22


Seguridad en Sistemas Operativos

Figura 26: Preferencias de FileVault

Firewall

Ve de nuevo a Preferencias del sistema > Seguridad. En otras distribuciones del


sistema se llama Seguridad y privacidad. Iremos a las «pestaña» Firewall.

Figura 27: Preferencias del Firewall

TEMA 3 – Ideas clave 23


Seguridad en Sistemas Operativos

El Firewall solo vigila los protocolos TCP y UDP. Esto no se aplica a Apple Talk. Por
defecto, solamente se permite que las aplicaciones firmadas, por autoridades de
certificación reconocidas, puedan establecer comunicaciones a través de internet. De
manera avanzada se pueden especificar a qué aplicaciones se les permite establecer
conexiones.

Se recomienda tener el Firewall activado y que se bloqueen todas las conexiones


entrantes, permitiendo solamente, servicios específicos. OS X 10.6 Snow Leopard,
incluye dos tipos de firewall, el de aplicación y el IPFW.

Por otro lado, se debería activar el modo encubierto. Este modo encubierto evita que el
ordenador responda a mensajes ICMP. De esta manera no daremos pistas de la existencia
de nuestro ordenador a posibles atacantes.

Figura 28: Preferencias avanzadas del Firewall

IPFW2 Firewall

Es un proyecto de código abierto parte de FreeBSD, incorporado en MAC OS X hasta


la versión 10.7 donde fue sustituido por PF (Package Filter Firewall). Es comparable al
iptables de Linux.

TEMA 3 – Ideas clave 24


Seguridad en Sistemas Operativos

IPFW2 es un conjunto de reglas que realizan acciones sobre paquetes. Para ver las reglas
aplicadas en cada momento se puede ejecutar el siguiente comando:
# ipfw print

Actualización del sistema

Ve a Preferencias del sistema > Actualización de Software. En otras distribuciones


posteriores del sistema se llama App Store. Iremos a las «pestaña» Búsquedas
programadas.

Figura 29: Icono de Actualización de Software

Figura 30: Preferencias de Actualización de Software

Tras la descarga de las actualizaciones, estas son verificadas mediante las firmas
realizadas sobre estas. De esta manera evitamos la instalación de software malicioso y la
integridad de nuestras descargas. Las actualizaciones dependen de la política de empresa
pero nosotros recomendamos que se busquen pero no se descarguen las actualizaciones
automáticamente

TEMA 3 – Ideas clave 25


Seguridad en Sistemas Operativos

Figura 31: Ventana de actualización de software

En las versiones actuales de OS X, las actualizaciones se realizan mediante el uso del App
Store. Las opciones de configuración de la actualización del App Store son las mismas.

Back Ups con Time Machine

Ve a Preferencias del sistema > Time Machine.

Figura 32: Icono de Time Machine

Time Machine mantiene al día una copia de todos los archivos personales que tienes en
tu ordenador. La copia de toda tu información se mantiene sin cifrar por lo que se
aconseja tenerla en un lugar donde nadie pueda acceder a ella. Una solución es crear una
imagen de disco cifrada, montarla y determinar en ella nuestras copias de seguridad.

TEMA 3 – Ideas clave 26


Seguridad en Sistemas Operativos

Figura 33: Preferencias de Time Machine.

Seguridad en las utilidades del sistema

Llaveros

Para accede a la utilidad de llaveros hay que ir a Utilidades > Acceso a Llaveros.

Figura 34: Accedemos a Utilidades

TEMA 3 – Ideas clave 27


Seguridad en Sistemas Operativos

Figura 35: Accedemos a Llaveros.

Figura 36: Ventana principal de Acceso a Llaveros

Esta aplicación contiene claves cifradas, certificados y otra serie de valore privados
llamados «Notas Seguras». Se pueden crear múltiples llaveros que aparecerán en la
lista de Llaveros. Cada llavero contiene una colección de usuarios y contraseñas, y las
protege con una única clave. Usado la utilidad de Llaveros, solamente las aplicaciones
expresamente autorizadas pueden tener acceso a estos valores.

TEMA 3 – Ideas clave 28


Seguridad en Sistemas Operativos

Llaveros permite que cuando navegamos por Internet (en una página web específica) o
cuando usemos una aplicación asociada, esta aplicación de Llaveros se encargará de
proveer el usuario y clave de la otra aplicación o la página web.

Por ejemplo, si vamos a Gmail e introducimos nuestro usuario y contraseña, el navegador


nos preguntará si queremos que este usuario con esta clave asociada se guarde. Al
guardarse, esta clave irá a Llaveros.

Figura 37: Opción de guardar la contraseña en Llaveros

Una vez guardado, iremos de nuevo a la utilidad de Llaveros e iremos a «Items


Locales» y es allí donde aparecerá la nueva entrada. Si queremos ver los detalles o
incluso la contraseña guardada haremos clic con el botón derecho del ratón y
seleccionaremos «Obtener Información».

Figura 38: Ejemplo de contraseña almacenada.

TEMA 3 – Ideas clave 29


Seguridad en Sistemas Operativos

Esta aplicación permite que cada página o aplicación utilizada, tenga una clave distinta
o incluso aleatoria. De esta manera una aplicación maliciosa no podría robarte esta
misma clave para meterse en tu cuenta de correo, pues en muchos casos repetimos las
mismas claves en diferentes servicios en los que estamos dados de alta. Llaveros
guarda todos los datos cifrados.

Por defecto, al crear un nuevo usuario, se crea el llavero «Inicio de sesión» para este
usuario. El «Inicio de sesión» se mostrará desbloqueado. Para securizar el uso de
Llaveros, deberemos tener el «Inicio de sesión» y otros llaveros asociados a este
usuario, bloqueados al iniciar sesión y al despertar al ordenador de la opción de reposo.
Para esto deberemos de bloquear los llaveros para que su clave de desbloqueo sea
diferente a la clave con la que el usuario comienza su sesión. De esta manera no se
desbloquearán.

Para cambiar la contraseña de uno de los llaveros ve a Utilidades > Acceso a


Llaveros, iremos al llavero que queremos modificar su contraseña y en el menú iremos
a Edición > Cambiar contraseña del llavero. También tendremos que cambiar los
ajustes del llavero en Edición > Cambiar ajustes del llavero. Seleccionaremos
«Bloquear tras seleccionar en reposo» y deseleccionaremos «Sincronizar con
MobileMe».

La utilidad de discos

Ve a Utilidades > Unidad de discos.

La utilidad de discos de Mac OS X la podemos utilizar en varios procesos de cifrado


y eliminación segura de datos.

Figura 39: Utilidad de discos

TEMA 3 – Ideas clave 30


Seguridad en Sistemas Operativos

Podremos cifrar datos en una imagen de disco para su posterior traslado o bien para
su montaje en nuestro sistema de archivos:

1. Archivo > Nueva > Imagen de disco vacía.


2. Elegimos el nombre y dónde la queremos almacenada.
3. Introduce el tamaño de la imagen que necesitemos. Este tamaño no se puede
cambiar posteriormente sin borrar la imagen.
4. Introduce el método de cifrado. Elegiremos entre AES 128 y AES 256.
5. Elige el formato.
6. Haz clic en crear.
7. Introduce tu clave y no la añadas al llavero.

También podemos realizar una imagen desde unos archivos ya existentes. Para esto
se realizaría un proceso parecido al anterior pero yendo a Archivo > Nueva > Imagen
de disco a partir de carpeta.

Otra opción interesante es la de poder eliminar para siempre los archivos que han sido
borrados correctamente. A modo de apunte, explicar que cuando eliminamos los
archivos de la papelera haciendo clic con el botón derecho sobre esta y seleccionando
«Vaciar Papelera», solo estamos borrando las referencias que tiene el sistema de
archivos hacia esos archivos.

Figura 40: Opción de vaciar la papelera.

Para eliminar correctamente los archivos del disco implica la eliminación de la referencia
a nuestros archivos en el disco y la sobreescritura de los archivos en el disco con un array
de ceros. Para hacer esto hay que pulsar la tecla comando y hacer clic derecho sobre la
papelera de reciclaje y elegir «Vaciar Papelera de forma segura».

TEMA 3 – Ideas clave 31


Seguridad en Sistemas Operativos

Figura 41: Opción de vaciar la papelera de forma segura

Cuando no realizamos esto o cuando terceras aplicaciones borran archivos, suele ser
una práctica segura eliminar para siempre el espacio vacío del disco duro. Hay que
tener en cuenta que cuando se eliminan para siempre archivos, estos no se podrán
recuperar jamás, por lo cual podríamos perder datos. Se aconseja destruir los datos
cuando se sabe que estos son sensibles y realmente no los vamos a querer recuperar
más adelante.

Para eliminar el espacio vacío del disco duro, dentro de la Utilidad de discos hay
que hacer clic derecho sobre la unidad que queramos y pulsar el botón «Borrar espacio
libre».

3.3. Dispositivos móviles

La evolución tecnológica que han sufrido los


dispositivos móviles en los últimos años ha sido
enorme. Desde los primeros teléfonos móviles
creados por Motorola en 1973 hasta los últimos
Smartphone creados por marcas como Apple,
HTC o Samsung hay millones de diferencias
cualitativas y económicas.

Los primeros teléfonos móviles creados


pesaban alrededor de un kilo y su coste variaba
entre los 3.000 y 4.000 euros. Su funcionalidad se
limitaba únicamente a la telefonía y no estaban muy extendidos en la sociedad. En
cambio, los Smartphone creados en el siglo XXI gozan de gran popularidad en la sociedad
gracias a su precio económico, su tamaño reducido y su gran abanico de funcionalidades,

TEMA 3 – Ideas clave 32


Seguridad en Sistemas Operativos

como navegador GPS, radio, reproductor MP3, juegos, cliente de correo electrónico,
mensajería instantánea, cámara de fotos, etc. aparte de la propia función de telefonía.

Debido a esta popularidad, los Smartphone están sufriendo cada vez más los ataques de
los «piratas informáticos», que intentan burlar su seguridad para hacerse con el control
del dispositivo o robar datos confidenciales contenidos dentro del terminal, como
números de cuenta bancaria, contraseñas, contactos, fotografías, etc.

Algunas últimas funcionalidades que están ya con nosotros, es el pago electrónico


utilizando simplemente el teléfono móvil. Esta tecnología utiliza el chip NFC (Near
Field Communication). Se trata de una tecnología de comunicación inalámbrica, que
permite la posibilidad de transmitir datos entre dispositivos situados entre 5 y 10
milímetros de distancia permitiendo realizar pagos simplemente acercando el teléfono
móvil a un lector.

La tecnología de los dispositivos móviles ha experimentado una gran mejora, lo que


ha hecho que haya que tratar su protección como si de un PC convencional más se tratará.
También ha aumentado exponencialmente el número de tipos de dispositivos,
introduciendo cada vez más funcionalidades, pasando de servir esencialmente para
realizar llamadas y conservar contactos, a servir para navegar por Internet, descargar
música, hacer fotografías y un largo etc.

Android

Android es un sistema operativo basado en el kernel de


Linux 2.6 y adaptado para móviles. Por otro lado, el sistema
operativo de Android tiene diversas versiones en las que se
producen cambios para el soporte de tamaño de pantallas
grandes (Android 3.0) o sensores como el NFC (Android
2.3). Actualmente las distribuciones más extendidas son Jelly
Bean (Android 4.1 – 4.3) y KitKat (Android 4.4). La
última versión es Lollypop (Android 5.0).

IMPORTANTE: los ejemplos mostrados de configuración en este documento son


orientativos y podrían variar según el fabricante del dispositivo o la versión del sistema
operativo. Si se usa un emulador es posible que ciertas opciones no se encuentren.

TEMA 3 – Ideas clave 33


Seguridad en Sistemas Operativos

Los aspectos que necesitamos para securizar nuestro dispositivo móvil engloban el
propio dispositivo, las comunicaciones de este dispositivo y el almacenamiento de datos.

Para saber más de las versiones y su evolución visita la siguiente dirección:


http://developer.android.com/about/dashboards/index.html

Hace una referencia a todas las versiones actuales y sus diferencias, como pueden ser
los tamaños de pantalla soportados, las estadísticas de su uso, etc.

La arquitectura de seguridad de Android

El objetivo de la arquitectura de seguridad de Android, pretende hacer un sistema


operativo seguro y usable para las plataformas móviles. Esto se traduce en la
protección de los datos del usuario, la protección de los recursos del sistema y el
aislamiento en la ejecución de los programas.

Para realizar los objetivos de seguridad, Android implementa un kernel de Linux,


ejecuta las aplicaciones en Sandbox, realiza procesos intermedios en las
comunicaciones, requiere la firma de las aplicaciones e implementa un sistema de
granulado de definición de permisos. Además, Android se ejecuta dentro de una
máquina virtual llamada Dalvik.

En la siguiente figura se puede ver el resumen de los componentes y la arquitectura


de Android. Cada componente, asume que el componente inmediatamente inferior,
se ejecuta de forma segura. Excepto los componentes del kernel de Linux, todo el
código es ejecutado en una Sandbox.

TEMA 3 – Ideas clave 34


Seguridad en Sistemas Operativos

Figura 42: Arquitectura y componentes de Android

La actualización de Android

No existe un modelo común y estándar de actualización de Android. La actualización


de los diferentes dispositivos depende del fabricante de dicho dispositivo. No hay una
publicación oficial de los fallos de seguridad que se solucionan con las actualizaciones.
Aun así, es recomendable instalar todas las actualizaciones que se publican. Sí que
existe la National Vulnerability Database en la que podremos encontrar las
vulnerabilidades conocidas:

http://web.nvd.nist.gov/view/vuln/search-
results?query=android&search_type=all&cves=on

Google tiene un modelo de publicación de actualizaciones y resolución de problemas


de seguridad. Sin embargo la complejidad de dichas actualizaciones junto con la
personalización de Android que cada fabricante hace de cada dispositivo, hacen que
la solución a dichos problemas de seguridad tarde demasiado tiempo en publicarse.
Además los fabricantes suelen tener desatendidas versiones antiguas de sus
dispositivos, actualizando únicamente los dispositivos más modernos, por lo que estos
modelos antiguos quedarán siempre vulnerables.

TEMA 3 – Ideas clave 35


Seguridad en Sistemas Operativos

Las actualizaciones del sistema de Android pueden ser proporcionadas como una
imagen parcial o una imagen completa. Si es una imagen parcial solamente se
modificarán los archivos necesarios y si es una imagen completa se sobrescribirán
todas las preferencias. Por otro lado, se recomienda hacer una copia de seguridad del
sistema antes de actualizarlo.

Para actualizar el sistema operativo suele existir la opción en Ajustes > Acerca del
teléfono > Actualizaciones del sistema. Evidentemente, esta opción depende
del fabricante.

Figura 43: Opción de Actualización de software

También está disponible la opción de actualización manual mediante la descarga de


actualizaciones oficiales desde la web de Google.

Para la actualización de las aplicaciones en Android se usa el servicio de Google Play


Store, aunque también es posible utilizar otros proveedores de aplicaciones distintos
al Google Play Store. La seguridad en el uso de estos proveedores de aplicaciones
de Android será igual que el propio Play Store de Android pero en general se
recomienda el uso de Google Play Store. Para poder instalar aplicaciones desde otro
proveedor distinto al Play Store ve al menú Ajustes > Seguridad y haz clic en
Orígenes desconocidos.

TEMA 3 – Ideas clave 36


Seguridad en Sistemas Operativos

Figura 44: Opción de orígenes desconocidos en Seguridad.

Para actualización de aplicaciones en Google Play iremos al icono de Play Store y


en el menú iremos a Mis Aplicaciones, una vez allí, si existen actualizaciones
disponibles, pulsaremos en «Actualizar Todo».

TEMA 3 – Ideas clave 37


Seguridad en Sistemas Operativos

Figuras 45, 46 y 47: Actualizar las aplicaciones de Play Store

La Sandbox

Android desarrolla una Sandbox haciendo uso de los permisos de usuario que
ofrece el kernel de Linux. Android asigna un id único de usuario (UID) a cada
aplicación y la ejecuta en un proceso aparte.

Por defecto las aplicaciones no pueden interactuar entre ellas y tienen un uso limitado
del sistema operativo. Sin los permisos suficientes, la aplicación A no podrá conseguir
datos de los archivos de la aplicación B o usar la cámara del sistema operativo, por
ejemplo.

En resumidas cuentas, mediante la Sandbox se consigue un aislamiento de las


aplicaciones, con ella rodeamos con una capa de seguridad toda la arquitectura de
Android (excepto el kernel).

TEMA 3 – Ideas clave 38


Seguridad en Sistemas Operativos

Figura 48: Funcionamientos de la Sandbox.

El cifrado del dispositivo

Desde la versión 3.0 de Android se permite el cifrado completo de la memoria


de forma nativa. Para cifrados de versiones 2.x de Android existen aplicaciones en
Google Play (por ejemplo APG) que realizan dicho cifrado pero no en la totalidad de
la memoria.

Para cifrar el dispositivo ve a Ajustes > Seguridad > Encriptar dispositivo.


Según el dispositivo la opción puede que aparezca en un sitio diferente. En la siguiente
imagen se pueden ver las opciones de seguridad y entre ellas Encriptar dispositivo
y Encriptar la tarjeta de memoria externa.

Puede pasar que la opción de encriptación de la memoria externa no exista en todos


los dispositivos, ya sea porque el dispositivo no la soporte o porque la haga por defecto
cada vez que acceda a ella.

TEMA 3 – Ideas clave 39


Seguridad en Sistemas Operativos

Figura 49: Opción de Encriptar dispositivo.

Por otro lado, hay que tener en cuenta que muchas memorias externas están
previamente formateadas en FAT o FAT32 y son sistemas de archivos que no
establecen permisos. Si la memoria no tiene un sistema de archivos con soporte
para permisos, cualquier aplicación con permisos de tarjeta podrá tener acceso a
todos los datos guardados en ella.

Con la memoria cifrada, los datos que necesitan ser usados serán previamente
descifrados. En el proceso inverso de grabar datos en la memoria esos datos serán
previamente cifrados. El cifrado y descifrado de los datos se hace de forma totalmente
transparente para el usuario del dispositivo.

Al cifrar el dispositivo, será imprescindible implementar el bloqueo de pantalla con la


clave de la tarjeta SIM o bien con una contraseña que se decida.

Mediante el cifrado de la memoria se evitan ataques de acceso físico a los datos


almacenados en dicha memoria. Se recomienda al menos cifrar la memoria interna
del dispositivo, pues en ella se almacenan todas las contraseñas.

TEMA 3 – Ideas clave 40


Seguridad en Sistemas Operativos

Gestión Empresarial de Android

Desde la versión 2.2 de Android, los administradores de dominio, desde Google


Apps, tienen la posibilidad de gestión sobre el dispositivo. Este servicio puede ser
usado desde la plataforma web de Google Apps sin necesidad de otras
implementaciones para su gestión.

Para poder implantar las políticas de seguridad en Android es necesario tener


instalado la aplicación Google Apps Device Policy en el dispositivo Android y
una cuenta Google Apps Work (gratis por 30 días).

Figura 50: Aplicación de Google Apps Device Policy

La gestión empresarial desde Google Apps, tiene la capacidad de políticas de gestión


seguridad en los aspectos:

o Borrado remoto del dispositivo.


o Bloqueo remoto del dispositivo móvil.
o Políticas de seguridad sobre el uso de contraseña/PIN.

TEMA 3 – Ideas clave 41


Seguridad en Sistemas Operativos

Mediante una consola de administración de Google Apps Work, podremos manejar


nuestros dispositivos asociados.

Figura 51: Consola de administración de Google Apps Work.

Protección contra el acceso físico

o Bloqueo de la tarjeta SIM

Para usar el servicio telefónico en nuestro dispositivo, tendremos que introducir el


PIN de dicha tarjeta. Este PIN protege el uso de la tarjeta SIM y sus
servicios. La primera vez, si arrancamos el dispositivo con esta tarjeta nos pedirá
el código de ella, y no podremos saltarnos la autenticación, pero si quitamos esta
tarjeta sí que se podrá acceder sin problemas.

TEMA 3 – Ideas clave 42


Seguridad en Sistemas Operativos

Figuras 52 y 53: Acceso con (derecha) y sin (izquierda) tarjeta SIM

El código PIN de la tarjeta suele ser un código de 4 dígitos numéricos. Este PIN se
puede modificar hasta poner 8 dígitos. Se recomienda modificar el número de 4
dígitos que viene con la tarjeta a uno de 8. Las cifras del nuevo PIN nunca deberán
ser iguales o consecutivas (por ejemplo: “22222222” o “12345678”).

Para cambiar el PIN de la tarjeta tendremos que ir a Ajustes > Seguridad >
Bloqueo de la tarjeta SIM > Cambiar PIN de la tarjeta. Una vez en la
pantalla, ir a la opción Cambiar PIN de SIM.

TEMA 3 – Ideas clave 43


Seguridad en Sistemas Operativos

Figuras 54 y 55: Cambiar clave de la tarjeta SIM.

Por otro lado, la tarjeta del teléfono se protege contra el acceso por fuerza bruta de
la clave PIN, limitando los intentos a 3. Una vez superado el límite de 3 intentos la
tarjeta se bloquea y para desbloquearla deberemos introducir el código PUK.

o Bloqueo del dispositivo

Como hemos podido ver antes, si el dispositivo no tiene una tarjeta SIM no pedirá
autenticación para acceder a él, por ello el bloqueo de nuestro dispositivo móvil
evita que extraños puedan usar el dispositivo.

En un dispositivo encendido, tras un tiempo de inactividad o bien pulsando el


botón de encendido, la pantalla se bloquea. Para mostrar la pantalla de desbloqueo
tendremos que pulsar de nuevo el botón de encendido.

Los dispositivos de Android disponen de una pantalla de bloqueo general que


consiste generalmente en deslizar el dedo por la pantalla para poder acceder al
resto de las aplicaciones. Esta pantalla proporciona una mala seguridad, solo para
evitar el acceso descuidado al meter el móvil en el bolsillo, no por un acceso mal
intencionado…

TEMA 3 – Ideas clave 44


Seguridad en Sistemas Operativos

Figuras 56 y 57: Desbloqueo de la pantalla inseguro.

Tras esta pantalla de desbloqueo, dependiendo de la configuración del bloqueo


de la pantalla, se nos pedirá un PIN, una contraseña, un patrón o bien nos
dejará entrar libremente. La opción más segura es el uso de una contraseña o
un patrón. Tras introducir mal cinco veces una contraseña, PIN o patrón, el
dispositivo se bloqueará por al menos treinta segundos.

Para ver las opciones de bloqueo del dispositivo ve a Ajustes > Seguridad >
Bloqueo de pantalla. Como se puede ver en la siguiente imagen, existen varias
formas de bloqueo del dispositivo.

Figura 58: Opciones de bloqueo de pantalla.

TEMA 3 – Ideas clave 45


Seguridad en Sistemas Operativos

o Bloqueo con Patrón: el patrón ofrece una forma visual y fácil de memorizar de
bloqueo de un dispositivo. Si seleccionamos este método se nos mostrará una
pantalla con nueve puntos. Deberemos trazar una línea por al menos cuatro
puntos.

Figura 59: Bloqueo mediante patrón.

Para realizar un Patrón más seguro, se recomienda realizar un patrón complejo


utilizando de seis a nueve puntos. También, si es que nos muestran la opción,
configurar para que no vibre y no se muestre en patrón a la hora de introducirlo.

El uso de patrón está muy extendido pero tiene un problema, la marca que se deja
en la pantalla al introducir el patrón a veces es bastante clara y un atacante podría
usarla para imitar el patrón y acceder al dispositivo.

o Bloqueo con código PIN: mediante el desbloqueo del dispositivo con el código
PIN, se pedirá un número. El número que introduciremos deberá ser de 9
números. Dicho número tendrá que ser introducido cada vez que queramos usar
el dispositivo. Sería importante que el código que introducimos sea fácil de
recordar y debería ser diferente al de la tarjeta SIM.

o Bloqueo con Contraseña: el bloqueo mediante contraseña funciona igual


que el bloqueo con número PIN, pero esta vez el código introducido podrá
contener caracteres alfanuméricos. Para especificar una mayor seguridad, se

TEMA 3 – Ideas clave 46


Seguridad en Sistemas Operativos

recomienda una contraseña compleja con números, letras y caracteres especiales.


La contraseña puede tener de cuatro a dieciséis caracteres.

Este suele ser el método más seguro, pues la cantidad de combinaciones posibles
para la contraseña es mayor que en los otros métodos.

La seguridad a nivel de una aplicación de Android

Como ya se ha comentado, las aplicaciones se ejecutan dentro de una Sandbox. De


esta manera evitamos posibles fallos de seguridad entre aplicaciones y el propio
sistema operativo. Como el sistema de procesos en Sandbox no permite, por defecto,
acceso a recursos del sistema que no sean los de la propia aplicación, es necesario que
estos sean explícitamente declarados. Para declarar los permisos, cada aplicación
proporciona el archivo AndroidManifest.xml.

En el siguiente ejemplo se ve una configuración del AndroidManifest.xml. Se


pueden ver resaltadas dos etiquetas con el nombre uses-permission, que declaran
explícitamente los permisos de acceso a internet y de escritura en el almacenamiento
externo.

<?xml version="1.0" encoding="utf-8"?>


<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.app.myapplication" >

<application […]>
[…]
</application>

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

</manifest>

Tal y como aparece en la siguiente imagen, los permisos específicos declarados en


AndroidManifest.xml, los acepta el usuario cuando va a instalar la aplicación.

TEMA 3 – Ideas clave 47


Seguridad en Sistemas Operativos

Figura 60: Aceptar permisos para instalar una aplicación.

El sistema de Android no permite la aceptación parcial de los permisos. Sin


embargo, en la versión 4.3 de Android hubo un intento de deshabilitar permisos
individuales. Dicha opción fue escondida alegando problemas de seguridad.

AppOps es una aplicación de Android 4.3 y 4.4 y que permite gestionar los
permisos de las aplicaciones individualmente:
https://play.google.com/store/apps/details?id=fr.slvn.appops

Figuras 61, 62 y 63: Aplicación AppOps.

TEMA 3 – Ideas clave 48


Seguridad en Sistemas Operativos

Se pueden ver los permisos que existen por defecto en la última versión de la API
de Android:
https://developer.android.com/reference/android/Manifest.permission.html

Por otro lado la aplicación puede declarar permisos personalizados para el acceso a
sus recursos desde otras aplicaciones.

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.me.app.myapp" >
<permission android:name="com.universidad.my.new.PERMISSION "
android:label="@string/permlab_ejemploActivity"
android:description="@string/permdesc_ejemploActivity"
android:permissionGroup="android.permission-
group.MY_GROUP_PERMISSION"
android:protectionLevel="dangerous" />
[...]
</manifest>

En el ejemplo anterior podemos ver cómo hemos declarado:

com.universidad.my.new.PERMISSION

Por seguridad Android obliga el firmado de aplicaciones. Las aplicaciones que se


intenten instalar sin haber sido firmadas, son rechazadas tanto por Google Play
como por el propio dispositivo de Android. Con la firma de la aplicación se identifica
inequívocamente al creador de la aplicación. Si dos aplicaciones tienen la misma
firma, existe la posibilidad (configurándolo en el AndroidManifest.xml) de que
cuando las dos aplicaciones se instalen en el mismo dispositivo compartan un mismo
identificador de usuario UID. De esta manera, las dos aplicaciones compartirán los
recursos que les han sido asociados.

TEMA 3 – Ideas clave 49


Seguridad en Sistemas Operativos

Figura 64: Espacio de aplicación compartido de Android.

El rooteo de Android

El proceso de rooting o rooteo de un teléfono Android trasforma el usuario


actual en usuario root. Tal y como hemos explicado en Linux, el usuario root es el
usuario con más privilegios del sistema. Android deshabilita por defecto este
usuario en todos los dispositivos para evitar problemas de seguridad.
Entonces, si no es seguro, ¿en qué situaciones deberemos de rootear nuestro
dispositivo? Estas son algunas razones:

o La desinstalación de una aplicación que la compañía de teléfonos fuerza a


mantener instalada.
o Instalar una aplicación que silencie el teléfono automáticamente a partir de una
hora y haga el proceso contrario a otra.
o Instalar la última versión de Android en un teléfono para el que ya no se hagan
nuevas actualizaciones.
o Instalar un kernel optimizado.

TEMA 3 – Ideas clave 50


Seguridad en Sistemas Operativos

iOS

iOS es el sistema operativo de Apple para dispositivos móviles. Existe una gama de estos
dispositivos comercializados como iPhone, iPad y iPod. Todos ellos presentan una
pantalla táctil y el iOS. A medida que han ido apareciendo las nuevas generaciones de
cada dispositivo, han ido aumentando y mejorando el hardware, los sensores y las
nuevas versiones del sistema operativo. A diferencia de Android, tanto el hardware
como el sistema operativo de estos dispositivos móviles son fabricados por una única
marca, Apple. Esta peculiaridad hace que los drivers estén perfectamente desarrollados
para que funcionen con un extra de seguridad.

El primer dispositivo que nació con este sistema operativo fue en 2007, el iPhone. En
el mismo año salió el primer iPod. Para que el primer iPad apareciera tuvieron que
pasar 3 años más.

La última versión del iOS es la 8 y está presente en los modelos iPhone y iPad. En este
documento describiremos principalmente las características hasta la versión iOS 7.

La arquitectura de seguridad de iOS

La arquitectura de seguridad de este sistema operativo es la heredada desde MAC OS


X. A su vez MAC OS X se basó en Darwin BSD (Unix).

La securización de iOS, implica cuatro aspectos generales: datos que se almacenan,


datos que se envían, seguridad en las aplicaciones y seguridad en el propio
dispositivo.

Empezaremos por el proceso de arranque, en el que el sistema se asegura de que todo


el hardware y software está autorizado por Apple. Esta verificación se hace
comprobando los elementos firmados.

En la ejecución de una aplicación en iOS se distinguen cuatro capas. Cada una de ellas
engloba a la anterior. Estas interfaces ofrecen la capacidad de generar aplicaciones
que funcionan en diferentes dispositivos. La capa más alta (Cocoa Touch) ofrece un
nivel más alto de abstracción y la capa más baja (Core OS) ofrece instrucciones más
elementales. Cada una de las capas engloba una serie de frameworks con los que se
accede a los diferentes recursos de la plataforma.

TEMA 3 – Ideas clave 51


Seguridad en Sistemas Operativos

Figura 65: Capas de aplicación de iOS.

A nivel de ejecución de las aplicaciones tenemos una Sandbox que evita, mediante
perfiles, que una aplicación pueda acceder a los recursos de otra.

La actualización de iOS

Desde la versión 5.0 de IOS se permite la actualización del sistema operativo desde el
propio sistema operativo. Todas las versiones necesitaban actualizarse conectándose
al ordenador y usar el iTunes.

Para realizar la actualización del sistema operativo tendremos que ir al menú Ajustes
> General > Actualización de software. En el caso de que exista una
actualización del sistema, nos pedirá confirmación para poder actualizarlo. El
dispositivo deberá tener acceso a internet para poder realizar dicha actualización.

Figura 66: Actualización mediante iTunes.

TEMA 3 – Ideas clave 52


Seguridad en Sistemas Operativos

Figuras 67 y 68: Actualización en el mismo dispositivo.

Proceso de arranque

El proceso de arranque protege al sistema frente a hardware no autorizado por


Apple. Este proceso consiste en validar la firma que Apple hace sobre cada uno de
los dispositivos que autoriza. Además en el arranque se verifica que el código que se
va a ejecutar también haya sido firmado por Apple.

Al arrancar iOS ejecuta el BootROM, una memoria de solo lectura que contiene un
certificado raíz, que es el que se usa para verificar la firma del Low Level
Bootloader (LLB). Seguidamente el LLB verifica y le pasa la ejecución al iBoot, el
cual terminará ejecutando el kernel.

Cada uno de los pasos de este proceso de arranque, verifica al siguiente y si alguno de
los pasos fallara en su verificación, el arranque sería interrumpido.

TEMA 3 – Ideas clave 53


Seguridad en Sistemas Operativos

La Sandbox

Todas las aplicaciones no desarrolladas por Apple, son ejecutadas de una forma
independiente en una Sandbox (App XNU Sandbox). De esta manera se evita el
acceso a archivos de otras aplicaciones o de hacer
cambios en el sistema. Las restricciones de la
Sandbox se establecen mediante perfiles para cada
aplicación. En la instalación de una aplicación se
genera un directorio privado donde se guardan todos
los datos de dicha aplicación. Para que una aplicación
B pueda acceder a una aplicación A, la aplicación A
tendrá que tener desarrollado una API para tal
efecto. La aplicación B usará servicios de iOS para
poder acceder a dicha API.

Los archivos del sistema se mantienen protegidos en


una partición de solo lectura. La mayoría de iOS y las
aplicaciones de terceros usan el usuario “mobile”, que
es un usuario sin privilegios. Por otro lado existe el
usuario “root”. Hay que tener en cuenta que la
Sandbox no limita el acceso a ciertos ficheros del
sistema como puede ser Mobile Safari.
Figura 69: Sandbox de iOS.

La Sandbox establece permisos granulados de cada aplicación a nivel del sistema. A


diferencia de Android, estos permisos no tienen que estar aceptados para que la
aplicación esté instalada sino que pueden ser activados y desactivados en cualquier
momento. De hecho, no existe el concepto “permisos”, sino que se les llama “recursos
del sistema”. Para modificar el acceso a estos recursos del sistema puedes ir a Ajustes
> Privacidad.

TEMA 3 – Ideas clave 54


Seguridad en Sistemas Operativos

Figura 70: Ajustes de privacidad.

Secure Enclave

El coprocesador Secure Enclave está disponible en dispositivos móviles basados en


A7 de Apple. Su función es la de proporcionar un modo seguro de realizar operaciones
criptográficas en el cifrado del sistema, protección de datos y la gestión y protección
de claves.

Contiene memoria cifrada y un generador de números aleatorios a nivel de hardware,


que en los iOS se encarga de la generación de claves criptográficas. Además la
comunicación con el procesador se hace de manera aislada.

Este procesador tiene un id de usuario (UID) generado en fábrica y desconocido por


Apple. También su propio proceso de arranque y un software de actualización
personalizado y distinto al software de actualización del dispositivo. En su arranque
genera una clave que mezcla con su propio id y la emplea para cifrar su porción de
memoria en el dispositivo.

Este procesador también es responsable de procesar los datos biométricos de Touch


ID y verificar si la huella táctil introducida pertenece a la huella configurada para
desbloquear el dispositivo.

TEMA 3 – Ideas clave 55


Seguridad en Sistemas Operativos

El cifrado del dispositivo, Data Protection

Desde la versión 3GS de iPhone, para todas las versiones de iPad y desde la 3.ª
generación de iPod Touch, los dispositivos con iOS mantienen cifrados todos los
datos de dicho dispositivo. Esta característica no puede ser deshabilitada.

El cifrado de la memoria usa AES 256 bit junto con SHA-1 mediante un chip
criptográfico. El sistema usa el UID asignado en fábrica y que protegido mediante
hardware para no ser descubierto. Para ser más difícil el descifrado por fuerza bruta
se recomienda utilizar el Data Protection, que añadirá un extra de seguridad para
datos sensibles.

Figura 71: Ajustes de protección de datos.

El Data Protection necesita introducir un passcode. El passcode se usará junto


con el UID del teléfono para el cifrado y descifrado. El passcode también lo
utilizaremos para la pantalla de desbloqueo de nuestro dispositivo. Pero no todos los
passcodes son iguales e iOS distingue entre dos tipos: numérico de 4 cifras y
alfanumérico. El alfanumérico sería el más seguro y claro, cuanto más complejo sea,
más seguro. También se puede configurar para que si la clave de desbloqueo no se
descubre en 10 intentos el contenido del teléfono de borre solo.

A nivel de arquitectura Data Protection cada vez que se crea un archivo se genera
una nueva clave de 256 bit y se la da a AES que la usa para cifrar el archivo. La clave
es envuelta en una clase dependiendo de la accesibilidad que tenga el archivo. La clave

TEMA 3 – Ideas clave 56


Seguridad en Sistemas Operativos

se guardará en los metadatos del archivo cifrado. Cada vez que el archivo quiere ser
utilizado, los metadatos del archivo serán descifrados con la clave del sistema,
recuperando la clase con la clave y el nivel de protección. Tras extraer la clave, AES
descifra el archivo.

Figura 72: Funcionamiento del cifrado.

Hay que tener en cuenta que en el caso de tener las claves custodiadas en el ordenador
con iTunes, con el que se ha sincronizado el dispositivo móvil, también sería posible
descifrar todos los contenidos almacenados en dicho dispositivo.

A lo largo del tiempo se han ido descubriendo diferentes vulnerabilidades por las
cuales se ha conseguido saltarse las diferentes protecciones ofrecidas por la
plataforma. Especialmente todas las relacionadas con un acceso físico al móvil. Se
recomienda principalmente no conectar el teléfono a ordenadores de terceros.

Por otra parte, se sabe que Apple mantiene en secreto un procedimiento para poder
acceder por completo a todos los datos contenidos en sus dispositivos, cifrados o no.
Dicho procedimiento se aplica mediante una orden judicial y Apple no ha concretado
detalles de cómo se produce.

Finalmente, en el borrado de datos, estos mismos no se borran completamente, sino


que son sus claves las que se quedan completamente borradas, siendo indescifrables.
Para el borrado de estas claves se usan capacidades de acceso a memoria a muy bajo
nivel llamadas Effaceable Storage.

TEMA 3 – Ideas clave 57


Seguridad en Sistemas Operativos

Gestión Empresarial del dispositivo

La gestión empresarial requiere una configuración avanzada de los dispositivos iOS.


Esta configuración se hace a través de los perfiles de configuración. Para la
especificación de dicha configuración se utilizan ficheros xml con extensión
“mobileconfig”.

La primera vez que se instalan los perfiles de configuración en un dispositivo iOS, ha


de ser usando la Apple Configurator del dispositivo, con el USB conectado al
ordenador o a través del Over the-Air Enrollment.

Figura 73: Apple Configurator.

El resto de las veces, los perfiles pueden también ser distribuidos adjuntos en emails,
desde un servidor web o por soluciones de gestión empresariales (MDM).

TEMA 3 – Ideas clave 58


Seguridad en Sistemas Operativos

La configuración de los perfiles contiene configuración sobre los siguientes ajustes:

o Políticas de las claves de desbloqueo (passcode).


o Restricciones sobre los recursos del dispositivo (el uso de la cámara, por
ejemplo).
o Ajustes Wifi.
o Ajustes VPN.
o Ajustes del servidor de correo electrónico.
o Ajustes sobre servicios de LDAP y CalDAV.
o Ajustes avanzados de red.
o Permitir la sincronización de datos con el iCloud.
o Permitir el uso o no de aplicaciones y sus preferencias.

Figura 74: Ajustes de perfiles.

Por otro lado el protocolo Mobile Device Managment (MDM) permite a negocios
securizar dispositivos iOS a nivel de empresa, a través de soluciones empresariales
como Microsoft Exchange ActiveSync.

TEMA 3 – Ideas clave 59


Seguridad en Sistemas Operativos

Las soluciones MDM para iOS nos permiten:

o Gestión de Apps en el dispositivo.


o Eliminar o bloquear, de manera remota, el móvil y los datos que se almacenan en
el dispositivo, así como los datos del perfil. Esta medida evita que si el dispositivo
se pierde o roba, sus datos o cuentas de configuración puedan ser utilizados por
terceros.
o Administrar de manera remota los ajustes de configuración.
o Gestión de perfiles de configuración

Protección contra el acceso físico

La protección contra el acceso es parecida a la de Android y muchas de las


recomendaciones para este dispositivo pueden aplicarse también para iOS. Para evitar
repeticiones, iremos comparando los diferentes aspectos de iOS con los reflejados en
Android.

o Bloqueo de la tarjeta SIM

A diferencia de Android, iOS deja acceder al dispositivo móvil sin haber


introducido el código PIN de la tarjeta. Pese a que con Android no nos dejaba
entrar sin haber introducido el código PIN, tampoco era una medida muy difícil
saltarse, pudiendo insertar una tarjeta de teléfonos de la que sí pudiésemos saber
su código PIN.

Figura 75: Desbloqueo de la SIM.

TEMA 3 – Ideas clave 60


Seguridad en Sistemas Operativos

Es siempre aconsejable añadir medidas de bloqueo del dispositivo móvil. iOS nos
ofrece el Código de acceso y el Touch ID.

También es aconsejable el cambio del PIN con las mismas recomendaciones que
en Android. Para cambiar el PIN de la tarjeta tendremos que ir a Ajustes >
Teléfono > PIN de la SIM.

Figuras 76, 77 y 78: Cambio del PIN.

TEMA 3 – Ideas clave 61


Seguridad en Sistemas Operativos

o El bloqueo del dispositivo

Al igual que Android, iOS ofrece una pantalla de bloqueo general que simplemente
protege al dispositivo de un acceso accidental.

Figura 79: Desbloqueo por defecto.

Bloqueo con Patrón: los modelos de iOS no tienen el bloqueo con patrón como
opción dentro de la plataforma. Existen apps que una vez hecho el JailBreak de
la plataforma, pueden añadir esta función.

Figura 80: Desbloqueo por patrón.

TEMA 3 – Ideas clave 62


Seguridad en Sistemas Operativos

Con Cydia podemos tener un patrón tal y como sucede en los dispositivos
Android. Más información en la siguiente dirección web:
http://www.cydiaios7.com/

Bloqueo con código: anteriormente hemos hablado del Data Protection


para aumentar la seguridad del dispositivo. El Data Protection se activa
cuando introducimos el código (passcode) para el bloqueo de nuestro móvil.

Para introducir el código de bloqueo iremos a Ajustes > Código. Una vez allí,
tendremos que elegir entre un código numérico o un alfanumérico. El
alfanumérico sería el más seguro y claro, cuanto más complejo sea, más seguro.

Figuras 81 y 82: Ajustes de código.

Touch ID: es un sistema de seguridad mediante huella dactilar disponible en


iPhone 5S, iPhone 6, iPad Air2 y iPad Mini. Integrado en el botón “Home” del
dispositivo, el dispositivo no solo lee tu huella sino que además aprende con el
tiempo más detalles de la misma.

Proporciona una manera más sencilla de acceder seguramente al dispositivo, junto


con un passcode suficientemente largo y complejo. Con Touch ID no se sustituye
el código con el que accedemos al nuestro móvil, dicho código lo podremos seguir
utilizando incluso con el Touch ID activo en las siguientes circunstancias:

TEMA 3 – Ideas clave 63


Seguridad en Sistemas Operativos

- Después de 5 intentos fallidos con tu huella dactilar.


- Hemos reiniciado o encendido el dispositivo.
- No se ha desbloqueado en las últimas 48 horas.
- Al realizar ajustes sobre las huellas almacenadas.

En la configuración de la huella tendremos que introducirla varias veces, y una


vez finalizado nos pedirá ajustar el agarre.

Figuras 83 y 84: Configuración de la huella.

Cuando el botón “Home” detecta un dedo, este lo escanea y manda la imagen al


Secure Enclave para que lo analice. La imagen del dedo se grava temporalmente
en la memoria del Secure Enclave mientras se vectoriza para su posterior
análisis y se elimina tras la vectorización. El resultado de la huella introducida se
compara con el que se mantiente en memoria y si coinciden se desbloquea el
dispositivo.

Hay que tener en cuenta, que la información de la huella o huellas con las que se
configuran el dispositivo nunca abandona la memoria del Secure Enclave y
nunca puede ser utilizada para redibujar la huella original.

TEMA 3 – Ideas clave 64


Seguridad en Sistemas Operativos

Pese a todo este conjunto de mecanismos de seguridad que rodena al Touch ID,
el día después de la comercialización del iPhone 5S, un grupo alemán
denominado CCC consiguieron saltarse la protección del dispositivo usando una
huella digital dejada en el dispositivo móvil.

La seguridad a nivel de una aplicación de iOS

Una vez arrancado el dispositivo, iOS controla qué aplicación se puede ejecutar. Para
que una aplicación pueda instalarse desde el App Store en el dispositivo iOS, ha de
estar previamente firmada por un certificado de Apple. Todas las aplicaciones que
vienen con el sistema, como puede ser el navegador, también están firmadas con un
certificado de Apple.

Para que un desarrollador de iOS pueda firmar una aplicación con un certificado de
Apple, ha de estar previamente registrado en el iOS Developer Program. Apple
verifica la identidad con la que se ha registrado y emite el certificado con el que
posteriormente se firmará la aplicación. Una vez subida al App Store, Apple
también prueba que la aplicación funciona como se ha descrito.

A nivel empresarial, iOS también permite la instalación de aplicaciones sin publicarse


en el App Store. Estas aplicaciones solo se podrán utilizar en los dispositivos de
empresa seleccionados.

Con la aplicación ya instalada en el dispositivo, esta funciona dentro de una Sandbox


(explicada ya en este documento) que evita que dicha aplicación utilice los recursos
del sistema de manera inadecuada.

A nivel de datos que guarda la aplicación, iOS SDK ofrece una API para poder
asignar una clase de Data Protection a los datos. También se pueden usar las APIs
que cifran los datos sin tener el Data Protection activo. En el apartado anterior “El
cifrado del dispositivo, Data Protection” se habla en más detalle de este tema.

o Jailbreak

Jailbreak es el proceso por el cual eliminamos las restricciones que Apple tiene
asignadas a nuestro dispositivo. Esto engloba todas las medidas explicadas en el
documento. Por lo cual, permite la instalación de cualquier hardware o software

TEMA 3 – Ideas clave 65


Seguridad en Sistemas Operativos

sin firmar así como modificar aspectos del sistema que no nos era posible
modificar. El símil en Android sería el rooteo, explicado anteriormente.

En este proceso se aprovechan las vulnerabilidades encontradas en hardware,


sistema operativo u otra aplicación relacionada. Existen dos tipos de Jailbreak:

- Tethered: requiere conectar el dispositivo al ordenador durante el proceso de


arranque y así evitar software no firmado. Este proceso es el menos usado
puesto que requiere que el dispositivo esté conectado a un ordenador cada vez
que se inicia.
- Untethered: consiste en alterar la parte del sistema operativo que comprueba la
firma del código. Es el más utilizado pues no es necesario conectarlo cada vez
que iniciamos el dispositivo.

Este proceso requiere un riesgo, que es que todas las aplicaciones funcionan como
usuario root. Esto deja abierta la posibilidad de que aplicaciones de código
malicioso puedan instalarse en el dispositivo. El lado bueno es que podremos
cambiar nuestra interfaz de usuario, instalar aplicaciones no permitidas por Apple,
como por ejemplo el acceso al móvil por patrón (al igual que en Android).

3.4 Virtualización de sistemas operativos

¿Qué es la virtualización? ¿En qué consiste?

La virtualización es la simulación de los recursos de un ordenador, se crea una capa de


abstracción entre el hardware de la máquina física (host) y el sistema operativo de la
máquina virtual, dividiendo el recurso en uno o más entornos de ejecución. Al poder
ofrecer varias máquinas virtuales a la vez, permite que varios sistemas operativos se
ejecuten simultáneamente en una única máquina física.

No solo juega el papel de administrar los sistemas, sino para aumentar la seguridad, ya
que ante un problema ocasionado en el ordenador no pondrá tener acceso a todo el
sistema.

TEMA 3 – Ideas clave 66


Seguridad en Sistemas Operativos

Figura 85: Diagrama de virtualización.

Tipos de virtualización

La virtualización se puede hacer desde cualquier sistema operativo siempre y cuando sea
compatible con el programa que usemos.

1. Virtualización asistida por hardware: son extensiones que son introducidas en


las arquitecturas x86 con el fin de facilitar las tareas de virtualización al software
ejecutándose sobre el sistema. Existen cuatro niveles de privilegio de ejecución, el
primer nivel es el 0 (cero) que es el que tiene más privilegios, el cual está destinado a
las operaciones del Kernel del Sistema Operativo. Seguidamente están los niveles 1,2
y 3, que tienen menos privilegios que los procesos de usuario.
2. Virtualización de almacenamiento: es el proceso de unir varios dispositivos de
almacenamiento en red, en lo que parece ser una única unidad de red de
almacenamiento.
3. Virtualización Completa: consiste en ejecutar el código de la máquina virtual
sobre el procesador físico donde se está ejecutando el sistema Operativo anfitrión.
4. Particionamiento: es la división de un solo recurso, por ejemplo el espacio de disco
o el ancho de banda de red.
5. Paravirtualización: plantea los problemas derivados de la virtualización completa.
La paravirtualización consiste en modificar el sistema operativo invitado para que
ayude con el hipervisor en la virtualización. De esta forma se evita que el hipervisor

TEMA 3 – Ideas clave 67


Seguridad en Sistemas Operativos

tenga que interceptar las instrucciones privilegiadas que realiza el núcleo del sistema
operativo invitado.
6. Máquina virtual o virtualización de servidores: depende de la función que
deba hacer cada servidor podemos tener varias instancias de servidores ejecutándose
sobre el mismo hardware, aunque cada máquina tendrá componentes virtuales.
7. Hypervisor de almacenamiento: es un pack de gestión centralizada, se utiliza
para mejorar el valor combinado de los sistemas de disco de almacenamiento múltiple
incluyendo los modelos diferentes e incompatibles completando sus capacidades
individuales con el aprovisionamiento extendido.

Ventajas y desventajas virtualización

Ventajas:

Ahorro, aumenta la utilización y la productividad.


Protección.
Automatización, reduce los tiempos y las tareas del aprovisionamiento.
Funcionamiento, aumenta la capacidad de trabajo, la facilidad de reservar recursos y
el tiempo de reacción.
Simplicidad y coste.
Flexibilidad, gana la independencia del hardware, la agilidad en migraciones y la
capacidad de crecimiento organizado.
Seguridad, empleando herramientas como puntos de retorno o Snapshots en caso de
catástrofe.

Desventajas:

Las aplicaciones son más lentas.


Interoperabilidad entre diferentes máquinas.
Aplicaciones nativas del microprocesador.
El tiempo de procesamiento es mayor.
El cliente tiene que controlar y mantener su servidor, sino es administrado.
Limitación de recursos, como pueda ser aceleración de vídeo por Hardware
(Aplicaciones 3D, juegos multimedia).
Dependencia total del servidor anfitrión, el cual si se avería afecta a todas las
máquinas virtuales alojadas en él.

TEMA 3 – Ideas clave 68


Seguridad en Sistemas Operativos

Software para Virtualización

1. Xen: es una herramienta de virtualización que se ejecuta por debajo del sistema
operativo y actúa como hypervisor del mismo. Utiliza una técnica denominada
paravirtualización para alcanzar un mayor rendimiento, a través de esta técnica se
puede alcanzar un alto rendimiento de arquitecturas. A través de ella se pretende
abstraer la mayor cantidad de aplicaciones posibles y proteger las aplicaciones
poniéndolas en máquinas virtuales diferentes.

2. KVM (Kernel-based virtual machine): está basada en Qemu, consiste en una


solución para incrementar la virtualización completa con Linux. Permite utilizar
máquinas virtuales utilizando imágenes de disco que contienen sistemas operativos
sin modificar. (Viene integrado en el núcleo de Linux a partir de la versión 2.6.20 del
kernel). Algunas de sus características son:
o Soporta tecnología NUMA, por lo que le permite una escalabilidad amplia.
o Usa un Scheduler y un gestor de memoria propio del kernel.
o Fácil de instalar.

3. Open VZ: Es una tecnología de virtualización en el nivel de sistema operativo para


Linux. Permite que el servidor físico ejecute múltiples instancias de sistemas
operativos aislados, conocidos como Servidores Privados Virtuales o Entornos
Virtuales. Está basado en un núcleo de Linux modificado el cual proporciona:
o Virtualización y aislamiento.
o Administración de recursos.
o Puntos de comprobación.

4. Hyper-V: Es una tecnología de virtualización de Microsoft, que permite consolidar


distintos entornos de trabajo en un único servidor físico. Proporciona una solución
fiable y optimizada que permite a las empresas mejorar la utilización de sus servidores
y reducir sus costes.
o Herramientas de administración basadas en GUI.
o Virtualización nativa de 64 bits basada en hypervisor.
o Compatibilidad con memoria de máquina virtual de gran tamaño.

TEMA 3 – Ideas clave 69


Seguridad en Sistemas Operativos

Tabla comparativa

Características XEN KVM OPENVZ

Virtualización Completa ✓ ✓ ✖

Paravirtualización ✓ ✓ ✖

Contenedores
✖ ✖ ✓
(S. Operativo virtual)

Licencia GPL GPL GPL

i686, x86-64,
i686, x86-64, IA64, i686, x86-64, IA64,
Arquitecturas IA64, PPC,
PPC PPC, S390
SPARC

Paravirtualización, Paravirtualización,
muy rápida y muy rápida y
Rendimiento Nativo
virtualización virtualización
completa media. completa media.

SMP ✓ ✓ Nota 1.

CPU ✓ ✓ Nota 2.

¿Independiente de Host? ✓ ✖ ✖

Virtualización
Virtualización completa y
Migración en
Observaciones completa, necesita: Paravirtualización,
vivo
VT / AMD-V necesita: VT /
AMD-V, upstream

Figura 86: Tabla comparativa.

Nota 1. Contenedores (OpenVZ / Virtuozzo, Linux-VServer, LXC) no son una tecnología


de virtualización por sí mismas, solamente tienen un sistema de caracteres “super
chroot”. Todos los «invitados» de los procesos de los contenedores se ejecutan
directamente sobre el mismo “host” del núcleo, y como tal, generalmente tienen acceso
a la misma cpu/ram/etc. de recursos del anfitrión. Por ejemplo, el contenido de los
procesos puede ser de 64 bits y uso de múltiples CPUs. Los límites de los recursos se
imponen generalmente de la misma manera que con un proceso ordinario de Linux.

La emulación generalmente es la misma, sea cualquiera que sea el kernel anfitrión de


forma nativa, por ejemplo es capaz una máquina de 64bits con x86_64 kernel de ejecutar
32 bits de binarios i386, o si el Linux-abi de módulos cargados puede ser capaz de

TEMA 3 – Ideas clave 70


Seguridad en Sistemas Operativos

ejecutar binarios de Unix SCO, aunque no tienen nada que ver con el contenedor del
sistema.

Nota 2. OpenVZ puede cambiar la memoria de la CPU y de la cuota durante el tiempo de


ejecución, no existe una verdadera conexión en caliente, ya que no hay ningún invitado
en los núcleos.

Diferencias entre: KVM, OPENVZ y XEN

Algunas de las diferencias más importantes entre: KVM, OpenVZ y Xen son las
siguientes:

OpenVZ solo funciona en plataformas con Linux y no permite realizar


modificaciones del kernel. En OpenVZ, muchas empresas de hosting tienden a hacer
overselling, puesto que instalan en una máquina dedicada un gran número de réplicas
en ella. Posteriormente cuando un cliente emplea una de sus «réplicas» puede
provocar ralentizaciones al resto de usuarios que tengan alquilada otra porción de este
tipo, ya que este sistema de virtualización está basado en prioridades según los
recursos que el usuario necesite y si un determinado usuario hace una demanda
importante de estos, provocará una disminución de velocidad que afectará a la
experiencia del resto de clientes alojados.

Xen es un hypervisor ligero, el cual optimiza los recursos en las tareas que más lo
necesiten. Otra ventaja es que no se puede sobrescribir por otros hosts, no comparte
memoria y da soporte a HVM (Virtualización Completa) y PV (Paravirtualización) en
el Hypervisor.

KVM es un módulo de virtualización para Kernels de Linux, necesita que el nodo de


host tenga instaladas extensiones de virtualización de Hardware, cabe añadir que la
empresa RedHat le ofrece soporte, mientras que no se lo ofrecen a Xen por defecto
en: Enterprise Linux 6, en contraposición a KVM que sí. Este tipo de solución en
comparación a las otras analizadas y debido a su desarrollo tiende a ser el futuro de la
virtualización que está por llegar. A pesar de que comparte características con Xen,
sigue un acercamiento mucho más complejo, puesto que requiere más plugins para
llevar a cabo tareas que otros hacen. Sin embargo al tener más complejidad este tipo
de solución le da más juego de personalización y adaptabilidad permitiendo ajustarse
a la configuración que necesite el administrador en cada caso. Si se emplea una

TEMA 3 – Ideas clave 71


Seguridad en Sistemas Operativos

configuración más simple como el de las otras soluciones analizadas, quizás no habría
tanta disponibilidad de métodos de configuraciones, es por ello que KVM aspira a
tener una buena perspectiva de futuro y a competir directamente con Xen.
En definitiva según las necesidades que se precisen en el entorno de trabajo, se debe
de llevar a cabo un estudio minucioso de las soluciones de virtualización disponibles
en el mercado así como del rendimiento que estas ofrezcan.

Seguridad en sistemas virtualizados

Algunas características que debemos de tener en cuenta, a la hora de securizar nuestros


sistemas virtualizados son los siguientes:

1. Asegurar las capas: a día de hoy cualquier sistema virtualizado está constituido
por diferentes niveles, es imprescindible establecer ciertas medidas como controles
de seguridad en cada uno de estos, emplear un firewall dentro del clúster de
máquinas virtuales, sistema de prevención de intrusiones, actualizaciones de
software , etc.

2. Documentación: es fundamental establecer continuamente exámenes de


seguridad alrededor de los elementos que uno desconoce que están. Para ello, hay
que estar atento de que los componentes, así como sus funciones básicas estén
suficientemente bien documentadas, al igual que los técnicos responsables que las
manipulen. Además es imprescindible entender como fluye el tráfico de información
a través de la infraestructura que tengamos implementada, pues dependiendo del
tipo de datos que manejemos será necesario asegurarlos debidamente en nuestros
servidores virtuales. Una forma de hacerlo es con una política de copias de seguridad
adecuada, aparte de rastrear los flujos de datos de arriba a abajo para cerciorarse de
cuáles son las áreas más vulnerables donde se requieren medidas adicionales de
seguridad.

3. Restringir y separar: el control y autorización de usuarios a un sistema es una


función esencial en seguridad, en concreto y con más énfasis en ambientes
virtualizados donde el control de un Hypervisor puede significar también el control
sobre el resto de máquinas virtuales que corran sobre este, por esta razón y siempre
que nos sea posible hay que evitar que este tenga una IP propia asignada dentro de
nuestro segmento de LAN. Por ello, siempre debe quedar completamente definido,
el acceso de los administradores de sistemas a determinados servicios, así como no

TEMA 3 – Ideas clave 72


Seguridad en Sistemas Operativos

deberían tener permitido poder: encender, modificar y cerrar ningún servidor


virtual de nuestro CPD. Las contraseñas son otra función crítica de la seguridad,
permiten monitorizar, identificar y contrastar todas las actividades que tienen lugar
dentro del ambiente virtualizado.

4. Asegurar la red virtual: este tipo de requisito es imprescindible para evitar


intrusiones de tipo MITM (man in the middle), donde las máquinas virtuales
pueden verse comprometidas debido a la captura del tráfico entre ellas. Para
impedir este tipo de ataques, es importante aprovechar debidamente las
características de seguridad de los switches virtuales. La mayoría de proveedores de
soluciones de virtualización disponen de un abanico amplio de opciones que
permiten a las empresas establecer VLANs que segmenten los dispositivos y el
tráfico de la red de acuerdo con unas políticas de seguridad más acordes.

5. Protección de VMS: las máquinas virtuales inactivas pueden ser iniciadas con
rapidez en un entorno virtual. Sino es analizada y protegida previamente antes de
ser puesta en línea, puede exponer a todo el entorno virtual frente a amenazas de
seguridad, puesto que en esa misma máquina estamos alojando diversas VMS.

6. Migración: una buena política de prevención sería migrar de forma dinámica junto
a las VMS entre máquinas anfitrionas, físicas o en la nube. De hecho, muchas
soluciones de virtualización (Vmware), nos permiten llevar a cabo clonaciones de
VMS y restauración de Snapshots mientras los propios usuarios están trabajando,
siendo completamente transparente para ellos y asegurándonos un respaldo en caso
de incidente.

7. Supervisión de integridad: utilidad que nos permite llevar a cabo un


seguimiento de la manipulación y cambios que se hayan llevado a cabo en
directorios o archivos, con el fin de conocer posibles accesos no autorizados o de
software malicioso. Puede implementarse en una única aplicación virtual con el
objetivo final de proteger datos concretos, tales como financieros, sanitarios,
militares, etc.

8. Veeam: herramienta de backup y de administración y/o centralización de logs del


Hypervisor.

TEMA 3 – Ideas clave 73


Seguridad en Sistemas Operativos

9. Colaboración: se debe trabajar en conjunto con el área de IT y Auditoría para


coordinar la gestión y el monitoreo de los Hypervisors.

10. Requisitos normativos: es necesario proporcionar información adicional de


seguridad que sirva como base complementaria para poder cumplir con requisitos
específicos como: ley de protección de datos, Pci, etc.

TEMA 3 – Ideas clave 74


Seguridad en Sistemas Operativos

Material complementario

Lecciones magistrales

Seguridad en iOS

En esta lección magistral se tratarán más a fondo los temas de seguridad relacionados
con el popular sistema operativo de Apple para sus teléfonos móviles, los iPhone.

La clase magistral está disponible en el aula virtual.

No dejes de leer…

Seguridad en dispositivos móviles

El siguiente documento realiza un estudio sobre la seguridad en dispositivos móviles y


smartphones. En el estudio analizan temas como las extensiones y prestaciones de los
dispositivos móviles analizados, los hábitos de uso, las medidas de seguridad tomadas o
las incidencias de seguridad que hayan ocurrido. El estudio ha consistido en 3.607
entrevistas online (en PC) entre los meses de febrero y abril de 2012.

Accede al artículo a través del aula virtual o desde la siguiente dirección web:
https://www.alarmaseguridad.com/wp-content/uploads/estudio_moviles_1c12.pdf

TEMA 3 – Material complementario 75


Seguridad en Sistemas Operativos

A fondo

Package filter

Manual original del comando pf (Package Filter) que forma parte de las distribuciones
OS X 10.7 y posteriores y que sustituyó al IPFW2.

Accede al manual a través del aula virtual o desde la siguiente dirección web:
http://www.openbsd.org/faq/pf/index.html

La vulnerabilidad del Touch ID

Al día siguiente de la comercialización del iPhone 5S, un grupo denominado CCC


(Chaos Computer Club) desbloquearon probó la vulnerabilidad del Touch ID.
Mediante una huella dejada en el dispositivo móvil lograron desbloquearlo.

Accede a los reportajes a través del aula virtual o desde las siguientes direcciones web:
http://ccc.de/en/updates/2013/ccc-breaks-apple-touchid
https://vimeo.com/75324765

Cyndia

Se consideran una alternativa al App Store. Es unicamente instalable en


dispositivos iOS que han pasado por el proceso de jailbreak.

Accede a la aplicación a través del aula virtual o desde la siguiente dirección web:
http://cydia.saurik.com/

TEMA 3 – Material complementario 76


Seguridad en Sistemas Operativos

Apple Configurator

Aplicación para poder configurar tu dispositivo Apple en los ámbitos


de negocios y educación.

Accede a la aplicación a través del aula virtual o desde la siguiente dirección web:
https://www.apple.com/uk/support/business-education/apple-configurator/

Android-x86 Project

Existe la posibilidad de hacer funcionar un dispositivo Android en una máquina Virtual


como Virtual Box

Accede al proyecto a través del aula virtual o desde la siguiente dirección web:
http://www.android-x86.org/

Amazon Appstore for Android

Una Alternativa a Android App Store. Como promoción, regalan


aplicaciones cada día.

Accede a la descarga y al tutorial a través del aula virtual o desde las siguientes
direcciones web:
http://www.amazon.com/gp/mas/get-appstore/android/ref=mas_rw_ldg
https://www.amazon.es/gp/feature.html?ie=UTF8&docId=1000644893

TEMA 3 – Material complementario 77


Seguridad en Sistemas Operativos

Webgrafía

Buscar mi iPhone, iPad, iPod touch o Mac

Aplicación que ayuda a encontrar tu dispositivo.

Accede a la página web a través del aula virtual o desde la siguiente dirección:
https://www.apple.com/es/support/icloud/find-my-device/

Common Data Security Architecture (CDSA)

Página del Open Group sobre el CDSA

Accede a la página web a través del aula virtual o desde la siguiente dirección:
http://www.opengroup.org/security/l2-cdsa.htm

UNIX BSD

Página web del sistema operativo UNIX BSD.

Accede a la página web a través del aula virtual o desde la siguiente dirección:
http://www.bsd.org/

TEMA 3 – Material complementario 78


Seguridad en Sistemas Operativos

FreeBSD

Página web del sistema operativo FreeBSD que derivó del UNIX BSD.

Accede a la página web a través del aula virtual o desde la siguiente dirección:
https://www.freebsd.org/

Mach

La página del Mach Project desde el cual se han derivado otros conocidos kernels.

Accede a la página web a través del aula virtual o desde la siguiente dirección:
http://www.cs.cmu.edu/afs/cs/project/mach/public/www/mach.html

Mac OS X

Página web del sistema operativo Mac OS X,


donde poder comprar el sistema operativo y
conocer sus ventajas.

Accede a la página web a través del aula virtual o desde la siguiente dirección:
http://www.apple.com/es/macosx/

TEMA 3 – Material complementario 79


Seguridad en Sistemas Operativos

AppStore

Actualmente todas las actualizaciones


tanto de OS X como de iOS se realizan a
través del AppStore. Esta es la página del
sistema de distribución de aplicaciones de
Apple.

Accede a la página web a través del aula virtual o desde la siguiente dirección:
http://www.apple.com/es/osx/apps/app-store/

Apple Open Source

Sección en la web de Apple donde publican los proyectos de código abierto que incluyen
en su plataforma.

Accede a la página web a través del aula virtual o desde la siguiente dirección:
https://www.apple.com/opensource/

Android

Página web del popular sistema operativo para móviles Android, en el que podemos
conocer información acerca de las versiones de Android.

Accede a la página web a través del aula virtual o desde la siguiente dirección:

TEMA 3 – Material complementario 80


Seguridad en Sistemas Operativos

http://www.android.com

iOS

Página oficial de iOS España donde encontraremos las novedades de este sistema
operativo.

Accede a la página web a través del aula virtual o desde la siguiente dirección:
https://www.apple.com/es/ios/

TEMA 3 – Material complementario 81


Seguridad en Sistemas Operativos

Proveedores de MDM (Mobile Device Managment)

En esta página se hace una comparación de proveedores de servidos tanto Android


como iOS.

Accede a la página web a través del aula virtual o desde la siguiente dirección:
http://www.enterpriseios.com/wiki/Comparison_MDM_Providers

TEMA 3 – Material complementario 82


Seguridad en Sistemas Operativos

Test

1. En Mac OS X, respecto a la herramienta FileVault, indica qué afirmación es correcta.


A. Es un firewall que viene por defecto en el sistema. Nos permite analizar tráfico
TCP y UDP.
B. No es compatible con Apple Talk.
C. Nos permite cifrar las carpetas de usuario o el disco duro completo.
D. La utilizan otras aplicaciones como llavero para obtener las distintas claves de
servicios o sitios web.

2. ¿Cuál es el principal defecto de Android?


A. Que gran parte de la gente tiene el dispositivo rooteado, facilitándole la entrada
al malware.
B. La Sandbox defectuosa que traen de fábrica los dispositivos.
C. La tecnología NFC que llevan implantados los dispositivos, que permite el robo
de datos bancarios a la víctima.
D. La gran diversidad de fabricantes y dispositivos, con los problemas que ello
conlleva.

3. Indica cuál de las siguientes afirmaciones sobre iOS es correcta:


A. Para arrancar el sistema iOS hay varios pasos y cada uno debe verificar las firmas
del hardware y software.
B. No se permite la instalación de aplicaciones si no se aceptan sus permisos.
C. El cifrado del dispositivo es opcional en la versión iOS 8.
D. Al borrar un archivo se hace un borrado seguro, rellenando todo el archivo con
un array de ceros.

4. ¿Cuál de las siguientes preferencias no afecta a la seguridad de Mac OS X?


A. Fecha y Hora.
B. Usuarios y grupos.
C. Time Machine.
D. Mission Control.

TEMA 3 – Test 83
Seguridad en Sistemas Operativos

5. ¿Cuál no es un tipo de software de virtualización?


A. OpenVZ.
B. Xen.
C. SCO.
D. KVM.

6. ¿Cuál es la principal desventaja de rootear de un Android o realizar un Jailbreak de


iOS?
A. Los desarrolladores pierden dinero pues se instalan aplicaciones piratas.
B. Permite al malware que afecte con mayor facilidad el sistema operativo.
C. Puede causar que el sistema operativo se vuelva mucho más inestable, dando
lugar a cierres forzados de aplicaciones y reinicios aleatorios.
D. Todas las anteriores son falsas.

7. ¿En qué consiste la seguridad a nivel de aplicación de Android?


A. En una serie de permisos que tiene cada aplicación.
B. En un sistema de Sandbox que envuelve el proceso de aplicación.
C. En firmas de aplicaciones que debe certificar Google.
D. Todas las anteriores son ciertas.

8. A la hora de securizar nuestros sistemas virtualizados, indica qué hace falta tener en
cuenta:
A. La documentación.
B. Controlar y autorizar usuarios.
C. Supervisar la integridad.
D. Todas las anteriores son correctas.

9. ¿Cuál de los siguientes métodos de acceso es el más seguro para desbloquear un


dispositivo móvil?
A. Touch ID.
B. Contraseña alfanumérica.
C. Patrón de desbloqueo.
D. Los tres anteriores son igual de robustos.

TEMA 3 – Test 84
Seguridad en Sistemas Operativos

10. Respecto a la opción de compartir en Mac OS X, indica cuál es correcta:


A. La pantalla compartida utiliza comunicación cifrada.
B. El DVD o CD compartido utiliza comunicación cifrada.
C. Los archivos compartidos por FTP utilizan comunicación cifrada.
D. Ninguno de los anteriores utiliza comunicación cifrada.

TEMA 3 – Test 85

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy