Número 63
19 de xullo de 2023

Seguridade polo descoñecemento

O sistema de seguridade que deseñou Martiño era infalible, dicía el:
—Non hai no mundo outro sistema como este, así que cando veñan os hackers non van nin saber como se conectar.

Non durou dous días.

Diagrama dun cadeado.

O sistema de Martiño seguía unha filosofía de deseño que en inglés se chama “security through obscurity”, ou “seguridade polo descoñecemento” en galego. Nela, a seguridade do sistema depende de que ninguén saiba como funciona. O malo é que os hackers son especialistas en investigar como funciona un sistema e como rebentalo.

Isto da “security through obscurity” é unha batalla na que os especialistas en seguridade levan loitando desde hai moito tempo. No século XIX, un cerralleiro chamado Hobbs facía demostracións públicas de como abría pechaduras sen a chave, e cando os outros cerralleiros o criticaban por revelar os fallos de deseño das pechaduras, el dicía:
—Non lle estou eu a ensinar nada aos malvados que non saiban eles xa, que son moi listos. O importante é que nós saibamos que estes fallos existen.

Os que criticaban a Hobbs pensaban que, aínda que exista unha maneira de abrir unha pechadura metendo un gancho e virándoo así e tirando aquí, a pechadura é segura mentres ninguén saiba que iso é posible. Hobbs dicía que a pechadura é insegura se existe tal método, porque aínda que non lle digas a ninguén onde está o fallo, calquera podería descubrilo por si. Mellor é se o deseño da pechadura é tan bo que, incluso sabendo como funciona, ninguén a pode abrir sen a súa chave.

Moitos dos mellores sistemas de seguridade son públicos, están ben documentados e moitos expertos investiron moito tempo avaliándoos e facendo melloras neles. Algúns deses sistemas funcionan mediante segredos, pero son segredos pequenos e doados de cambiar, coma unha chave, un contrasinal ou o PIN dunha tarxeta de crédito. Non son segredos grandes e imposibles de mudar coma o deseño dunha pechadura ou dun algoritmo criptográfico.

Isto non quere dicir que os segredos grandes non teñan cabida no menú dun sistema de seguridade; o que significa é que non poden ser prato único, senón que teñen que ser ingredientes dunha dieta equilibrada.

Manter o segredo do software que usades, das súas versións e a arquitectura da rede corporativa pode axudar a mellorar a vosa seguridade porque obrigades aos posibles atacantes a traballar máis para pescudar toda esta información da que precisan, pero non podedes apostalo todo a que ninguén saiba que aínda tedes un servidor que usa Log4j 2.0 sen parchear.

Polo tanto, cando deseñedes un sistema de seguridade, non confiedes demasiado no descoñecemento — na “obscurity”. O importante é que o voso sistema poida resistir mesmo se os atacantes coñecen perfectamente como funciona, e que manteñades unha vixilancia continua para detectar os ataques e facer cambios e melloras antes de que ocorra algo.

A ilustración desta Folla procede da patente estadounidense número 371796.