Differenze tra le versioni di "Sicurezza/2006-2007"

Da WikiDsy.
Riga 192: Riga 192:
 
=== Lezione del 23-10-06 (teoria)  ===
 
=== Lezione del 23-10-06 (teoria)  ===
  
 +
* applicazione della crittografia mista.
 +
 +
* spiegazione e necessità dell'Autorità di Certificazione, e annessi certificati.
 +
 +
* definizioni di:
 +
*# criptoanalisi
 +
*# robustezza
 +
*# attacchi di forza bruta, consentono di rompere:
 +
*#* AC4: rotto in otto giorni nel '95 con 120 workstastions
 +
*#* DES: necessari due anni, già rotto dall'NSA nel '78
 +
 +
* lunghezza idonea in bit di una coppia di chiavi pubblica-privata:
 +
 +
{| border=1
 +
! privata!! pubblica
 +
|-
 +
| 56bit|| 384bit
 +
|-
 +
| 64bit|| 512bit
 +
|-
 +
| 80bit|| 768bit
 +
|-
 +
| 112bit|| 1792bit
 +
|-
 +
| 128bit|| 2304bit
 +
 +
|}
 +
 +
* lunghezze da associare alle chiavi a seconda della lunghezza del periodo per cui devono essere usate:
 +
 +
{| border=1
 +
! durata segreto!! lunghezza minima chiave privata
 +
|-
 +
| decine di minuti|| 56bit
 +
|-
 +
| giorni|| 64bit
 +
|-
 +
|-anno|| 80bit
 +
|-
 +
| decade|| 112bit
 +
|-
 +
| 40 anni|| 128bit
 +
 +
|}
 +
 +
'''Capitolo 3''' del libro
 +
 +
* entità ('''principal''') che accedono a un pc:
 +
*# utenti.
 +
*# gruppi.
 +
*# altri computer.
 +
 +
* identità: attributo che identifica univocamente un principal all'interno di un pc.
 +
 +
* rappresentazioni di identità:
 +
*# casuale.
 +
*# scelta dagli utenti.
 +
*# gerarchica.
 +
 +
* riconoscimento utente:
 +
*# ciò che hai.
 +
*# ciò che sai.
 +
*# ciò che sei.
 +
 +
* debolezze del sistema di identificazione ed autenticazione, username//password:
 +
*# intercettazione possibile.
 +
*# recuperare la password dal file delle password.
 +
*# password guessing.
 +
*## ricerca esaustiva.
 +
*## ricerca mirata.
 +
*## dictionary check.
  
  

Versione delle 19:25, 23 ott 2006

Sicurezza, anno 2006/2007

Sicurezza è un corso complementare per la laurea in comunicazione digitale e altri corsi di laurea.

Docenti

Danilo Bruschi e-mail: <bruschi [at] dico [dot] unimi [it]>

Orari delle lezioni

Lunedì Mercoledì
15:30-17:30 Aula Alfa 16:30-18:30 Aula Sigma

Le lezioni del lunedì tratteranno la parte teorica del corso e saranno tenute dal prof. Bruschi,mentre le lezioni del mercoledi` tratteranno la parte pratica del corso e saranno tenute dai dott. Paleari, Marrone e Lanzi.

Indirizzi email docenti

  • Prof. Bruschi <bruschi [at] dico [dot] unimi [dot] it>
  • Dott. Lanzi <andrew [at] security [dot] dico [dot] unimi [dot] it>
  • Dott. Paleari <roberto [at] security [dot] dico [dot] unimi [dot] it>
  • Dott. Marrone <davide [at] security [dot] dico [dot] unimi [dot] it>

Sito del corso

Se andate qui trovate il programma del corso,le modalità d'esame e quant'altro di necessario.

Materiale didattico

  • Libro fondamentale:
    • Titolo: "Computer Security"
    • Autore: D.Gollmann
    • Casa editrice: J.Wiley
    • Lingua: solo inglese
    • prezzo: sui 45/50€
  • libro che forse verrà utilizzato:
    • Titolo: "Networking Security essentials"
    • Autori: Wiley, Stalling
    • Casa Editrice: Prentice Hall
    • Prezzo: n/a

Verranno presentate slides alle lezioni di teoria del lunedì, ma probabilmente NON verranno messe a disposizione sul sito.

Modalità d'esame

Si raccomandano come prerequisiti l'aver frequentato il corso di Reti di calcolatori e Sistemi Operativi,e di poter lavorare su Linux,in quanto la pratica verterà su questo sistema operativo. L'esame consiste di due prove da svolgere:

  • TEORIA: compito scritto a domande, ci si iscrive tramite sifa
  • PRATICA: orale se ci sono meno di venti persone, altrimenti esercizi in laboratorio; ci si iscrive al termine della prova di teoria, o tramite email


Diario del corso

Lezione del 02-10-06 (teoria)

  • definizioni di
    1. sistema operativo sicuro
    2. bug
    3. exploit
  • descrizione dei primissimi atti di hacking riusciti di rilevanza mondiale, ad opera di:
    1. Hess
    2. Robert Morris
    3. Vladimir Levin



Lezione del 09-10-06 (teoria)

Lezione incentrata sulla crittografia, spiegazione di essa e della distinzione fra chiavi simmetriche ed asimmetriche.

  • Principali protocolli crittografici asimmetrici:
    1. AES
    2. DES
    3. IDEA
  • Problema del key exchange.
  • Algoritmo Diffie-Hellman.
  • Tipologia di attacco: man in the middle.



Lezione del 11-10-06 (laboratorio)

  • accesso alla propria macchina virtuale
  • gestione della rete all'interno della macchina virtuale utilizzando le modalità:
    1. NAT: da usare quando e' necessario "uscire" su Internet; l'ip viene assegnato automaticamente e per ottenerlo basta usare il comando dhclient <interfacccia> (es. eth0)
    2. BRIDGE: da utilizzare per collegarsi ad un altra macchina virtuale del laboratorio, per svolgere alcuni degli esercizi che verranno assegnati (non e' possibile uscire su Internet); l'ip dev'essere impostato manualmente, tramite ifconfig <interfacccia> <ip> netmask <netmask>



Lezione del 16-10-06 (teoria)

Spiegazione della crittografia a chiave asimmetrica (coppia di chiavi pubblica/privata), chiarite le definizioni di:

  • chiave pubblica.
  • chiave privata.

Protocolli usati per la crittografia a chiave asimmetrica:

    1. Diffie-Hellman.
    2. RSA.

L'RSA funziona a partire da due numeri primi di almeno 300 cifre.

  • Problemi correlati:
    1. necessità di trovare un algoritmo che verifichi se un numero é primo.
    2. La fattorizzazione rende possibile rompere RSA (nell'arco di qualche secolo, con i mezzi attuali).


  • Necessità imprescindibili:
    1. Confidenzialità.
    2. Integrità.
    3. Autenticazione.
  • definizioni, spiegazioni, motivazioni dell'ordine di applicazione di:
    1. message digest o checksum.
    2. keyed hash.
    3. firma digitale.

Pro/contro crittografia asimmetrica:

  • + Gestione chiavi semplice.
  • - Diffusione delicata della chiave pubblica.
  • -- Protocolli inefficienti come tempo di esecuzione.



Lezione del 18-10-06 (laboratorio)

Lezione teorica tenuta in laboratorio, avente come argomento la gestioni dei permessi su Linux; questa é la slide usata per la spiegazione. Le istruzioni da compiere per accedere ed utilizzare la propria macchina virtuale sono state riportate qui.

Gli argomenti affrontati sono:

  • Permessi d'accesso per file e cartelle.
    1. r: lettura.
    2. w: scrittura.
    3. x: esecuzione.
  • Modalità d'accesso.
    • File:
      1. SGID.
      2. SUID.
    • Cartelle:
      1. Sticky.
      2. GID.
    • umask.
  • Attributi.
    • chattr serve a impostare i seguenti attributi, preceduti da un + o un -.
      1. A
      2. a
      3. c
      4. i
      5. s
      6. u
      7. S
    • lsattr:
      1. -R
      2. -a
      3. -d
  • Comandi utilizzati nella gestione dei permessi:
    1. chown
    2. chgrp
    3. chmod
  • Schema di autenticazione: utente/password.
    • Si basa su due file:
      1. passwd
      2. shadow
    • Algoritmi utilizzati per la cifratura:
      1. DES modificato.
      2. funzione hash (MD5).
  • Tool di cracking: John the Ripper.
    • Modalità operative:
      1. Worldlistmode. es: # john -wordfile:password -rules passwordcheck
      2. Single Crack mode. es: # john -single passwordcheck
      3. Incremental mode. es: # john -incremental:alpha passwordcheck
      4. External mode. es: # john -wordfile:common-4 -external:Filter_Alpha password_check



Lezione del 23-10-06 (teoria)

  • applicazione della crittografia mista.
  • spiegazione e necessità dell'Autorità di Certificazione, e annessi certificati.
  • definizioni di:
    1. criptoanalisi
    2. robustezza
    3. attacchi di forza bruta, consentono di rompere:
      • AC4: rotto in otto giorni nel '95 con 120 workstastions
      • DES: necessari due anni, già rotto dall'NSA nel '78
  • lunghezza idonea in bit di una coppia di chiavi pubblica-privata:
privata pubblica
56bit 384bit
64bit 512bit
80bit 768bit
112bit 1792bit
128bit 2304bit
  • lunghezze da associare alle chiavi a seconda della lunghezza del periodo per cui devono essere usate:
durata segreto lunghezza minima chiave privata
decine di minuti 56bit
giorni 64bit
decade 112bit
40 anni 128bit

Capitolo 3 del libro

  • entità (principal) che accedono a un pc:
    1. utenti.
    2. gruppi.
    3. altri computer.
  • identità: attributo che identifica univocamente un principal all'interno di un pc.
  • rappresentazioni di identità:
    1. casuale.
    2. scelta dagli utenti.
    3. gerarchica.
  • riconoscimento utente:
    1. ciò che hai.
    2. ciò che sai.
    3. ciò che sei.
  • debolezze del sistema di identificazione ed autenticazione, username//password:
    1. intercettazione possibile.
    2. recuperare la password dal file delle password.
    3. password guessing.
      1. ricerca esaustiva.
      2. ricerca mirata.
      3. dictionary check.



Lezione del 25-10-06 (laboratorio)


Lezione del 30-10-06 (teoria)


Lezione del 06-11-06 (laboratorio)


Lezione del 08-11-06 (teoria)


Lezione del 13-11-06 (teoria)


Lezione del 15-11-06 (laboratorio)


Lezione del 20-11-06 (teoria)


Lezione del 22-11-06 (laboratorio)


Lezione del 27-11-06 (teoria)


Lezione del 29-11-06 (laboratorio)


Lezione del 04-12-06 (teoria)


Lezione del 06-12-06 (laboratorio)


Lezione del 11-12-06 (teoria)


Lezione del 13-12-06 (laboratorio)


Lezione del 18-12-06 (teoria)


Lezione del 20-12-06 (laboratorio)