miércoles, 25 de enero de 2017

SEGURIDAD ACTIVA:sistema operativo y aplicaciones

1.Carrera de obstáculos
Por muchas medidas de control de acceso que pongamos, un hacker puede sentarse de un equipo de nuestra empresa. O directamente robar un portátil a uno de nuestros directivos.

1.1 La caja del ordenador
Lo primero es evitar que pueda abrir la caja del ordenador para llevarse el disco duro y destriparlo tranquilamente en casa.La mayoría de las cajas de los ordenadores de sobremesa llevan un par de anclajes donde colocar un candado normal.


1.2 La BIOS del ordenador
Con el candado, el hacker ya no se podrá llevar el disco.La técnica del arranque con LiveCD,montábamos tranquilamente el disco duro local.
Para evitar que un hacker haga lo mismo, hay que entrar en la BIOS para modifi car el
orden de arranque. Por defecto suele estar puesto primero el CD/DVD y después el disco
duro local HDD,
Esta tarea se suele hacer cuando llega un nuevo equipo a la empresa. Tampoco hay que olvidar
cambiar las contraseñas del administrador.

Si hemos olvidado las contraseñas de la BIOS, la solución típica es retirar la pila que
mantiene esos valores en memoria. En las placas base modernas directamente hay un
jumper que, si está cerrado cuando el ordenador arranca, borra esos valores.





1.3 EL BOOT MANAGER
En este disco puede ocurrir que tengamos instalados varios
sistemas operativos (o varias versiones del mismo sistema, como suele ocurrir en Linux),
de manera que, al arrancar, un programa llamado boot manager (gestor de arranque)
nos permite elegir uno de ellos.

1.4 CIFRADO DE PARTICIONES
Con las barreras que hemos puesto hasta ahora, el hacker no se puede llevar nada; solo
puede arrancar desde el disco local y solo puede elegir alguna de las entradas del boot
manager.Vamos a cifrar el contenido, de manera que sea ilegible.
PASOS:


Resultado de imagen de CIFRADO DE PARTICIONES





Resultado de imagen de CIFRADO DE PARTICIONES




Resultado de imagen de TRUE CRYPT



2. Autenticación en el sistema operativo
Hemos conseguido que nuestro hacker no pueda evitar que la máquina arranque con un
sistema operativo instalado por nosotros. Comparado con lo que hemos visto hasta ahora
(BIOS, boot manager),.


2.1. Usuario/password
Es el mecanismo más típico. Aplicando la estrategia «algo que sabes», la pantalla inicial
del sistema espera que la persona introduzca el nombre de un usuario y la contraseña
asociada a ese usuario.
Si nos equivocamos, bien porque el usuario no existe, bien porque la contraseña no
es la correcta, el sistema nos impide la entrada y nos deja intentarlo de nuevo. En
algunos sistemas nos ofrece una pista sobre la contraseña (si la pusimos la última vez
que cambiamos la contraseña).

Para poner las cosas más difíciles a los hackers, una buena medida es cambiar el nombre
por defecto de los usuarios con más privilegios sobre el sistema. Así no solo tendrán
que aplicar la fuerza bruta sobre la contraseña, sino también sobre el nombre del
usuario.

Aun así, siempre conviene utilizar contraseñas no triviales: palabras que no aparezcan
en el diccionario de ninguna lengua, combinar letras mayúsculas con minúsculas, números,

signos de puntuación, etc.


2.2. Tarjetas
En algunas ocasiones, el mecanismo de usuario y contraseña no es sufi ciente: es inseguro
(alguien puede espiar qué teclas pulsamos) o simplemente molesto (por ejemplo,
en los tornos de acceso a la entrada de la empresa no podemos perder el tiempo tecleando).


Las tarjetas con chip son más seguras pero más caras, por lo que se utilizan en ocasiones
especiales. Hay dos tipos:

  •  Las que son simplemente un dispositivo de almacenamiento: contienen nuestras clavespara que las lea el dispositivo donde introducimos la tarjeta.


  •  Las que constituyen un dispositivo de procesamiento: contienen nuestras claves, pero nunca salen de la tarjeta. El chip se limita a cifrar con ellas algún desafío que lanza.

2.3. Biometría

La seguridad del mecanismo usuario/contraseña es sufi ciente para la mayoría de las
aplicaciones. La tarjeta es cómoda. Pero cualquiera podría sentarse en nuestro ordenador,
insertar nuestra tarjeta (robada o duplicada), introducir nuestro usuario y contraseña.

La biometría consiste en identifi car alguna característica física del sujeto: la huella dactilar,
el ojo, la voz . La persona o personas autorizadas deben grabar primero
su característica física.

Como hemos dicho antes, el control biométrico no es sustitutivo del usuario/contraseña,
sino complementario: conviene tener los dos para aumentar la seguridad (estrategia
«algo que sabes, algo que eres»).



2.4. Elevación de privilegios

Ya estamos autenticados en el sistema operativo y podemos trabajar con él, pero siempre
limitados a los privilegios asociados al usuario con el que nos hemos presentado.
En las empresas, la mayoría de los empleados utilizan usuarios que no tienen permiso
para realizar tareas de administración de la máquina (usuarios limitados, no administradores);
así se reduce el daño que puedan causar, ya sea por error o porque se ha
colado un virus.

Una solución es salir del usuario actual y entrar como administrador, pero es más sencillo
solicitar, de manera puntual, una elevación de privilegios.
 Consiste en pedirle al sistema 
ejecutar un determinado programa con permisos de administrador. Se aplica solo a ese
programa y solo a esa ejecución: no afecta a las aplicaciones abiertas antes o después,
ni siquiera cuando abramos ese mismo programa más adelante.

Pero al final resultó ser muy molesto, porque muchas herramientas necesitan hacer operaciones
especiales en el sistema y no por eso son peligrosas (por ejemplo, cambiar la
hora).


3. Cuotas
Hasta ahora hemos protegido nuestros sistemas evitando el acceso de personas no
autorizadas; ahora vamos a protegerlos de las personas que sí están autorizadas.
Porque nuestros usuarios, con intención o no, también pueden dañar el sistema.

Hay que asignar las cuotas con cuidado:

  •  Si son muy bajas, tendremos a los usuarios quejándose todos los días porque no les dejamos trabajar. Hay que tener especial cuidado con los usuarios que se crean porque son necesarios para arrancar una aplicación, como el www-data del servidor web Apache: si exceden la cuota, la aplicación se parará.


  •  Si son muy altas, no tendrán el efecto disuasorio que se espera de ellas y, al final, terminaremos comprando más disco.

4. Actualizaciones y parches
Ya tenemos el sistema protegido contra el acceso de extraños y contra el mal uso de los
propios. Pero estamos hablando de software: hecho por humanos y, por tanto, sujeto a
errores.
El CD/DVD que hemos utilizado para instalar Windows contiene una versión concreta
liberada en una fecha concreta; desde entonces, los programadores de Microsoft han
seguido trabajando. El resultado son las actualizaciones: paquetes de software donde
se introducen mejoras y, sobre todo, corrigen defectos.
se descarga automáticamente desde Internet.
Microsoft libera actualizaciones de forma rutinaria, y Service Pack, cada dos semanas,
los martes por la noche; pero si encuentran la solución a un problema urgente, lo liberan
inmediatamente, sin esperar al siguiente martes.
Podemos elegir entre:

  • No buscar actualizaciones ni instalarlas (no recomendable).
  •  Comprobar si hay actualizaciones, pero no descargarlas ni instalarlas. Esto solo tiene sentido en equipos con poco disco o acceso limitado a Internet.


  •  Descargar actualizaciones, pero no instalarlas. En algunos sistemas podemos tener una configuración muy sensible a cambios en el sistema operativo.


  •  Descargar e instalar siempre. Es lo más habitual en los puestos de usuario


5. Antivirus
Podemos tener el sistema actualizado, pero hay mucho programador malicioso que
quiere instalar software en nuestro sistema para su provecho (diversión, espionaje industrial,
etc.). Son los llamados virus informáticos, que son de muchos tipos (gusanos,
troyanos, etc.), pero, en cualquier caso, estamos hablando de malware (software maligno)
y hay que evitarlos.

El antivirus es un programa que está vigilando continuamente lo que ocurre en nuestra
máquina. Concretamente, cualquier software que se intenta ejecutar (ejecutables .exe,
librerías .dll) primero pasa por el antivirus. Él lo compara con su base de dato de virus
y, si lo encuentra, impide que se ejecute y avisa al usuario.

6. Monitorización
labor es instalarlas, formar a los usuarios y, todos los días, vigilar que todo esté normal.
Esta vigilancia consiste en:

  •  Revisar los log del sistema y las aplicaciones. Cualquier suceso anómalo quedará

anotado en alguna parte. Para cada aplicación hay que saber dónde lo hace (fichero,
base de datos).

  • Si el sistema lo permite, activar la copia sincronizada del log en otra máquina. Es

decir, cada aviso se escribe a la vez en nuestra máquina y en otra. De esta forma
podremos analizar un desastre, evitaremos que un hacker borre sus huellas, etc.

  •  Revisar la ocupación del sistema, principalmente el disco y la CPU. Lo habitual es

programar una tarea para revisarlo regularmente (cada cinco minutos, por ejemplo)
y generar una alarma que alerte al administrador cuando se supere algún límite
(90 % del disco, por ejemplo).

  •  Suscribirse a las newsletters de los fabricantes de nuestro hardware y software para tener a mano la información oficial: actualizaciones, parches, nueva funcionalidad, workarounds, etc.


  •  Participar en foros de usuarios de las mismas aplicaciones que nosotros, para estaral día de los problemas que aparecen (puede que nos pase lo mismo) y para poder pedir ayuda si algo nos sobrepasa (en paralelo con la consulta al soporte oficial). La monitorización de los log consiste primero en diferenciar qué es un problema y qué no lo es. El texto de log ayuda porque suele tener un indicador de gravedad (crítica, alto, medio, bajo o simple aviso), aunque es la clasifi cación del fabricante.

7. Aplicaciones web

  •  En los años sesenta y setenta eran monolíticas: toda la funcionalidad, tanto la interfaz de

usuario como la lógica de proceso, estaba en la misma máquina. Los usuarios utilizaban
terminales «tontos» conectados al ordenador principal. La protección de una aplicación
monolítica se centraba en proteger la máquina donde ejecutaban todos los programas.

  •  En los años ochenta y noventa aparecen los ordenadores personales y las redes de

comunicaciones dentro de las empresas. Estos dos avances permiten implementar las
aplicaciones siguiendo la arquitectura cliente-servidor: la interfaz de usuario y parte
de la lógica de proceso están en el ordenador del usuario, y el resto de la lógica de
proceso está en un ordenador central, al que conectan los ordenadores de usuario
mediante la red local. La protección se complica: ahora hay que proteger a cada
cliente, el servidor y la red local de la empresa.

  • A partir de los años noventa, el éxito de Internet permite extender las aplicaciones

web (que siguen el modelo cliente-servidor) a cualquier punto de conexión del planeta.
Hay un par de diferencias con los años ochenta: el cliente suele ser siempre el mismo
(el navegador) y la comunicación utiliza redes públicas, sobre las que la empresa
tiene nulo control. La protección es más difícil que nunca.
Nadie duda de las ventajas de implementar una aplicación mediante tecnologías web:

  •  No necesitamos instalar nada en el cliente: solo se necesita el navegador (que se

incluye con el sistema operativo y que tiene otros usos, como navegar por Internet).
Con esto evitamos instalar un cliente nuevo que pueda entrar en conflicto con otras
aplicaciones de la máquina, el usuario no necesita privilegios especiales para instalar
programas, etc.

  •  Cualquier actualización generada por nuestros programadores (más funcionalidad,

parches que arreglan defectos) está inmediatamente disponible para los usuarios
porque siempre descargan la página actualizada de la última versión. No hay que
esperar a que todos los usuarios sean avisados de la actualización, la descarguen,
instalen, etc.
Por esta razón están ampliamente extendidas en Internet (Google Apps, ZoHo, Twitter,
WordPress YouTube, etc.), y también dentro de las empresas, las intranets. Pero debemos
tener cuidado con:

  •  La máquina que aloja el servidor web y sus aplicaciones accesorias (base de datos y

otras). Siun hacker toma esta máquina, tiene acceso a toda la información y todas
las conexiones de los usuarios. Hay que aplicar las medidas de protección que hemos
estudiado en este tema.

  •  Si la máquina del servidor web no es nuestra, sino alquilada (hosting web), no tenemos

control sobre las medidas de protección. Debemos confiar en la profesionalidad
del proveedor y repasar el contrato, en especial el apartado de los niveles de servicio
(SLA [Service Level Agreement]). Por ejemplo, podemos exigir al proveedor que si el
servidor web está caído más de dos horas al año, nos haga un descuento del 25 %
en la siguiente cuota.

  • La transmisión entre el cliente web (navegador) y el servidor web. Muchas aplicaciones

todavía utilizan el protocolo HTTP, donde todo viaja en texto en claro. En algún
tramo de red puede estar escuchando un hacker y conocer qué hacemos, incluso
modificarlo para su provecho. Debemos optar por HTTPS.

  • La máquina de un usuario conectado puede haber sido hackeada y su navegador también. Por ejemplo, se ha instalado un keylogger que envía todas las contraseñas fuera de nuestro control. En este punto es importante el antivirus.
8. Cloud computing
Después de las aplicaciones web, la siguiente evolución de las aplicaciones en Internet

es el cloud computing (computación en la nube). Conviene diferenciar entre computación
en la nube y almacenamiento en la nube (cloud storage: iCloud, Dropbox, Amazon S3).
El almacenamiento también aporta fl exibilidad (número variable de GB reservados,
backup automático), pero se limita a guardar archivos y carpetas. 
A las empresas ya no les interesa conectar a Internet un servidor web de su CPD porque
necesitan dedicar recursos a proveer QoS (Quality of Service, calidad de servicio), buena
conectividad, servidores potentes, administradores efi caces, etc.


8.1. IaaS: Infrastructure as a Service
Un primera solución de cloud computing es el IaaS (Infrastructure as a Service). Nuestra

empresa quiere poner una máquina entera (un Linux, por ejemplo) en un proveedor,
pero con una diferencia frente al hosting dedicado: esa máquina ejecutará en un entorno
virtualizado, de manera que podemos regular la potencia



Pero en esta opción seguimos necesitando personal especializado para administrar esas
instancias, generarlas, actualizarlas, confi gurar la seguridad, vigilar la virtualización, etc.

8.2. SaaS: Software as a Service
Las empresas que no quieren incurrir en ese gasto (una fábrica de quesos sabe de
quesos, no de software) eligen SaaS (Software as a Service), aplicaciones completas
donde el mismo proveedor se encarga del desarrollo de la aplicación, su mantenimiento
y también pone las máquinas y la conectividad (o en las máquinas de un IaaS, pero
nunca en las nuestras).
Por ejemplo, para el correo de la fábrica de quesos, en lugar de utilizar una máquina
nuestra (lo que supone contratar una buena conexión a Internet y asumir los recursos
humanos necesarios para realizar la confi guración, administración, monitorización

No hay comentarios:

Publicar un comentario