Seguridad en Sistemas Operativos

En todo sistema operativo, existe la posibilidad de poner una protección por contraseña para asegurarnos que la persona que usa ese sistema (usuario), está autorizada por el administrador del equipo a acceder a sus recursos. Esto es especialmente importante cuando el sistema al que se accede es multiusuario. A cada usuario se le asigna una zona de memoria de la cual no puede salir, de este modo, se protege otras áreas del sistema operativo para que el usuario no las toque.

El usuario tiene un identificador que se asocia a los procesos del usuario y ademas posse un username y un password que puede ser:

-Un código o combinación que sabe. (Password)
-Una llave o tarjeta que posee. (Dispositivo criptográfico)
-Una retina, huella, ADN... que identifica unívocamente al usuario. (Biometría)

El número minimo de caracteres ha de ser 6 y el maximo 8 (por el DES).
Un password debe guardarse encriptado cifrando el 0 con la password como clave del DES. Para compararlo con la introducida por el usuario, ésta ultima se encripta y se compara con la almacenada.

En linux las passwords se guardaban en /etc/password y ahora en /etc/shadow que es un fichero al que no puede acceder nadie salvo el sistema.

Este fichero se estructura asi:

username:password:id:gid:NyAp:DirHome:Shell

La password se amplía a 11 caracteres + 2 de semilla.

Lo procesos llevan asociados un id de usuario que es quien ha ejecutado ese proceso.
El sistema usa páginas de memoria virtual para almacenar los procesos.
Es un sistema de seguridad para evitar catástrofes como el segmentation fault.
Cada proceso tiene una id de usuario (uid) y una de grupo (gid) además de las efective uid y guid (euid y egid)

En linux los dispositivos van embebidos en archivos de modo que la protección es la misma que la de ficheros.

Cada recurso sabe que usuarios pueden acceder a él.
Un proceso solo puede tener un usuario pero un fichero puede tener muchos.

Listas ACL (Access Control List): listas inteligentes: El fichero tiene una lista de usuarios con sus permisos sobre el fichero.

Los ficheros tienen 3 grupos de permisos: rwxrwxrwx
r de Read, w de Write y x de eXecute, si los parmisos son de un directorio, el read se usa para ver el contenido, el write para subir ficheros y execute para entrar en él.
El primero es para el root o administrador, el segundo para el grupo de usuarios y el tercero para el usuario.
Si ademas tiene "t", significa que una persona solo puede incidir en sus ficheros.
Si lleva "s", que solo afecta a ejecutables, significa que si un usuario ejecuta ese archivo y no es suyo, el proceso tendrá su uid pero como efective uid la del propietario. De este modo, el usuario puede cambiar la password.

Backup o copia de seguridad:
Para proteger aún más el sistema de posibles roturas, fallos, modificaciones involuntarias,etc se utilizan las copias de seguridad, hay dos factores que influyen en la realización de las copias de seguridad en cuanto a la cantidad y al tamaño, estos factores son:

La fiabilidad del almacenamiento.
*La velocidad de modificación de los datos.
*Dependiendo de estos factores, aparecen dos tipos de copias:

*La Total o completa, en la que se copia toda la información que se desea proteger.
*La parcial o diaria, que dependiendo de los factores anteriores, puede copiar toda la información cada cierto tiempo añadiendo, las modificaciones ocurridas ese mismo día.