Desafortunadamente
los passwords son en la práctica bastante menos seguros
que lo que los argumentos de "longitud^(tamaño alfabeto)"
sugieren, en la vida real las claves están muy lejos de
ser aleatorias.
Al final del
artículo se incluyen cinco referencias importantes sobre
seguridad en Unix. De ellas [1,2,5] describen características
estadísticas de passwords de sistemas Unix reales, incluyendo
estudios de crack de passwords a largo plazo (más de 1
año de CPU) mientras que [3,4] son historias sobre gente
'poco amigable' que pulula por Internet.
La referencia
[1] se basa en un conjunto de aproximadamente 1500 líneas
de ficheros /etc/passwd (el fichero de claves de usuarios de Unix).
Al parecer y en resumen después de casi 12 meses de usar
exhaustivamente la CPU, aproximadamente el 25% de las claves pudieron
ser adivinadas. Si esto te hace sentir seguro antes de tiempo
piensa que un 21% (casi 3000 claves) se adivinaron la primera
semana y en los cinco primeros minutos cayeron 368 claves (el
2.7%) usando lo que la experiencia ha demostrado que son las claves
más comunes (usar el nombre de usuario como clave). Estas
estadísticas son como para asustar. En un sistema Unix
promedio con unas 50 cuentas, uno esperaría crackear la
primera cuenta en menos de 2 minutos y tener unas 5-15 cuentas
al final del primer día.
La referencia
[5] se basó en instalar versiones especiales de passwd
e yppaswd en máquinas bastante diferentes durante un periodo
de 6 meses que registraban los nuevos passwords introducidos en
el sistema (encriptados con RSA por razones de seguridad)
De los 13787
passwords examinados la longitud media fue 6.80 caracteres. La
siguiente tabla recoge los datos.
Longitud |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
Cantidad |
55 |
87 |
212 |
449 |
1260 |
3035 |
2917 |
5772 |
Y en la siguiente
se recogen la composición de las claves:
Caracteres |
Número |
Porcentaje |
Sólo minúsculas |
3988 |
28.9% |
Mezcla mayúsculas y minúsculas |
5259 |
38.1% |
Algunas mayúsculas |
5641 |
40.1% |
Dígitos |
4372 |
31.7% |
Meta-caracteres |
24 |
0.2% |
Caracteres de control |
188 |
1.4% |
Espacio y/o tabuladores |
566 |
4.1% |
.:,; |
837 |
6.1% |
-_=+ |
222 |
1.6% |
!#$%^&*() |
654 |
4.7% |
Otros no alfanuméricos |
229 |
1.7% |
La conclusión
que sacan los autores es que en todos los sistemas Unix excepto
los de ultra-alta seguridad aprox. el 10% de las cuentas tienen
claves triviales -crackeables en menos de 10 intentos usando sólo
la información de /etc/passwd- y otro 20% de las cuentas
podrían ser crackeadas en sólo unos minutos de tiempo
de CPU.
Por supuesto
esta situación varía bastante con el uso de shadow-passwords
donde sólo root puede (teóricamente) acceder al
verdadero /etc/passwd y cuando alguien puede acceder a él,
seguramente está más interesado en otras cosas :-)
pero lo que es importante de estos trabajos es que debemos ser
conscientes de que un porcentaje apreciable de las personas no
escogen claves sólidas, sea en una cuenta Unix, en PGP
o ...
Fuentes: