Está en la página 1de 31

UNIVERSIDAD LATINA

SEGURIDAD INFORMATICA II

X. HARDENING DE SISTEMAS OPERATIVOS


(GNU/LINUX, WIN2003).

E.I. L.E. Prof. Ramón Castro Liceaga


¿Qué es Hardening?
Hardening (palabra en ingles que significa endurecimiento)
en seguridad informática es el proceso de asegurar (dar
seguridad) un sistema mediante la reducción de
vulnerabilidades en el mismo, esto se logra eliminando
software, servicios, usuarios, etc. Innecesarios en el
sistema así como cerrando puertos que tampoco estén en
uso además de muchas otros métodos y técnicas que
fortalecen la seguridad en los Sistemas Operativos.
Concepto de un sistema operativo.

Un sistema operativo (SO) es el programa o conjunto de


programas que efectúan la gestión de los procesos básicos
de un sistema informático, y permite la normal ejecución
del resto de las operaciones.
Concepto de un sistema operativo.
Capacidad de
evolución Archivo de mandatos Interactivamente Detección y tratamiento
de errores. De E/S, de
y Obteniendo paridad en memoria o
Simplificando
un buen buses, de ejecución en
su uso
rendimiento Permite el dialogo del los programas
usuario con el sistema
a la explotación de
una computadora Operaciones sobre
archivos. Creación,
los Que ayudan a Ejecución de borrado, renombrado,
usuarios Mandatos apertura, escritura y
lectura.

Programas
Sistema Órdenes de E/S.
Operaciones de lectura,
Operativo escritura y modificación
Conjunto de Multiusuario del estado de los
(SOM) periféricos.
Niveles de
Usuarios SOM
Ejecutar, parar y
Programas de Shell abortar programas
usuario
Servicios Ejecución de
Servicios
Núcleo
Administración
Hardware Asignar los recursos
a los programas en ejecución.

Contabilidad de los recursos Asegurar que unos trabajos Asegurar la confidencialidad


que usan los programas. no interfieran con otros. de la información.
Estructura de los Sistemas Operativos.

Como gestor de recursos, el Sistema Operativo administra:

•La CPU (Unidad Central de Proceso, donde está alojado el


microprocesador).
•Los dispositivos de E/S (entrada y salida)
•La memoria principal (o de acceso directo).
•Los discos (o memoria secundaria).
•Los procesos (o programas en ejecución).
y en general todos los recursos del sistema
Procesos de un sistema operativo.

Un proceso es un programa en ejecución que necesita


recursos para realizar su tarea: tiempo de CPU, memoria,
archivos y dispositivos de E/S. El SO es el responsable de:

•Crear y destruir los procesos.


•Parar y reanudar los procesos.
•Ofrecer mecanismos para que se comuniquen y sincronicen
Procesos de un sistema operativo.
de 2 estados Es un algoritmo que define claramente
el comportamiento de los procesos,
de 5 estados con sus estados, colas de espera y
Variables de 7 estados pautas de Intercalado pudiendo usar
de n estados prioridades para la asignación de

conteniendo
Registros recursos
el sistema
Contador operativo
gestionada por de proceso (único)
de
Unidad de Modelos
programa procesa- de del proceso padre
en
ejecución miento Procesos
del usuario

Programa Identificadores
de Procesos Creando
un grupos
Procesos Relación
(árboles)
Basados en
entre los
Subsistema procesos
Despachador y
del núcleo Sus
Jerarquía su creador
creados
(padre)
(hijos)

Lista de Esperando
Función Colas
Procesos un recurso

Prioridades

Recorrer la cola
de procesos y Se usa para
Importancia Seleccionar
Planificar la ejecución asignada a su asignación
de uno de ellos un proceso de recursos
Sistemas Operativos (Microsoft Windows)
Sistemas Operativos (Linux)
En 1991, Linus Torvalds empezó a escribir el núcleo Linux y
decidió distribuirlo bajo la licencia GPL (licencia general
Pública). Rápidamente, múltiples programadores se unieron
a Linux en el desarrollo, colaborando a través de Internet
y consiguiendo paulatinamente que Linux llegase a ser un
núcleo compatible con UNIX. En 1992, el núcleo Linux fue
combinado con el sistema GNU, resultando en un sistema
operativo libre y completamente funcional. El Sistema
Operativo formado por esta combinación es usualmente
conocido como "GNU/Linux" o como una "distribución Linux"
y existen diversas variantes.
Seguridad en Sistemas Operativos (seguridad vs. Protección)
Los sistemas de una computadora manejan información que suele ser valiosa
para sus propietarios, por lo que la seguridad en dichos sistemas es un
elemento importante en el diseño y funcionamiento de los sistemas operativos.

Debemos distinguir entre los términos seguridad y protección.

La seguridad de un sistema va desde aspectos tales como la protección ante


posibles daños físicos de los datos (incendios, terremotos, etc.) hasta el acceso
indebido a los sistemas (intrusos, fallos de confidencialidad, etc.). Los ataques
contra la confidencialidad, la integridad o la disponibilidad de recursos de un
sistema deben prevenirse y solventarse mediante la política y los mecanismos de
seguridad de un sistema.

La protección consiste en evitar que se haga un uso indebido de los recursos


que están dentro del ámbito del sistema operativo. Para ello deben existir
mecanismos y políticas que aseguren que los usuarios solo acceden a sus propios
recursos (archivos, zonas de memoria, etc.) Además es necesario comprobar
que los recursos solo se usan por aquellos usuarios que tienen derecho de
accesos a los mismos.
Bases para la Seguridad en Sistemas Operativos
•Evitar la pérdida de datos. Puede ser provocada por catástrofes naturales o
artificiales (terremotos, guerras, etc.), a errores de hardware (rotura de un
disco), a errores humanos (borrado accidental de un archivo). Aquí el sistema
operativo no tiene mucho que hacer, casi todo es parte de las políticas de
gestión de datos.

•Controlar la confidencialidad de los datos. Una simple asignación de bloque de


disco libre a un usuario le proporcionara el bloque con el contenido del usuario
anterior si el sistema operativo no tiene una política definida para este tipo de
situaciones. En estos casos siempre hay que limpiar los recursos de los datos
anteriormente existentes. En esta parte participa el sistema operativo y las
políticas de seguridad externas al sistema operativo.

•Controlar el acceso a los datos y recursos. Esto sí es competencia directa del


sistema operativo. Es necesario asegurar que los usuarios no acceden a archivos
para los que no tienen permisos, a cuentas de otros usuarios a páginas de
memoria o bloques de disco que contienen información de otros usuarios (aunque
ya estén en desuso).
Hacerle la vida difícil al atacante (Hardening)
•Ese es el resumen de la razón de ser del Hardening de
sistemas operativos, que se podría decir que es un conjunto
de actividades que son llevadas a cabo por el administrador
de un sistema operativo para reforzar al máximo posible la
seguridad de su equipo. Su propósito, entorpecer la labor
del atacante y ganar tiempo para poder minimizar las
consecuencias de un inminente incidente de seguridad e
incluso, en algunos casos, evitar que éste se concrete en su
totalidad.
Hardening e invulnerabilidad

•Una de las primeras cosas que hay que dejar en claro del
Hardening de sistemas operativos es que no necesariamente
logrará forjar equipos “invulnerables”.

• Según el modelo de defensa en profundidad, el host es


sólo una capa de éste. Es un factor más a considerar
dentro del gran número de puntos a ser tomados en
cuenta para defender “globalmente” un sistema
Actividades propias de un proceso de hardening

•Configuraciones necesarias para protegerse de posibles


ataques físicos o de hardware de la máquina. Entre otras
actividades, destacan:

• El upgrade de firmware (actualizaciones),


• El establecimiento de contraseñas complejas para el arranque del
equipo y la configuración de la BIOS,
• La deshabilitación de inicio de sistema para cualquier unidad que no
sea el disco duro principal,
• y en casos de servidores, la deshabilitación de dispositivos ópticos,
usb o similares, para evitar cualquier entrada de malware desde un
medio de almacenamiento externo.
Actividades propias de un proceso de hardening

• Instalación segura del sistema operativo. Esto


implica, entre otras cosas:

• El considerar al menos dos particiones primarias (una


para el sistema operativo en sí y otra para carpetas y
archivos de importancia),
• el uso de un sistema de archivos que tenga prestaciones
de seguridad, y el concepto de instalación mínima, es
decir, evitando la instalación de cualquier componente de
sistema que no sea necesario para el funcionamiento del
sistema.
Actividades propias de un proceso de hardening
• Activación y/o configuración adecuada de servicios de
actualizaciones automáticas, para asegurar que el equipo
tendrá todos los parches de seguridad que entrega el
proveedor al día.

En caso de que se encuentre dentro de una corporación, es


adecuado instalar un servidor de actualizaciones, que
deberá probar en un entorno de laboratorio el impacto de
la instalación de actualizaciones antes de instalarlas en
producción.
Actividades propias de un proceso de hardening
•Instalación, configuración y mantención de programas de seguridad
tales como Antivirus, Antispyware, y un filtro Antispam según las
necesidades del sistema.

•Configuración de la política local del sistema, considerando varios


puntos relevantes:
1. Política de contraseñas robusta, con claves caducables,
almacenamiento histórico de contraseñas (para no usar contraseñas
cíclicas), bloqueos de cuentas por intentos erróneos y requisitos de
complejidad de contraseñas.
2. Renombramiento y posterior deshabilitación de cuentas estándar del
sistema, como administrador e invitado.
3. Asignación correcta de derechos de usuario, de tal manera de
reducir las posibilidades de elevación de privilegios, y tratando
siempre de limitar al mínimo los privilegios y/o derechos de los
usuarios activos.
4. Configuración de opciones de seguridad generales, como aquellas
relacionadas con rutas de acceso compartido, apagado de sistema,
inicio y cierre de sesión y opciones de seguridad de red.
Actividades propias de un proceso de hardening
5. Restricciones de software, basado en lo posible en el uso de listas
blancas de software permitido más que en listas negras del mismo.

6. Activación de auditorías de sistema, claves para tener un registro


de algunos intentos de ataque característicos como la adivinación de
contraseñas.

•Configuración de servicios de sistema. En este punto es necesario


tratar siempre de deshabilitar todos aquellos servicios que no vayan a
prestar una funcionalidad necesaria para el funcionamiento del sistema.
Por ejemplo, si su equipo no posee tarjetas de red inalámbrica, el
servicio de redes inalámbricas debería estar deshabilitado.

•Configuración de los protocolos de Red. En la medida de lo posible, es


recomendable usar sistemas de traducción de direcciones (NAT) para
direccionar los equipos internos de una organización. Deshabilitar todos
aquellos protocolos de red innecesarios en el sistema y limitar el uso de
los mismos al mínimo. TCP/IP es un protocolo que no nació pensando en
seguridad, por lo que limitar su uso al estrictamente necesario es
imperativo.
Actividades propias de un proceso de hardening
•Configuración adecuada de permisos de seguridad en archivos y carpetas del
sistema. En la medida de lo posible, denegar explícitamente cualquier permiso
de archivo a las cuentas de acceso anónimos o que no tengan contraseña. Un
correcto set de permisos a nivel de carpetas y archivos es clave para evitar
acceso no deseado al contenido de los mismos.

• Configuración de opciones de seguridad de los distintos programas, como


clientes de correo electrónico, navegadores de internet y en general de
cualquier tipo de programa que tenga interacción con la red.

• Configuración de acceso remoto. En caso de no ser estrictamente necesario,


es bueno deshabilitar el acceso remoto. Sin embargo, cuando es necesario
tener control remoto de la máquina, es preciso configurarlo de manera
adecuada, restringiendo el acceso a un número muy limitado de usuario,
restringiendo al mínimo las conexiones concurrentes, tomando cuidado en la
desconexión y cierre de sesión y estableciendo un canal cifrado de
comunicaciones para tales propósitos, como SSH.
Actividades propias de un proceso de hardening

• Configuración adecuada de cuentas de usuario, tratando de trabajar


la mayor parte del tiempo con cuentas de acceso limitado y
deshabilitando las cuentas de administrador. Es absolutamente
recomendable usar la impersonificación de usuarios para realizar
labores administrativas en vez de iniciar sesión como administradores.

• Cifrado de archivos o unidades según las necesidades del sistema,


considerando un almacenamiento externo para las llaves de descifrado.
Considerar además la opción de trabajar con sistemas de cifrado de
mensajería instantánea y correo electrónico.

• Realizar y programar un sistema de respaldos frecuente a los


archivos y al estado de sistema. En la medida de lo posible,
administrar los respaldos vía red o llevar los respaldos a unidades
físicas que estén alejadas del equipo que las origina.
Actividades de hardening en Linux.
1.Asegurar los procesos de arranque (del bootstrapping del sistema)
2.Asegurar los servicios o demonios que se ejecuten en el inicio y apagado del sistema
3.Aseguramiento de Sistemas de archivos (comúnmente denominados File System en *NIX)
4.Uso de opciones de limites y forzar cuentas de usuario
5.Políticas del sistema, filtrados y Acls (lista de control de acceso)
6.Protección a ataques físicos o de Hardware (Seguridad Física)
7.Actualización de Firmware, BIOS, Softpaq, contraseñas de arranque de los equipos, desactivación de unidades
externas en servidores como pen drive o memorias USB, disqueteras, unidades de Cd/DvD, opticas.
8.Protección y renombre de cuentas de Administración y deshabilitar o invalidar cuentas estándares, invitado, uso
de cuentas limitadas.
9.Restricción de Instalación de Software y Hardware de acuerdo a las políticas de seguridad.
10.Habilitar los sistemas de Auditorias y Monitoreo de logs.
11.Asegurar consolas de administración, pantallas de logeo, terminales virtuales y accesos remotos.
12.Políticas y procedimientos de administración de cuentas de usuario, grupos, TCBS (Truste Base Computing), módulos
de autenticación agregables y relaciones de confianza.
13.Administración de paquetes de instalación, parches (Patchs), upgrades, updates, módulos instalables, integridad de
archivos y permisos en el sistema.
14.Aseguramiento de las Herramientas de Desarrollo y compiladores.
15.Aseguramiento de Núcleos (Kernel) del sistema.
16.Instalación y afinación de Firewalls, Kits de Seguridad (Antivirus, antispyware, antimalware, anti hackers, anti
banners) Sistemas de Detección de Intrusos y Sensores como IDS,IPS,HIDS, NIDS.
17.Uso de Herramientas para Pen Testing y Monitoreo .
18.Configuración de Protocolos, Puertos y Servicios (Solo los necesarios).
19.Implementación de esquemas de seguridad, DMZ, Front End / Back End, Router apantallados, proxys, Firewalls.
20.Políticas de Procedimientos de Respaldo y de Disaster Recovery.
Actividades de hardening en Windows.
El propósito de un hardening del sistemas es eliminar el mayor número de riesgos de seguridad como sea posible.

Entre las actividades propias de un proceso de hardening se pueden contar las siguientes:
1. Informarse sobre su Sistemas
•Información del Sistema
Inicio -> Programas -> Accesorios -> Herramientas del Sistemas -> Información del Sistema
Actividades de hardening en Windows.
•Información de red

Inicio -> Programas -> Accesorios -> Símbolo del Sistema -> digitamos ipconfig /all
Actividades de hardening en Windows.
2. Usuarios

•Eliminar usuarios innecesarios

My PC -> Click derecho -> Administrar -> Usuarios y Grupos Locales -> Usuarios -> Click derecho sobre el usuario
a eliminar -> Eliminar.

•Deshabilitar usuarios como el invitado o guest

My PC -> Click derecho -> Administrar -> Usuarios y Grupos Locales -> Usuarios -> Click derecho sobre el usuario
a eliminar -> Propiedades -> Activar la casilla Cuenta Deshabilitada.
Actividades de hardening en Windows.
•Configurar Políticas de Usuario

Inicio -> Panel de Control -> Herramientas del Administrativas -> Directivas de Seguridad Local -> Directivas de
cuenta -> Directivas de Contraseña.

En este punto se deben revisar lo que dicen las mejores prácticas de seguridad y configurarlas.
Actividades de hardening en Windows.
•3. Configuración de acceso remoto.

Mi PC -> Propiedades -> Remoto -> Activar o Desactivar Escritorio Remoto


Actividades de hardening en Windows.
4. Directivas de Grupo
•Proteger el protector de pantalla con clave

Inicio -> Ejecutar -> Gpedit.msc -> Configuración de Usuario -> Plantillas Administrativas -> Panel de Control ->
Pantalla

Para esto primero se debe habilitar el “Proteger el protector de pantalla mediantes contraseña”, luego definir el
protector de pantalla a ejecutar en “Nombre de archivo ejecutable del protector de pantalla” y finalmente el tiempo
en que se activara “Tiempo de espera del protector de pantalla”

Esta configuración será aplicada para todos los usuarios y ellos no podrán cambiarla.
Actividades de hardening en Windows.
5. Activar Firewall

Inicio -> Panel de Control -> Firewall


Actividades de hardening en Windows.
6. Actualizaciones Automáticas

Inicio -> Panel de Control -> Actualizaciones Automáticas


Actividades de hardening en Windows.
7. Deshabilitar servicios innecesarios

Inicio -> Panel de Control -> Herramientas del Administrativas -> Servicios
Conclusión.

El Hardening es una ayuda indispensable


para habilitar la seguridad y ahorrarse
bastantes inconvenientes en la administración
del sistema. Entre las ventajas del
Hardening tenemos: la disminución de
incidentes de seguridad, mejoras en el
rendimiento al eliminar cargas inútil en el
sistema como programas innecesarios, entre
otros.

También podría gustarte