2016-19

Semestre 2016-19

Nombre del curso: Programación segura
Course Name: Secure Programming
Créditos: 4
Profesor: Martín Ochoa Singapore University of Technology and Design

Descripción

En los ultimos años, multiples vulnerabilidades e incidentes espectaculares relativos a la seguridad de software han despertado un interés creciente en esta materia. Estos incidentes han demostrado que nuestra sociedad depende cada vez más de software confiable y seguro. Por lo tanto, es importante entender los fundamentos, las soluciones existentes y los retos de esta disciplina. En este curso introduciremos propiedades fundamentales de seguridad y varias definiciones rigurosas de la literatura cientifica. Introduciremos también vulnerabilidades comunes en el diseño y la implementación de sistemas, y discutiremos la relación con las propiedades formales anteriormente introducidas. Adicionalmente, presentaremos diferentes estrategias de verificación y pruebas para detectar vulnerabilidades, y discutiremos sus ventajas y limitaciones. Para entender a fondo los conceptos introducidos se desarrollarán ejercicios prácticos durante las horas de laboratorio y a través de un proyecto a realizarse en grupos. El curso cubrirá: -Motivación, propiedades fundamentales en la seguridad del software -Flujo de información, control de acceso, seguridad en sistemas distribuidos -Conceptos fundamentales de criptografía: funciones de hash, criptografía simetrica y asimetrica. -Principios para desarrollo seguro de software. -Vulnerabilidades comunes en aplicaciones Web -Vulnerabilidades comunes en apliaciones nativas -Pruebas de caja negra y de caja blanca para detectar vulnerabilidades -Ingeniería inversa y obfuscación -Privacidad -Seguridad en infraestructuras criticas

Abstract Curriculum Vitae

Martín Ochoa es Profesor Asistente en SUTD, Singapur. Su investigación se centra en varios aspectos de ingeniería del software y seguridad informatica, incluyendo metodos formales y aplicaciones de criptografía para privacidad y seguridad. Martín es PhD en ciencias de la computación (TU Dortmund), M.Sc. y B.Sc en matemáticas (LMU Munich, La Sapienza) e Ingenierio de Sistemas (Univ. Latina, CR). Previo a su vinculación en SUTD, Martín se desempeñó como investigador post-doctoral en la Technische Universität München y como investigador y consultor en seguridad para Siemens en Múnich.