Hello iPad user! You should definitelydownload and try our free iPad app!

Published (M)

Curso "Seguridad en Sistemas Operativos"

Presenta la evolución histórica de los sistemas informáticos y analiza los componentes del kernel y qué hace que un sistema operativo sea considerado seguro

  1. INTRODUCCIÓN HISTÓRICA
    Se comparan las dos líneas genealógicas de las que han surgido los sistemas operativos actuales: la que comenzó con el "Project MAC" y produjo tanto los mainframes como los sistemas multiusuario, y la que comenzó con el PC y que ha producido las máquinas de escritorio o las tabletas y móviles.

    Se analizan los préstamos tecnológicos ocurridos para conseguir sistemas basados en PC multitarea: los servidores, así como los sistemas actuales basados en terminales.

  2. UNIDADES DE MEDIDA

    Debido a la ambiguedad que produce usar el término "mega" como unidad de medida debido a que en realidad es un multiplicador, se examinan las unidades de medida de CAPACIDAD DE ALMACENAMIENTO (byte) y de VELOCIDAD DE TRANSMISIÓN (bit por segundo, bps).

  3. MEMORIA Y ARQUITECTURAS

    Primero distinguiremos entre kernel y sistema operativo y analizaremos qué significa que un sistema operativo sea "de 32 bits" o "de 64 bits", así como los siguientes conceptos:

    - mapa de memoria

    - arquitectura

    - chipset


    A continuación se explica por qué los sistemas operativos de 32-bit tienen un límite de memoria de 4 Gigabytes y cómo puede superarse, introduciendo el concepto de "PAE".

  4. MEMORIA Y PROCESOS

    Usando el "administrador de tareas" de Windows analizamos el mapa de memoria para averiguar por qué un sistema con mucha memoria libre puede tener problemas de falta de memoria

    Se analiza el mapa de la memoria virtual de un proceso para
    introducirnos en conceptos que nos van a ayudar a entender cómo se producen las vulnerabilidades que se aprovechan para atacar sistemas operativos.


    Conceptos:

    - envío de señales a procesos

    - procesos padre/hijo


    Utilidades:

    - top

    - pstree

    - systrace

    - kill

    - procmon

    - perfmon

    - windbg

  5. VULNERABILIDADES

    Explicamos a fondo qué es un "buffer overflow" y los síntomas de que se ha atacado un equipo con esta técnica.


    Se hace un ejemplo práctico en Linux y OpenBSD para comprobar cómo funcionan los mecanismos de protección para evitar los "buffer overflow" y analizando el código determinamos las malas prácticas de programación en el lenguaje C que hacen que un sistema sea vulnerable.


    Se analizan las formas de proteger un sistema operativo basadas en su propio diseño y no en mecanismos posteriores de protección:


    1. limpieza de cadenas

    2. auditoría de código

    3. criptografía fuerte

    4. pro-police

    5. W^X

    6. ASLR

    7. Separación de privilegios

    8. Revocación de privilegios


Did you find this story interesting? Be the first to or comment.

Liked!
Total views
122