6.20.4.7 SE/Mejorando la programación: robustez y seguridad. (8 horas) [Nivel Bloom 3]

Referencias Bibliográficas: [Pressman, 2005,Sommerville, 2008,Larman, 2008]

Tópicos

  1. Programación a la defensiva:
    a)
    Principios de diseño y codificación seguros.
    b)
    Principio de la menor parte de privilegio.
    c)
    Principios escenarios seguros por defecto.

  2. Principio de aceptación psicológica:
    a)
    Como detectar problemas potenciales en seguridad de programas.
    b)
    Desborde de buffers de otros tipos.
    c)
    Condiciones de corrida (race conditions).
    d)
    Inicialización inapropiada incluyendo privilegios escogidos.
    e)
    Chequeo de la entrada.
    f)
    Asumir éxito y correctitud.
    g)
    Validación de presupuestos.

  3. ¿Cómo documentar consideraciones de seguridad en el uso de un programa?.

Objetivos

  1. Reescribir un programa simple para remover vulnerabilidades comunes tales como desborde de buffers, desborde de enteros y condiciones de corrida.
  2. Presentar y aplicar los principios de la menor parte de privilegio y escenarios seguros por defecto.
  3. Escribir una librería simple que desarrolle algunas tareas no triviales y no finalice la ejecución de un programa sin observar como este fue ejecutado.

Generado por Ernesto Cuadros-Vargas , Sociedad Peruana de Computación-Peru, Universidad Católica San Pablo, Arequipa-Peru
basado en el modelo de la Computing Curricula de IEEE-CS/ACM