Cos'è
la
password
Come
è
risaputo
per
impedire
l'accesso
ad
un
computer,
a
dei
documenti,
a
delle
webpage,
ecc...
vengono
utilizzati
normalmente
delle
password.
Il
livello
di
protezione
di
queste
password
dipende
dal
tipo
e
dalla
lunghezza
del
codice
inserito
e
dall'algoritmo
di
criptazione
generato.
Ma
cos'è
realmente
una
password?
In
maniera
sintetica
una
password
non
è
altro
che
un
file
in
cui
vengono
registrate
informazioni
su
gli
utenti
di
un
server. Vediamo
un
esempio
di
password:
root:x:0:1:0000-Controll(0000):/:/bin/ksh
daemon:x:1:1:0000-Controll(0000):/:
bin:x:2:2:0000-Controll(0000):/usr/bin:
listen:x:38:3:Network
Controll:/usr/net/nls:nobody:x:60001:60001:uid
nobody:/:noaccess:x:60002:60002:uid
noaccess:/:
ftp:x:101:3:
FTPUser:/export/home/ftp:
rbn:aXDf04UjZhPOQ:202:3:RobertNews:/export/home/rbn
Tutto
quello,
che
potremo
prendere
da
questo
file,
e'
l'utente:
rbn:aXDf04UjZhPOQ
:202:3:RobertNews:/export/home/rbn
Ecco
come
interpretare,
questa
linea:
Nome
Utente:
rbn
Password
(Criptata):
aXDf04UjZhPOQ
Numero
Utente:
202
Numero
Gruppo:
3
Nome
Reale
(Generalmente):
Robert
News
Home
Directory:
/export/home/rbn
Tipo
di
Shell
Usata:
/bin/ksh
Password
cracker
Per
password
cracker
si
intendono
tutte
quelle
operazioni
che
consento,
in
condizioni
lecite
e
non,
di
reperire
una
password
da
una
qualsiasi
tipo
di
fonte
di
informazione
ad
esempio
un
file
criptato.
Questo
tipo
di
attacco
può
essere
effettuato
in
modalità
remota
oppure
locale
e
i
metodi
di
decodifica
possono
essere:
- Brutal
force attack -
Questa
algoritmo
di
decodifica
richiede
un
notevole
tempo
di
elaborazione
e
mira
ad
accedere
al
sistema
tramite
tentativi
di
login
a
ripetizione
finchè
non
si
trova
un
utente
e
una
password
validi.
Il
processo
di brutal
force
attack richiede
parecchio
tempo
infatti
il
processo
di
decodifica
parte
con
un
singolo
carattere
e
prosegue
ordinatamente
aumentandone
il
numero
e
le
combinazioni.
Ad
esempio:
una
password
di
8
caratteri
da
un
set
di
caratteri
Ascii
di
128
caratteri,
un
pc
Pentiun
4/2.5
Ghz
che
permette
di
trattare
in 1
secondo
25
milioni
di
combinazioni
impiegherebbe,
per
decriptare
la
combinazioni
di
caratteri,
ben
91
anni "le
possibili
combinazioni
che
dovrebbe
verificare
sarebbero
72.057.594.037.927.900".
- Dictionary
attack -
Quest'altro
tipo
di
algoritmo
di
decodifica
si
basa
su
una
semplice
consultazione
di
un
dizionario
di
termini
e
nomi
"in
genere
si
tratta
di
file
di
testo".
Il
sistema
di
decodifica
è
semplice
i
programmi,
realizzati
a
tale
scopo,
non
fanno
altro
che
leggere
nell'ordine
tutte
le
parole
in
elenco
fino
a
ritrovare
quella
giusta.
Ecco
un
indirizzo
in
cui
è
possibile
trovare
tutte
le
wordlist
del
mondo
mantenute
da
utenti
privati
: http://wordlist.sourceforge.net/
- Sovrascrittura
della
password -
Questa
è
una
delle
tecniche
più
semplici
ma
non
ha
un'alta
percentuale
di
riuscita.
Ovviamente
con
questa
tecnica
non
viene
trovata
la
password
ma
si
cerca
di
leggere
il
contenuto
del
file
e
così
poterla
sovrascrivere.
- Known-plaintext
attack
- E'
un
tipo
di
attacco
basato
sull’utilizzo
di
una
versione
non
codificata
e
non
compressa
di
uno
dei
file
contenuti
nell’archivio
protetto
da
password.
Questo
file
viene
usato
per
"decodificare"
tutti
gli
altri.
Un
attacco
di
questo
tipo
può
essere
utilizzato,
in
questa
circostanza,
non
solo
per
decodificare
gli
altri
due
file
ma
anche
per
risalire
alla
password.
Un
attacco
known-plaintext
è
molto
complicato
ma,
solitamente,
è
quello
che
dà
i
risultati
migliori.
La
password
sicura
Dal
momento
che
il
significato
di
Password
indica
una
parola
segreta
che
permette
un
accesso
autorizzato
una
Weak
Password
"Password
debole
(semplice)"
facilmente
identificabile
perderebbe
tale
funzione.
Certamente
è
utopistisco
pensare
che
si
possa
creare
una
Strong
Password
"Password
forte
(sicura)"
ma
esistono
accorgimenti
che
possono
rendere
più
difficile
la
loro
decifrazione.
Le
componenti
essenziali
sono:
a)
Lunghezza
caratteri
della
password -
(una
password
di
10
caratteri
del
set
Ascii
completo
ha
la
percentuale
di
decodifica
e
di
una
combinazione
fra
25.610)
b)
No
deve
essere
associata
a
dati
dell'utente
come
ad
esempio:
nome
,
indirizzi,
nr.
di
telefono,
date
di
nascita,
ecc..
c)
Adottare
un
mix
di
caratteri
che
siano
caratteri
alfabetici
alternati
con
caratteri
maiuscoli
e
minuscoli,
simboli
e
numeri -
ad
esempio:
"DG!2trojA3".
Purtroppo,
però,
da
alcune
ricerche
effettuate,
risulta
che
le
persone,
quando
creano
o
scelgono
una
password,
tendono
per
loro
natura
ad
utilizzare
parti
di
propri
nomi,
o
del
proprio
cane/gatto/uccellino
o
addirittura
giungono
a
utilizzare
la
medesima
parola
"password".
Se
cosi
stanno
le
cose,
è
facile
immaginare
come
il
livello
di
sicurezza
sia
sostanzialmente
basso.
Rispettando
invece
i
tre
punti
suddetti
avremmo
uno
spazio
di
ricerca
pari
a
256^10
combinazioni
(256
sono
i
possibili
simboli
del
codice
ASCII
e
10
la
lunghezza
impostata
della
password)
e
quindi
richiederebbe
parecchi
anni
di
calcoli
anche
con
un
programma
di
brute
force
attack
che
permette
di verificare
più
di
15.000
password
al
secondo.
Fallirebbe
anche
la
possibilità
di
decodifica
con
il
metodo
dictionary
attack
dal
momento
che
è
una
password
senza
un
significato.
Conclusioni
Ricordatevi
sempre
praticare
queste
tecniche
di
password
cracking
solo
causa
di
danni
a
chi
lo
subisce
e
sono
penalmente
punibili.
Quindi
sia
per
il
vostro
bene
sia
per
quello
del
vostro
prossimo NON
FATELO
MAI oppure
se
proprio
vi
incuriosisce
usateli
SOLO
sul
proprio
computer
e
SOLO
in
situazione
d'emergenza!