mercoledì 19 maggio 2010

Phishing

Tratto da un articolo che descrive il funzionamento della tecnologia di rilevazione dei phishing websites sviluppata ed utilizzata quotidianamente da Google:

Gartner estimates that phishers stole $1.7 billion in 2008, and the Anti-Phishing Working Group identified roughly twenty thousand unique new phishing sites each month between July and December of 2008

Articolo:

Large-Scale Automatic Classification of Phishing Pages. NDSS 17-th Annual Network and Distributed System Security Symposium (2010).

lunedì 17 maggio 2010

Routing dinamico

Un articolo leggero ma ben fatto:

In 1998, a hacker told Congress that he could bring down the Internet in 30 minutes by exploiting a certain flaw that sometimes caused online outages by misdirecting data. In 2003, the Bush administration concluded that fixing this flaw was in the nation's "vital interest."

Fast forward to 2010, and very little has happened to improve the situation. The flaw still causes outages every year.

Molto interessante perché la faccenda è una conseguenza diretta di alcuni aspetti fondamentali di Internet: routing dinamico, sistema aperto, assenza di autorità centrale unica, assenza di meccanismi di autenticazione.

Just how fragile is the internet?
http://skunkpost.com/news.sp?newsId=2327

Da quali rischi devo difendermi ?

Durante il corso abbiamo parlato (brevemente) di questo tema molto importante.

Un attacco può essere tecnicamente fattibile; ciò però non implica che prima o poi arriverà un attaccante con risorse e motivazioni adeguate per eseguire proprio quell'attacco.

Difendersi da ogni possibile attacco è troppo costoso.

Ergo, nella pratica occorre determinare gli attacchi possibili e decidere quali solo gli attacchi dai quali ci si vuole difendere. Occorre poi incrociare le dita e sperare che gli attacchi possibili dai quali abbiamo deciso di non difenderci non si verifichino. Nessuno può garantire che la decisione sia corretta.

La decisione deve essere fatta in termini di costi e benefici. L'analisi è complicata per molti motivi, tra i quali il fatto che alcuni aspetti sono difficilmente quantificabili (come quantifico gli effetti di un verbale online falsificato ?) ed altri aspetti sono solo potenziali (quanto mi costerebbe un attacco da cui ho scelto di non difendermi se si verificasse ?).

Un post di Robert Graham (personaggio notevole, uno di quelli che hanno contribuito a concepire e sviluppare le tecnologie antispam) discute questo tema, in breve ma in modo molto interessante.

No matter what you do, you cannot be secure. The first step in a secure development process is to figure what level of risks you are willing to accept, and what level of security you need. For many organizations, the correct answer is to completely ignore security altogether.

http://erratasec.blogspot.com/2010/05/you-may-not-need-sdl.html

martedì 11 maggio 2010

Crittografia e DNS

Una delle mie fissazioni è quella bellissima frase di Roger Needham: "se qualcuno dice che un problema è risolto facilmente dalla critttografia, dimostra che non ha capito il problema".

(per inciso: difficile spiegare in modo sintetico la rilevanza scientifica di Needham; basta forse un aneddoto: era professore all'Università di Cambridge; Microsoft voleva assumerlo in Microsoft Research, che all'epoca aveva solo una sede negli Stati Uniti; lui non voleva andarsene da Cambridge; Microsoft Research decise allora di creare una sede fuori dagli Stati Uniti, appunto a Cambridge)

In questi giorni ho letto un paper che fornisce un ulteriore esempio di questa verità manifesta:

Deploying Cryptography in Internet-Scale Systems: A Case Study on DNSSEC. IEEE Transactions on Dependable and Secure Computing http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=5444890&tag=1> (disponibile nella rete di ateneo)

DNSSEC è una cosa potenzialmente meravigliosa:

The goal of DNSSEC is to add data integrity and origin authenticity to DNS query replies so that users can verify that the answers received are indeed originated from the intended DNS server and have not been altered.

L'idea di base è banale: basta che i server DNS appongano una firma digitale alle risposte. Bene, copio dal paper citato sopra:

From a cryptographic standpoint, DNSSEC aims at a rather moderate goal, the design should be simple, and the deployment should not be difficult either. However the reality shows otherwise. The DNSSEC development efforts started in mid-1990’s, and it took more than a decade and three rounds of revisions to have the DNSSEC specifications finalized in March 2005.

Più di dieci anni per mettere a punto il progetto. Tre revisioni successive del progetto.

Oggi, cinque anni dopo la finalizzazione delle specifiche, "we currently estimate that there are roughly 1000 production DNSSEC zones at the time of this writing". Per capire che si tratta di quasi zero, basti considerare che "the .com zone has tens of millions of delegated children zones."

lunedì 10 maggio 2010

Complementi di Reti di Calcolatori - Provetta

Tra pochissimo metterò i risultati in bacheca al DEEI.

Info e spiegazioni:
  • Il voto proposto può essere registrato senza orale, in uno degli appelli ufficiali.
  • Chi lo desidera può fare l'orale. In tal caso il voto finale potrà aumentare, rimanere immutato, diminuire.
  • Ad alcuni ho scritto "orale suggerito". Ciò significa che, secondo me, è probabile che facendo l'orale il voto finale aumenti. Ovviamente, non posso garantirlo.
  • Tutti quelli ai quali ho proposto un voto devono confermarmi per email se: accettano il voto, senza orale; desiderano fare l'orale (in uno degli appelli ufficiali). Assenza di conferma entro 7-10 giorni equivale a provetta non sostenuta.
  • Chi desidera visionare la propria provetta venga nel mio ufficio, previo appuntamento email.
  • I "ritirati" e gli "insufficienti" possono partecipare ad al più due dei 3 appelli previsti per giugno e luglio.
Alcuni commenti:
  • Errore di quasi nessun conto: nello scenario B alcuni hanno fornito la "descrizione dei segmenti" descrivendo solo lo header TCP. Il testo diceva esplicitamente e chiaramente "La descrizione di ogni segmento deve comprendere tutta la gerarchia degli header...".
  • Errore che dovrei valutare pesantemente, ma sono buono d'animo: alcuni pensano che "MSS=4KB" significhi "MSS=4000 byte". Non è così (e se in qualche esercizio abbiamo fatto così e non ve l'ho fatto notare, allora anche mea culpa; ne dubito, ma se in qualche esercizio in classe non ho rilevato questo errore fatemelo sapere). Più sotto ridiscuto la faccenda.

1K = 2^10 ("un pò più di 1.000"), 1M = 2^20 ("un pò più di 1.000.000"), 1G = 2^30 ("un pò più di 1.000.000.000")

Nelle sole misure di velocità di trasmissione, purtroppo, 1K, 1M, 1G si riferiscono alle potenze di 10 e non alle potenze di 2.

Quindi:
  • Bandwidth di 3 MB/s significa "3 X 10^6 byte/sec" (esattamente 3 milioni di byte/sec)
  • Disco da 3 MB significa "3 X 2^20 byte" (un pò più di 3 milioni di byte)
  • MSS=4KB significa "4 x 2^10 byte" (un pò più di 4000 byte)