Changes between Version 1 and Version 2 of IEEE802.11/AutenticazioneEPrivacy


Ignore:
Timestamp:
Mar 24, 2007, 8:40:17 PM (18 years ago)
Author:
soujak
Comment:

Revisione del testo.

Legend:

Unmodified
Added
Removed
Modified
  • IEEE802.11/AutenticazioneEPrivacy

    v1 v2  
    11[[PageOutline(1-6)]]
     2
    23= IEEE 802.11 - Autenticazione e privacy =
    34
    4 ,,20061114-1114 Roma,,[[BR]]
    5 802.11 fornisce un servizio di autenticazione diviso in due sottotipi:
    6  
    7  * Open System
    8  * Shared Key
     5== Servizio di autenticazione ==
    96
    10 I due sottotipi svolgono un algoritmo di autenticazione e sono indicati nel
    11 corpo del frame che gestisce l'autenticazione;questi tipi di frames devono
    12 essere scambiati solo tra due nodi( una stazione e un AP in un BSS,tra due
    13 stazioni in un IBSS ) e non possono essere in broadcast.
     7Il concetto di autenticazione permette di stabilire un rapporto fidato grazie al
     8mutuo riconoscimento fra due stazioni (e.g. fra due STA all'interno di un BSS
     9indipendente o fra una STA e un AP in un BSS ad infrastruttura).
    1410
    15 == Autenticazione ''Open System'' ==
     11Lo standard 802.11, nella versione del 1999, definisce due differenti sottotipi
     12di autenticazione disponibili alle stazioni:
     13 * a '''sistema aperto''' (''open system'');
     14 * a '''chiave condivisa''' (''shared key'').
    1615
    17 L'autenticazione Open System e' basata sull'algoritmo di autenticazione piu'
    18 semplice tra quelli disponibili (detto anche algoritmo ''null''). Ogni stazione
    19 che utilizza questo algoritmo puo' essere autenticata se l'authenticationType
    20 della stazione che gestisce le autenticazioni e' settato su ''Open System''.
     16La stazione, in relazione alle disponibilita' della sua stessa implementazione e
     17della rete di riferimento, adotta uno dei due sottotipi specificandolo
     18nell'attributo interno `authenticationType`. Dal momento che il sottotipo di
     19autenticazione necessita di essere comune alle due parti, esso deve essere
     20palesato nel corpo del ''frame'' di gestione dedicato a questo servizio.
    2121
    22 L'autenticazione ''Open System'' (o meglio l'algoritmo utilizzato da questo
    23 sottotipo) e' divisa in due sottosequenze; la prima determina l'identificazione
    24 della stazione e la richiesta di autenticazione, la seconda determina il
    25 risultato dell'autenticazione (se e' corretto le due stazioni sono
    26 mutuamente autenticate).
     22=== Autenticazione a sistema aperto ===
    2723
    28 == Autenticazione ''Shared Key'' ==
     24L'autenticazione a sistema aperto (''open system'') e' basata sull'algoritmo di
     25autenticazione piu' semplice tra quelli disponibili: l'algoritmo nullo.
     26L'algoritmo consta di un semplice scambio di ''frame'' fra le due parti:
     27prima il richiedente trasmette la domanda d'autenticazione specificando il
     28proprio identificativo, l'altra stazione, poi, rispondera' aggiungendo al
     29''frame'' ricevuto l'esito della richiesta. Se il processo va a buon fine le
     30due STA saranno reciprocamente autenticate.
    2931
    30 L'autenticazione Shared Key supporta l'autenticazione di stazioni se almeno una
    31 delle due stazioni conosce la chiave condivisa segreta, la quale e' parte
    32 fondamentale dell'algoritmo. L'algoritmo e' completato senza il bisogno di
    33 trasmettere la chiave segreta in chiaro ma servendosi del meccanismo WEP.
    34 Infatti questo meccanismo di autenticazione funziona solamente se il meccanismo
    35 WEP e' implementato e se l'algoritmo ''Shared Key'' e' implementato nelle
    36 stazioni che gia' implementano WEP.
     32=== Autenticazione a chiave condivisa ===
    3733
    38 La chiave segreta viene consegnata da una stazione all'altra mediante un canale
    39 sicuro che e' indipendente da 802.11;la chiave e' contenuta in un attributo
    40 write-only denominato MIB che viene spedito dal livello MAC.
    41 [[BR]],,SoujaK: ''a quanto ne so, MIB denota l'insieme di attributi di un
    42 sottolivello e non il nome di questo specifico attributo'',,[[BR]]
     34L'autenticazione a chiave condivisa (''shared key'') utilizza come prova del
     35riconoscimento fra STA la conoscenza di una chiave segreta la cui distribuzione
     36avviene tramite canali sicuri. La scelta della chiave e dei canali attraverso i
     37quali distribuirla non rientra fra gli scopi dello standard 802.11. La
     38segretezza della chiave deve essere protetta e non viene quindi scambiata mai in
     39chiaro durante il processo di autenticazione; inoltre viene custodita nel
     40livello MAC in un attributo della MIB, accessibile dall'esterno in sola
     41scrittura.
    4342
    44 Dato che l'attributo e' ''write-only'' il valore della chiave rimane all'interno
    45 di MAC. Durante il processo di autenticazione tra due stazioni vengono inviati
    46 un ''challenge'' e un ''encrypted challenge'' e questo processo e' diviso in
    47 quattro fasi (un ''frame'' inviato per ogni fase):
     43Questo sottotipo di autenticazione sfrutta la crittografia offerta da WEP per
     44far si' che due STA possano dimostrare vicendevolmente la conoscenza della
     45chiave; lo standard impone quindi l'implementazione di WEP alle stazioni che
     46intendano fare uso di questo meccanismo. Il processo di autenticazione avviene
     47tramite gli scambi di ''frame'' descritti di seguito:
    4848
    49  * viene settato il primo frame con tutti i parametri neccesari.
    50  * prima di spedire il secondo ''frame'' la stazione rispondente utilizza WEP
    51    per generare una stringa di ottetti che sono utilizzati come ''challenge''.
    52    [[BR]],,SoujaK: ''il concetto di ''challenge'' non e' spiegato'',, [[BR]]
    53  * il richiedente riceve il challenge dal secondo frame e lo copia nel terzo
    54    frame; a questo punto WEP (mediante la chiave segrete) cripta il terzo frame.
    55  * il rispondente riceve il terzo frame e lo decripta sempre mediante WEP; una
    56    volta decriptato il ''challenge'' lo confronta col proprio ''challenge''
    57    (spedito nel secondo frame). Se sono uguali allora il rispondente mandata un
    58    ''frame'' di conferma e l'autenticazione e' avvenuta, altrimenti viene
    59    inviato un   ''frame'' di insuccesso.
     49Durante il processo di autenticazione tra due stazioni vengono inviati un
     50challenge e un encrypted challenge e questo processo e' diviso in quattro fasi
     51(un frame inviato per ogni fase):
     52 1. il richiedente invia la domanda di autenticazione con i relativi dettagli;
     53 2. il rispondente risponde con una "sfida" (o ''challenge''), una stringa di
     54    cui richiede la cifratura tramite la chiave segreta;
     55 3. il richiedente provvede a rispondere alla sfida cifrando tramite WEP;
     56 4. il rispondente verifica la correttezza della risposta e ne notifica l'esito.
     57La corretta conclusione dello scambio appena descritto rende le due stazioni
     58mutuamente autenticate.
    6059
    61 == Algoritmo ''Wired Equivalent Privacy'' (WEP) ==
     60== Algoritmo Wired Equivalent Privacy (WEP) ==
    6261
    63 ,,20061015-1550 Roma,,[[BR]]
    64 WEP e' un particolare algoritmo utilizzato nelle reti wireless per proteggere
    65 gli utenti autorizzati da ''sniffing'' e da altri tipi di intrusioni. Il
    66 servizio fornito da WEP si prefigge l'obiettivo di provvedere alla sicurezza dei
    67 dati nella stessa maniera di come vengono protetti nei dispositivi interconnessi
    68 via cavo.
     62WEP e' un particolare meccanismo utilizzato nelle reti wireless per proteggere
     63gli utenti autorizzati da azioni di ''sniffing'' e intrusione da parte di
     64malintenzionati. Il servizio fornito da WEP si prefigge l'obiettivo di fornire
     65un livello di sicurezza pari alla protezione intrinseca offerta da reti cablate.
     66L'affidabilita' di WEP dipende, in larga misura, dalla sicurezza delle chiavi
     67utilizzate per la cifratura/decifratura dei dati e della loro gestione da parte
     68di entita' esterne.
    6969
    70 La sicurezza dei dati e' data da un gestore esterno che distribuisce i dati
    71 criptati e le chiavi per decriptarli.
    72 Le proprieta' di WEP sono:
    73  * grande stabilita', perche' e' molto difficile trovare la chiave giusta
    74    mediante un attacco ''brute-force'' e il motivo sta nella lunghezza della
    75    chiave e dalla frequenza di cambio di chiave.
    76  * auto-sincronizzazione, in quanto WEP e' in grado di autosincronizzarsi per
    77    ogni transazione che deve svolgere.
    78  * efficenza, in quanto e' implementabile sia via hardware che via software
    79  * esportabilita'
    80  * opzionabilita', in quanto WEP e' un' opzione di 802.11.
     70Prima di addentrarsi nei dettagli del funzionamento di WEP, e' importante
     71sottolineare che e':
     72 * ragionevolmente sicuro, perche' e' difficile trovare la chiave giusta
     73   mediante un attacco di forza bruta, a causa della lunghezza della chiave e
     74   dalla  frequenza di cambio di chiave.
     75 * autonomo, in quanto WEP e' in grado di gestire in autonomia i problemi di
     76   sincronismo legati al livello ''data-link'' e alla sua scarsa affidabilita'
     77   (''best effort'');
     78 * efficiente, in quanto e' implementabile sia via hardware che via software
     79 * esportabile, poiche' usa algoritmi crittografici esportabili fuori dai
     80   confini statunitensi;
     81 * opzionale, visto che la sua implementazione e' facoltativa.
    8182
    82  ,,SoujaK: ''opzionabilita'? '',,
     83=== Funzionamento di WEP ===
    8384
    84 == Come funziona WEP ==
     85WEP e' una sorta di cifrario, nel quale ogni blocco del testo in chiaro viene
     86messo in XOR (bit a bit) con una chiave generata della stessa lunghezza e di
     87origine pseudo-casuale.
    8588
    86 ,,20061117-0955 roma,,[[BR]]
    87 L'algoritmo WEP e' una sorta di libro codificato nel quale ogni blocco del testo
    88 in chiaro viene messo in XOR con una sequenza di chiave pseudo-casuale
    89 di lunghezza uguale alla lunghezza di tale blocco; tale sequenza e' generata da
    90 WEP.
     89La chiave segreta viene distribuita tra tutte le stazioni cooperanti da un
     90gestore esterno ed e' utilizzata simmetricamente da WEP sia per il
     91processo di cifratura che di decifratura dei dati.
     92La chiave segreta viene concatenata con un '''vettore di inizializzazione'''
     93(''Initialization Vector'' o IV) e data in pasto come seme a un generatore di
     94numeri pseudo-casuali (''Pseudo Random Number Generator'' o PRNG).
     95Il PRNG (nella fattispecie l'RC4 definito in RSA) genera, ottetto dopo
     96ottetto, una sequenza che costituira' la nuova '''chiave generata'''.
     97Per garantire l'integrita' dei dati cifrati, il testo in chiaro viene
     98concatenato ad un codice di controllo CRC-32 denominato ICV (''Integrity Check
     99Value'').
     100La STA spedisce quindi un ''frame'' il cui corpo contiene:
     101 * il vettore di inizializzazione;
     102 * il volume dei dati cifrati (tramite XOR con la chiave generata), costituiti
     103   dall'MSDU e l'ICV.
    91104
    92 La cifratura dei dati avviene nel modo seguente: vi e' una chiave segreta che
    93 viene distribuita tra tutte le stazioni cooperanti da un gestore esterno e tale
    94 chiave e' utilizzata da WEP sia per cifrare che per decifrare i dati (WEP e' un
    95 algoritmo simmetrico).
    96 
    97 La chiave viene concatenata con un vettore di inizializzazione (IV) e diventa
    98 input per formare un PRNG (Pseudo Random Number Generator). PRNG, mette in
    99 output una nuova chiave composta da una sequenza di ottetti (pseudo-casuali) il
    100 cui numero e' uguale alla lunghezza dei dati da trasmettere piu' quattro (serve
    101 per ''Integrity Check Value'' o ICV). Ora i dati in chiaro vengono cifrati
    102 grazie alla concatenatura di essi con ICV e la chiave generata da PRNG. La
    103 stazione che inviera' il messaggio cifrato inviera' anche l'IV.
    104 
    105 Vi sono dettagli importanti da tenere presente:
    106  * IV consente l'auto-sicronizzazione di WEP e allunga la vita della chiave
    107    segreta che deve essere aggiornata periodicamente.
    108  * Nonostante quello detto sopra la chiave segreta e' del tutto indipendete da
    109    IV e puo' rimanere fissa mentre IV cambia.
    110  * Ad ogni cambio di IV si possono generare nuove chiavi grazie a PRNG ed e'
    111    per questo che IV viene trasmesso insieme ai dati cifrati (in quanto
    112    consente sia la cifratura che la decifratira dei dati).
    113  * IV viene trasmesso in chiaro in quanto non si puo' risalire alla chiave
    114    segreta da esso.
     105L'uso del PRNG permette, a partire da chiavi di lunghezza fissata, la
     106generazione di chiavi di lunghezza arbitraria, composte dalla sequenza di
     107numeri pseudo casuali da esso prodotta. La sequenza e', ovviamente,
     108riproducibile dall'altro lato della connessione fidata, a patto di conoscere la
     109chiave segreta e l'IV. [[BR]]
     110Un altro componente di grande rilievo in WEP e' pure l'IV, nonostante debba
     111essere esposto in chiaro. Infatti esso consente non solo di allungare la
     112lunghezza dell'input del PRNG, ma di renderlo mutevole (e meno prevedibile) dal
     113momento che l'IV stesso deve essere cambiato il piu' spesso possibile.
     114Ulteriore affidabilita' di WEP dipende dall'indipendenza fra la chiave segreta e
     115l'IV, scongiurando pertanto la possibilita' di conoscere la prima a partire dal
     116secondo.