Seguridad: El Error Humano

La seguridad en un sistema informático depende de tres factores:

  • Procesos.
  • Personas.
  • Tecnología.

Los problemas de seguridad pueden venir dados por un problema en cualquiera de estos tres factores.

Podemos encontrar fallos en los procesos. Un ejemplo de fallo en los procesos puede ser, lamentablemente, ignorar totalmente la seguridad. La seguridad es una métrica, no una característica, y por tanto en un proceso de ingeniería del software debemos cuantificar la seguridad, como parte de los requisitos no funcionales de la aplicación. Para cuantificar la seguridad, podemos acudir a una metodología conocida como Modelado de Amenazas.

Obviamente, podemos encontrar fallos en la tecnología. Podemos encontrar problemas en los protocolos a utilizar, en el sistema operativo, en el software del sistema, o, lo más común, en el software desarrollado a medida. El software no es perfecto. Para paliar este problema debemos tener las últimas actualizaciones del software que utilicemos.

Y, por último, podemos encontrar fallos en las personas. Es el más común de los problemas. Este factor ha sido, sin duda, uno de los que mayores y mejores chistes ha dado a la informática. Muestra de ello, son los siguientes:

El problema está entre su ordenador y la silla.
Problema en el usuario. Cambie de usuario y pulse continuar.

Pero sin duda, me quedo con la siguiente cita:

Hoy en día la programación es una carrera entre los ingenieros de software, afanándose por construir mejores y más grandes programas a prueba de idiotas, y el Universo, intentando producir mejores y más grandes idiotas. Hasta ahora, el Universo va ganando…

Rick Cook

Seminario de Seguridad en Aplicaciones Web

Durante la pasada semana impartí un curso de 10 horas sobre Seguridad en Aplicaciones Web.

Este es el temario que impartí:

  • Introducción a la Seguridad
  • Secure Development LifeCycle.
  • Modelado de amenazas.
  • Ataques habituales (OWASP)
    • Inyecciones
      • SQL Injection
      • Blind SQL Injection
      • XPath Injection
      • Command Injection
      • LDAP Injection
    • Cross Site Scripting
    • Cross Site Request Forgery
    • Path Traversal
    • File Upload
  • Google Hacking: GDBH
  • Herramientas para la auditoría de un sitio web
    • Firefox como herramienta de auditoría
  • Introducción a la criptografía.
    • SSL
  • Seguridad en el servidor
    • Autenticación Básica en Apache
    • SSL en IIS
    • SSL en Apache