Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Seguridad en redes: ¿Qué es? ¿Cómo lograrla?
Gunnar Wolf —
[email protected]
http://www.gwolf.org/seguridad/seg_en_redes
Instituto de Investigaciones Económicas, UNAM
Miembro externo del Departamento de Seguridad en Cómputo DGSCA-UNAM
Desarrollador del proyecto Debian
FLISOL Monterrey, Universidad Regiomontana
28 de febrero, 2008
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Contenidos
1 Definiendo seguridad
2 Aspectos de la seguridad en redes
3
Implementando seguridad / Ecología cibernética
4 La seguridad y el Software Libre
5 Fin
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
¿Qué es la seguridad?
A ver, ¿quién se atreve a
responder?
Que el sistema se comporte como esperamos
ummm...
Que el sistema se comporte como nosotros (sus legítimos
programadores, administradores y usuarios del sistema)
esperamos
Suena un poco vago, ¿no? Bueno, vamos un poco más a detalle...
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
¿Qué es la seguridad?
A ver, ¿quién se atreve a
responder?
Que el sistema se comporte como esperamos
ummm...
Que el sistema se comporte como nosotros (sus legítimos
programadores, administradores y usuarios del sistema)
esperamos
Suena un poco vago, ¿no? Bueno, vamos un poco más a detalle...
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
¿Qué es la seguridad?
A ver, ¿quién se atreve a
responder?
Que el sistema se comporte como esperamos
ummm...
Que el sistema se comporte como nosotros (sus legítimos
programadores, administradores y usuarios del sistema)
esperamos
Suena un poco vago, ¿no? Bueno, vamos un poco más a detalle...
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Pero antes... La palabra mágica
Antes de continuar, tenemos que comprender una palabra muy
importante.
Una palabra mágica.
Adecuado
Todo lo que mencione a partir de este punto tiene que ir matizado
con esta palabra.
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Pero antes... La palabra mágica
Antes de continuar, tenemos que comprender una palabra muy
importante.
Una palabra mágica.
Adecuado
Todo lo que mencione a partir de este punto tiene que ir matizado
con esta palabra.
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Características de un sistema seguro
¿Qué características tiene un sistema seguro?
Dicho sea de otro modo...
¿Cómo puedo atreverme a afirmar que un sistema es
suficientemente seguro para mis necesidades?
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Consistencia
Ante las mismas circunstancias, el sistema debe presentar el
mismo comportamiento
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Protección y separación
Los datos, instrucciones y espacio de memoria de un programa
no deben interferir ni ser interferidos por otros
Los datos y las acciones de un usuario no deben ser visibles o
modificables por otros, y no deben tener efecto para otros.
Las condiciones anormales de un proceso —sean accidentales
o expresas— deben tener un impacto mínimo en el sistema
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Autenticación
El sistema debe poseer los mecanismos necesarios para
asegurarse que un usuario es realmente quien dice ser
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Control de acceso / Autorización
El administrador del sistema, así como cada usuario, deben
poder controlar granularmente los permisos de acceso a su
información — Quién tiene acceso a qué recursos, y qué tipo
de acceso tiene.
El sistema debe asegurarse de que los usuarios no se brinquen
estas restricciones
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Auditoría
El sistema debe ser capaz de registrar, así como de notificar al
administrador (y opcionalmente a los usuarios), de cualquier
anomalía o evento importante
¿Qué significa importante? ¿Cómo puede saberlo mi computadora?
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Auditoría
El sistema debe ser capaz de registrar, así como de notificar al
administrador (y opcionalmente a los usuarios), de cualquier
anomalía o evento importante
¿Qué significa importante? ¿Cómo puede saberlo mi computadora?
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
El utópico 100 %
Es imposible alcanzar un 100 % de seguridad.
Los programas son escritos por humanos, y por tanto son
susceptibles a tener todo tipo de errores
La complejidad de los programas -aún los más simples- no
permite al programador mantener en mente todos los factores
Hay una gran cantidad de interacciones entre los elementos de
un programa y el sistema, y un cambio en cualquiera de ellos
puede tener consecuencias inesperadas si no se hace con
cuidado y conciencia
Constantemente aparecen nuevas categorías de errores
capaces de llevar a problemas de seguridad
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Contenidos
1 Definiendo seguridad
2 Aspectos de la seguridad en redes
3
Implementando seguridad / Ecología cibernética
4 La seguridad y el Software Libre
5 Fin
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Capa física
Insuficiente control de acceso al edificio
Cableado mal instalado
Cableado no entubado
Puntos de red en lugares impensables
Inalámbrica no cifrada (o demasiado débil)
Facilidad de conexión sin trámites
Mal manejo de la basura
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Sistemas operativos
Sistemas poco tolerantes a situaciones frontera o a datos mal
formados
Revisión no exhaustiva de posibles respuestas
Falta de una auditoria real y constante
APIs/ABIs cambiantes
Excesivo bagaje de compatibilidad hacia abajo
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Aplicaciones
Confianza ciega en los datos recibidos
Longitud de los datos (por buffers y por truncado silencioso)
Tipo de los datos
Confianza en los datos originados externamente
Uso de bibliotecas inestables
Uso de frameworks no comprendidos suficientemente por el
desarrollador
Uso de protocolos de red obsoletos
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Usuarios
El coco de los administradores...
Políticas de uso aceptable inexistentes, incompletas, no
aplicables o carentes de autoridad
Falta de conciencia
Capa 8 defectuosa
Errores de BIOS
La famosa lucha entre los programadores y el universo
Analogías: Las contraseñas y la ropa interior
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Contenidos
1 Definiendo seguridad
2 Aspectos de la seguridad en redes
3
Implementando seguridad / Ecología cibernética
4 La seguridad y el Software Libre
5 Fin
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
¿¡Ecología cibernética!?
¿Qué es la ecología?
La importancia de ser conscientes de
nuestro entorno
...Y de actuar en consecuencia
Apliquemos eso a nuestro entorno cibernético
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Ser programadores seguros
KISS: Keep It Simple, Stupid!
DRY: Don’t Repeat Yourself
YAGNI: You Ain’t Gonna Need It
Pensar en los posibles futuros programadores/mantenedores
de nuestro software
Revisar siempre todo — Valores de retorno, resultado de la
creación de objetos, tipos de datos, contenido válido, manejo
de excepciones...
Desconfiar especialmente de los datos provenientes del
usuario
Es más importante escribir un programa correctamente que
clavarnos en detalles. La optimización prematura es la fuente
de todos los males.
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Ser programadores seguros
Llevar a cabo un buen análisis previo a comenzar a escribir
código
Utilizar estructuras de datos comprensibles y acordes a
nuestro problema
Documentar conforme programamos
Escribir pruebas conforme documentamos, basándonos en la
documentación y no en nuestro otro código. De ser posible,
que las pruebas las escriban equipos diferentes que quienes
escribieron el código.
Ofrecer a quien use nuestro código APIs consistentes, estables
y bien documentadas
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Ser administradores seguros
Filosofía ”Less is more”: La belleza del minimalismo
No hay nada como una sana paranoia
Buscando la comodidad y la facilidad en el lugar correcto:
Usar un OS bien diseñado y simple de administrar, aunque
tenga que aprender a utilizarlo
Caracterizar las verdaderas necesidades de los usuarios, saber
decirles que no, ayudarles a ajustar lo que buscan.
Mi usuario no es malicioso por naturaleza — aunque tal vez
sí profundamente ignorante
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Ser usuarios seguros
No confiar en que nadie atacará nuestro sistema únicamente
por ser casero.
Recuerden a los virus, troyanos, gusanos y demás... Y a las
hordas de script kiddies
Spambots y similares: No importan los recursos de cada
sistema atacado; importa la cantidad total de sistemas
sencillitos
No restar importancia a las actualizaciones. (¿Sí tienes tus
licencias en órden? Más te vale...)
No restar importancia a la solidez general del sistema
Enviar bug reports
...¿Realmente necesitamos un entorno de usuario tan rico?
¿Qué requerimos en realidad?
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
Contenidos
1 Definiendo seguridad
2 Aspectos de la seguridad en redes
3
Implementando seguridad / Ecología cibernética
4 La seguridad y el Software Libre
5 Fin
Definiendo...
Aspectos
Ecología cibernética
Software Libre
Fin
¿Qué es el Software Libre?
Es todo programa cuya licencia nos permite expresamente:
Uso irrestricto,
Comentarios de: Seguridad en redes: ¿Qué es? ¿Cómo lograrla? (0)
No hay comentarios