Curso: (30227) Seguridad Inform´atica Fernando Tricas Garc´ıa Departamento de Inform´ atica e Ingenier´ıa de Sistemas Universidad de Zaragoza http://webdiis.unizar.es/~ftricas/ http://moodle.unizar.es/
[email protected]
Tema Principios b´asicos Fernando Tricas Garc´ıa Departamento de Inform´ atica e Ingenier´ıa de Sistemas Universidad de Zaragoza http://webdiis.unizar.es/~ftricas/ http://moodle.unizar.es/
[email protected]
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
2
Principios b´asicos
I
La seguridad de los programas es compleja
I
Utilizar ‘listas de la compra’ para saber qu´e evitar o d´onde mirar no es siempre una buena idea
I
Protegerse contra ataques desconocidos es mucho m´as complicado que defenderse de problemas conocidos
I
Buenos principios: nos defienden no s´ olo de lo conocido, tambi´en de ‘lo que puede venir’
I
Evitaremos muchos problemas (pero no todos!) siguiendo estos principios
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
3
Los principios 1. Asegurar el eslab´ on m´ as d´ebil 2. Seguridad en profundidad 3. Fallar de modo seguro 4. Seguir el principio del m´ınimo privilegio 5. Compartimentalizar 6. Simplicidad 7. Promover la privacidad (intimidad) 8. Recordar: guardar secretos es dif´ıcil 9. Ser desconfiados 10. Utilizar los recursos de tu comunidad
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
4
Asegurar el eslab´on m´as d´ebil
La seguridad es como una cadena . . . I
Los atacantes buscar´an el eslab´ on m´as d´ebil
I
Incluso aunque busquen en todos los sitios, es m´as f´acil que encuentren problemas all´ı
I
Hay mucho m´as dinero en un banco que en una tienda normal, pero ¿qui´en es m´as f´acil que sufra un robo?
I
La criptograf´ıa raramente es la parte d´ebil: un atacante intentar´a ‘romper’ nuestro sistema en otro sitio
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
5
Asegurar el eslab´on m´as d´ebil I I I
La identificaci´on del punto m´as d´ebil tiene que ver con el an´alisis de riesgos Si tenemos un buen an´alisis, mitigar el riesgo m´as grave primero es mejor que mitigar el riesgo m´as ‘sencillo’ No siempre el programa es el eslab´ on m´as d´ebil; a veces tiene que ver con lo que le rodea.
http://www.flickr.com/photos/bulle_de/349393319/ 30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
6
Asegurar el eslab´on m´as d´ebil
I
I
De nada sirve un programa muy seguro si el acceso f´ısico al servidor es f´acil ‘Ingenier´ıa social’: tel´efono, paciencia, confianza . . . I
Limitar las capacidades del personal t´ecnico tanto como sea posible Ejemplo: cambiar la clave
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
7
Defensa en profundidad
I I
Estrategias defensivas diversas, en niveles Si algo falla, hay m´as barreras detr´as I
I
... pensar en un banco
Cuidado, no confundir con lo de la cadena ... se trata de protecci´on redundante
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
8
Fallar de forma segura I
Cualquier sistema suficientemente complejo fallar´a
I
Hay que procurar que eso no suponga problemas de seguridad Tarjetas de cr´edito ...
I
1. Llamada a la empresa 2. Comprobaci´ on denuncia de robo 3. An´alisis de la compra ....
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
9
Fallar de forma segura I
Cualquier sistema suficientemente complejo fallar´a
I
Hay que procurar que eso no suponga problemas de seguridad Tarjetas de cr´edito ...
I
1. Llamada a la empresa 2. Comprobaci´ on denuncia de robo 3. An´alisis de la compra .... Y las bacaladeras? Seguridad vs Conveniencia!
http://www.youtube.com/watch?v=a7wutgAlNHk ‘¿Por qu´e las tarjetas de cr´edito tienen letras en relieve?’ http://tardecilla.blogspot.com.es/2012/06/por-que-las-tarjetas-de-credito-tienen.html 30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
9
Fallar de forma segura
I
Si se rompe un sistema de control I I I
... de una caja fuerte, ¿c´ omo deber´ıa quedar? ¿y de un cine? ¿y en un sitio web controlado por claves?
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
10
Fallar de forma segura Mejor a´ un: degradaci´on controlada I Cuando un coche choca, hay partes que se deforman.
http://www.flickr.com/photos/bargas/3695903512/ 30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
11
Fallar de forma segura. ¿Y las configuraciones?
I
Por defecto, el sistema lo mas seguro posible
I
Recordad que los ejemplos terminan us´andose
I
Avisar de las consecuencias de los cambios
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
12
Principio del m´ınimo privilegio
I I
Dar el acceso m´ınimo necesario para la tarea encargada M´ınimo tiempo posible I
I
I
Si alguien nos recoje el correo durante las vacaciones ... ¿le damos tambi´en las llaves del piso? Cuando compramos un piso, ¿conservamos la cerradura?
Ventanas de vulnerabilidad (windows of vulnerabity) tan peque˜ nas como sea posible
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
13
Principio del m´ınimo privilegio
I
Si necesitamos permiso para leer un objeto, no darlo tambi´en para escribir
I
Una vez que hayamos leido, quitarse los privilegios, si no hacen falta m´as
I
La pereza es nuestro enemigo
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
14
Compartimentalizaci´on
I
Si adem´as del correo, me piden que le d´e de comer al perro ¿tengo un corral d´ onde pueda estar el animal?
I
Se trata de minimizar el da˜ no que pueden hacernos (submarinos, petroleros, prisiones, ...)
I
El sistema de permisos de Unix es un buen ejemplo de como no hacer las cosas
I
En la mayor´ıa de las plataformas no est´a previsto defender una parte del sistema del resto
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
15
Simplicidad
I
I
Kiss It Simple Stupid!: La complejidad incrementa la posibilidad de que aparezcan problemas El dise˜ no y la implementaci´ on deber´ıa ser tan sencillo como se pueda I I I
Dise˜ nos complejos son m´as dif´ıciles de entender M´as dif´ıcil de mantener M´as fallos
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
16
Simplicidad
I
Reutilizar cuando sea posible
I
Sobre todo para la criptograf´ıa
I
¿Contradicci´on con la defensa en profundidad? ... compromiso!!!!
I
No es trivial
I
Idea: Concentrar las operaciones cr´ıticas de seguridad en pocos puntos.
I
Sin atajos!!
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
17
Simplicidad
I
Ergonom´ıa (usability)
I
Todos los usuarios deber´ıan tener acceso a la mejor seguridad de nuestro sistema, y no poder introducir puntos inseguros por descuido. Algunas ideas (Norman 1989, Nielsen 1993): 1. 2. 3. 4.
Los usuarios no leen Hablar con los usuarios Los usuarios no tienen raz´ on siempre Los usuarios son perezosos
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
18
Simplicidad Making the simple complicated is commonplace; making the complicated simple, awesomely simple, that’s creativity. Charles Mingus
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
19
Simplicidad Making the simple complicated is commonplace; making the complicated simple, awesomely simple, that’s creativity. Charles Mingus
Make everything as simple as possible, but not simpler. Albert Einstein (Fotograf´ıas: Wikipedia)
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
19
Promover la privacidad
I
Muchos usuarios consideran su intimidad un asunto de seguridad
I
Tenemos que tratar de no comprometer los datos de nuestros usuarios La mayor´ıa de sitios ‘serios’ no guarda nuestra clave, ni el n´ umero de la tarjeta, ...
I
I I I
Al menos, no mostrarla (nunca entera) Almacenarla cifrada Almacenarla en otra m´aquina diferente
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
20
Promover la privacidad
No s´olo los usuarios (¿y el servidor?) telnet pardillo.donde.estas Trying 1.2.3.4... Connected to pardillo.donde.estas Escape character is ’^ ]’. SunOS 5.7 I
¿Hace falta el servicio?
I
Si hace falta, ¿es necesario decir el sistema?
I
Cuidado!
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
21
Esconder secretos es dif´ıcil
I
No divulgar datos de los usuarios
I
No divulgar claves
I
Los ‘malos’ son muy h´abiles (DVD, chips consolas, ‘jailbreaks’, ...) Ataques desde dentro
I
I I I
Descontentos Inadvertidos En todo caso ... la mayor´ıa
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
22
Cuidado con la confianza
I
No poner secretos en el c´ odigo del cliente
I
Dise˜ nar los servidores para no confiar en los clientes
I
Ser desconfiado puede ayudar en la compartimentalizaci´on
Muchos desarrolladores, arquitectos y gestores de proyectos no saben mucho sobre dise˜ no seguro (incluso los que hacen herramientas de seguridad).
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
23
Cuidado con la confianza I I I
No extender la confianza al servicio de atenci´on al cliente (ingenier´ıa social) Seguir a la manada: a veces se hacen algunas cosas por influencia de los competidores El escepticismo es sano (cuidado con el aceite de serpiente) http://www.interhack.net/people/cmcurtin/snake-oil-faq.html
http://en.wikipedia.org/wiki/File:Snake-oil.png
I I
Es sano desconfiar hasta de uno mismo Confianza transitiva (amigos de amigos...)
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
24
La confianza
I
‘Fronteras’ de la confianza ¿En qui´en o en qu´e confiamos? ¿Qu´e hacemos cuando pasan datos de una parte menos confiable a una confiable?
I
La cadena de confianza Conf´ıo en ... Que conf´ıa en ... Que conf´ıa en ...
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
25
Otros principios
I
Exactidud, precisi´ on (‘accuracy’) ¿Corresponde el dise˜ no (y el software luego) a la ‘realidad’ ?
I
Claridad
I
Acoplamiento d´ebil Menos complejidad, menos dependencias, ...
I
Cohesi´on fuerte Los m´odulos gestionan tareas relacionadas entre si: hay una buena descomposici´ on y modularizaci´ on.
I
Adecuada gesti´on de fallos
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
26
La comunidad
I
No seguir ciegamente a la masa pero ... I I
El uso continuado de una tecnolog´ıa ayuda El escrutinio p´ ublico tambi´en
Ejemplo: la criptograf´ıa, bibliotecas seguras, ...
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
27
“Estos son mis principios. Si no le gustan tengo otros.”
(Fotograf´ıa: Wikipedia)
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
28
Los principios de Microsoft
SD 3 + C I
Seguro por dise˜ no
I
Seguro por defecto
I
Seguro en la implantaci´ on (‘Deployment’)
I
Comunicaci´on (con los clientes) http://msdn.microsoft.com/en-us/magazine/cc163705.aspx
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
29
Atenci´on a ...
I
Flujo de los datos de entrada I
Interfaces Los programas se comunican con otros y con el exterior.
I
Relaciones de confianza (transitividad, ...)
I
Suposiciones y Confianza inadecuadamente depositada
I
Ataques relacionados con el entorno
I
Ataques relacionados con la gesti´ on de fallos
I
Condiciones excepcionales
I
Configuraciones por defecto que son defectuosas
I
Servicios innecesarios
30227 Seguridad Inform´ atica. Fernando Tricas Garc´ıa.
30