hanicker + tecnica   6

Aumentare la sicurezza di Gmail con la verifica in due passaggi
La sicurezza della maggior parte dei nostri account dipende da un solo fattore di autenticazione, il che è abbastanza rozzo e non particolarmente sicuro; questo fattore è la password: un oggetto che può essere indovinato, forzato, smarrito, trovato in un cassetto e così via. In pratica, per accedere a un sistema, oltre al nome utente mi basta “qualcosa che so”.

Aggiungere un fattore aumenta drasticamente la sicurezza, oltre a “qualcosa che so”, mi serve “qualcosa che ho”. Un esempio noto a tutti è il bancomat: il PIN (che “so”) non serve senza la tessera (che “ho”). Un caso simile sono i token forniti dalle banche per i servizi online, ma in quel caso la sicurezza è ulteriormente incrementata perché si aggiunge il fattore tempo: le password che il token mi aiuta a generare non sono riutilizzabili (one-time password) e funzionano solo in un determinato arco di tempo.

Qualcuno potrebbe obbiettare che anche “qualcosa che ho” può essere rubato, e infatti il terzo strato di sicurezza è quello biometrico: “qualcosa che sono”. Impronte digitali o della retina o vocali, o altre forme di identificazione personale possono essere utilizzate per raggiungere un livello di sicurezza molto elevato, se combinate con i fattori visti prima. (Se poi vi picchiano per estorcervi la password, vi rubano il portafoglio per la tessera magnetica e vi cavano un occhio perché serve la vostra retina, avete un problema più grosso).

La password del vostro account Google vi fa accedere  alla vostra casella Gmail e a tutta la serie dei servizi forniti da Big G; inoltre serve per autenticarsi su tutti quei siti di terze parti che avete autorizzato nel tempo. E’ evidente che si tratta di qualcosa che deve essere custodito con la massima cura e deve essere ragionevolmente complesso.

Google stessa ha tutto l’interesse perché  il bouquet della sua offerta sia il più possibile sicuro, in modo da tranquillizzare gli utenti che vi si sono affidati. Per questo ha introdotto la possibilità di attivare su tutti gli account la verifica in due passaggi. Il processo è spiegato in dettaglio nella pagina dedicata. Vediamo di chiarire alcuni dubbi che potrebbero sorgere.

Intanto: come funziona? Una volta attivata, per accedere al vostro account Google (il caso più frequente è la posta), dovrete inserire come sempre la vostra password, dopodiché vi verrà richiesto un codice numerico che verrà immediatamente mandato via SMS. Al momento dell’inserimento, potete decidere se mantenere “registrato” il computer che state usando per un periodo di 30 giorni. Cosa significa? Se decidete di non registrare il computer, il codice verrà richiesto anche agli accessi successivi, mentre nel caso opposto passerà un mese; potete quindi discriminare tra un computer “temporaneo” ed il vostro.

Anche se la password viene rubata o intercettata, un malintenzionato non potrà accedere alla casella perché sprovvisto di PIN, e quello che avete usato sul computer non sicuro è scaduto pochi secondi dopo l’utilizzo. In pratica, il PIN rende la password ogni volta nuova, unica, utilizzabile una sola volta e in un arco ristretto di tempo. Non male.

Analogamente alla spiegazione precedente, adesso i fattori sono due: qualcosa che “sapete” (password) con qualcosa che “avete” (il cellulare). Inoltre, la sicurezza è ulteriormente aumentata dalla password one-time che scade dopo pochi secondi. Naturalmente in questo caso la vostra password originale non cambia, è l’unione con il PIN che la rende unica ogni volta. Anche se qualcuno viene a conoscenza, indovina o ruba la password, essa è inutile senza il vostro cellulare.

Per attivare la verifica in due passaggi (2 step authentication) è necessario collegare un telefono cellulare al vostro account Google. Il numero verrà utilizzato solo per l’invio dei PIN necessari all’autenticazione. Se possedete uno smartphone, potete anche utilizzare in alternativa un’apposita applicazione gratuita fornita da Google. Il dispositivo va autorizzato tramite un codice o un QR code, e da quel momento in poi il PIN sarà fornito da Google Authenticator, che in pratica trasforma il vostro smartphone in un token software concettualmente analogo ai token forniti dalle banche o dalle aziende per l’accesso VPN. Authenticator esiste per Android, iCoso e BlackBerry.

Ma non tutte le applicazioni supportano la 2 step authentication: il caso più comune sono i client di posta e le applicazioni desktop che accedono ai servizi Google. In questo caso vanno create delle password “dedicate” per ciascuna applicazione. La spiegazione di Google è un po’ fumosa, al riguardo. In realtà il concetto è semplice: per le applicazioni che non supportano il PIN (G. lo chiama “codice di verifica”) è necessario far creare dal sistema una nuova password. Benché sia possibile utilizzare la stessa per diverse cose, è più flessibile fare in modo che ciascun programma abbia la sua, in modo da poter in qualunque istante revocare la validità delle credenziali di una singola applicazione. E’ per questo che al momento della creazione viene chiesta un’etichetta: in modo da poter distinguere. Esempio (brutto): vi rubano il portatile ma voi potrete disattivare le credenziali di Mail o di Outlook senza che la posta e la sincronizzazione sul vostro Android/iPhone/BlackBerry smetta di funzionare. Fate attenzione che la password generata viene mostrata una sola volta, se la dimenticate, dovete cancellarla e ricrearla, quindi nella applicazione in cui la userete assicuratevi di selezionare “ricorda password”, a meno che non vogliate usarne una nuova di zecca ogni volta.

“Ma ho lasciato il cellulare (o lo smartphone) a casa, come faccio a ricevere il PIN?” C’è una soluzione: durante il processo di attivazione potrete stampare una tabella analoga a quella che vedete nell’immagine a lato, con una serie di PIN utilizzabili una sola volta in caso non disponiate temporaneamente del dispositivo di autenticazione che avete registrato. E’ una soluzione meno “robusta” perché i codici non scadono, ma è ugualmente “una cosa che avete” e non è riutilizzabile. Naturalmente dovete tenere questi codici al sicuro, nel vostro portafoglio, oppure online su un altro servizio. Potete generare nuovi “pin pad” accedendo alle impostazioni della 2-step-authentication nel vostro account Google.

L’autenticazione in due fattori aumenta drasticamente la sicurezza del vostro account e lo protegge da intercettazioni, furti e altre pratiche illecite. Utilizzando questo processo si possono tagliare fuori gran parte degli attacchi più banali e alla portata di molti, rendendo il vostro account meno “appetibile” di altri più vulnerabili. Un plauso a Google che in questo caso dimostra attenzione per la sicurezza dei suoi utenti.

Tags: account, autenticazione, gmail, google, password, sicurezza, Tecnica
Generali  account  autenticazione  gmail  google  password  sicurezza  Tecnica  from google
october 2011 by hanicker
Postini in pensione
Mi lamento spesso della tecnologia, ma questa volta son qui per parlarne bene.
Ho appena spento per sempre due server, un HP DL380 G3 e un IBM X205. Funzionavano ininterrottamente da agosto 2003. Erano due server con Windows 2003 Server, che fino a pochi mesi fa ospitavano Exchange Server con circa un centinaio di caselle ciascuno. Mai reinstallati, mai nessun guasto, se non forse un paio di dischi del RAID; uno dei due ha fatto anche il Domain Controller fino a due ore fa. Il cliente all’epoca aveva speso parecchio per comprarli, ma casi come questo fanno capire come la qualità a lungo termine sia sempre la scelta giusta. Cose che faccio fatica a far capire a chi pensa che i computer siano tutti uguali. I loro dischi SCSI hanno girato 15.000 volte al minuto per 8 anni, così come la dozzina di ventole dello chassis: fate due conti. Probabilmente sarebbero durati ancora, ma non ha senso scommettere su queste cose, sia per ragioni di costi di manutenzione, che per l’aggiornamento della tecnologia.

Non dico che ci fossi affezionato, ma ogni volta che metto in pensione un apparato che ha lavorato così a lungo mi fa sempre una certa impressione.

Adesso scorrazzano felici nei loro verdi pascoli di vetronite.

Tags: Personali, server, Tecnica
Generali  Personali  server  Tecnica  from google
may 2011 by hanicker
Internet Explorer 9
Nota veloce: ieri ero presso Microsoft insieme ad altri amici e blogger per una chiacchierata informale sul nuovo browser di Microsoft che uscirà tra pochi giorni. Sono arrivato senza aver fatto i compiti: mai visto prima IE9, nessun pregiudizio ma anche poche domanda da fare.

Mi è sembrato il miglior browser Microsoft di sempre (non ci vuole molto, diranno i maligni); sicuramente è molto veloce  e i siti che ho avuto modo di provare si vedevano egregiamente. Rispetto ai soliti competitor lascia più spazio a disposizione per il contenuto, avendo eliminato la status bar – sostituita da un tooltip a scomparsa che appare al suo posto solo quando serve – e sollevando menu e etichette dei tab sulla riga dell’URL. Aumentata anche l’integrazione con il sistema operativo e le prestazioni grafiche, che sfruttano molto di più il chipset video.

Il riconoscimento dell’importanza delle applicazioni online è dichiarato e palese: la tendenza è quella di dare loro una dignità sempre più simile a quella delle normali applicazioni installate in locale. E’ stata citata una statistica (non la fonte) secondo la quale il 70% delle attività su un computer si svolgono ormai attraverso il browser.

Microsoft dichiara una grande attenzione agli standard e spinge molto su HTML5. Quello che ho avuto modo di vedere non mi è dispiaciuto; in questo momento sto pensando di abbandonare Firefox, che secondo me ormai ha perso il treno, in favore di Chrome; a questo punto valuterò anche IE9.

Tags: browser, IE9, microsoft, Tecnica
Generali  browser  IE9  microsoft  Tecnica  from google
march 2011 by hanicker
Post in cui non capisco un sacco di cose, ma si sa: i genovesi mugugnano sempre
Questa è una schermata, parziale perché sarebbe troppo lunga, delle applicazioni installate nativamente dal produttore su un portatile professionale di fascia medio-alta. (Il fatto che sia Toshiba è puramente incidentale, succede anche con altre marche). Del motivo che spinga un produttore a infarcire così una macchina con programmi perlopiù inutili mi è sempre sfuggito. Questi sono 53 programmi che pesano 1,46 Gigabyte. 53 programmi, lo vorrei ricordare, senza i quali il computer funziona perfettamente, meglio, e con maggiore velocità.

Cominciamo col dire che se il portatile è aziendale e passa dall’IT per la prima configurazione, la maggior parte di questa roba non dura il tempo di un reboot (sempre che il portatile non venga direttamente formattato e reinstallato). Tutte le utility che si sostituiscono a quelle native di Windows che fanno esattamente la stessa cosa non hanno la minima ragione di esistere: sono spesso buggate, più lente, non aggiungono funzionalità, sono più difficili da usare e peggiorano l’esperienza dell’utente che ogni volta deve imparare modi nuovi per fare le stesse cose. Inoltre l’interfaccia non è quasi mai coerente con quella del sistema operativo.

In passato ho avuto modo di chiedere a Microsoft se fosse conscia del problema, e la risposta è stata che la pratica viene scoraggiata ma con poco successo, e non c’è poi molto che loro possano fare. Spesso questi programmi, insieme a driver mal scritti di hardware scadente, sono la vera causa della instabilità e della lentezza del computer, ma la colpa ricade comunque sul sistema operativo. Che non è esente da colpe, intendiamoci, ma non sempre il biasimo è meritato.

Nella quasi totalità dei casi queste macchine vengono fornite con un antivirus che dura qualche settimana e poi richiede l’acquisto di una licenza. Anche in questo caso se il computer è aziendale la manovra è perfettamente inutile per ovvi motivi, per il resto sarei curioso di conoscere il “tasso di conversione” di questa pratica. Io non rappresento certo una base statistica, ma non ho mai conosciuto nessuno che non abbia disinstallato questi prodotti antivirus, spesso pesanti e invadenti, in favore di uno dei tanti prodotti disponibili gratuitamente e di qualità assolutamente adeguata. E qui vorrei aprire una parentesi.

La stessa Microsoft produce un buon antivirus gratuito anche per utilizzo professionale, diversamente dalla maggior parte degli antivirus free. Non ho capito perché qualche genio ha scelto di chiamarlo “Microsoft Security Essential” nascondendolo ai non addetti ai lavori, piuttosto che “Microsoft Free Antivirus” e avere gazzilioni di download. Questo coso è veloce, leggero, e funziona abbastanza bene anche su sistemi operativi anziani e macchine poco performanti. L’ho installato su un AMD Duron di 8 anni fa con Windows XP e non ha battuto ciglio, per dire. Per molti è sconosciuto, probabilmente a causa del suo nome: un’ipotesi che potrei fare riguarda il timore di azioni da parte dell’antitrust o di azioni legali dai competitor.

Altra considerazione sui dischi di ripristino: ho speso centinaia di euro per un portatile, perché mi devo creare da solo i dischi di ripristino, che poi magari mi dimentico o il *tuo* programma funziona male e me li fa farlocchi? Oppure non ho neppure il lettore DVD? Piuttosto fammeli pagare ma dammeli, cosa potranno costarti? 1 euro? 2? Eddai, su! E vale anche per l’Office preinstallato: cosa ti potrà costare un caspita di DVD?

Tralascio le evidenti considerazioni sul confronto della situazione Apple vs. Microsoft, mi viene solo da sorridere al pensiero di un Mac pieno di applicazioni e utility analoghe a queste, o un iPad venduto con 6 schermate di applicazioni inutili aggiunte da un rivenditore.

Quello che penso è che in molti casi il comportamente dei produttori sia deleterio per i loro stessi prodotti: è abbastanza evidente che l’hardware stia diventando una commodity, e alle persone interessa poco (giustamente) della sigla del processore che sta usando o dell’ultimo tecnicismo sul prefetch della cache. Come sempre, pochi vogliono un trapano a 12 velocità con mandrino automatico a percussione ma tutti vogliono un buco nel muro: alla fine quello che fa davvero la differenza è il software e l’interfaccia utente. La virtualizzazione dei server rimuove il problema alla radice, e questi goffi tentativi di differenziarsi dai competitor danno più fastidi che altro. Tra qualche anno molti di questi PC saranno utilizzati solo con programmi e dati residenti online, nella cloud, e temo che la cosa spaventi parecchie aziende abituate a produrre “ferro” con logiche molto diverse.

Tags: rant, Tecnica
Generali  rant  Tecnica  from google
march 2011 by hanicker
Aggirare un firewall con il port forwarding dinamico
Scenario 1: siamo connessi ad internet tramite un firewall con politiche restrittive che non permette il traffico verso i server di cui abbiamo bisogno e/o verso alcuni siti web.

Scenario 2: siamo connessi ad internet tramite una rete non fidata (internet cafè, lanparty, hackmeeting) e sospettiamo che il nostro traffico possa essere sniffato da qualche malintenzionato.

In questi casi, avendo a disposizione un account su un server SSH pubblico raggiungibile su una qualunque porta (anche diversa dalla stardard TCP/22) possiamo utilizzare il dynamic port forwarding, un sistema particolarmente comodo di veicolare traffico criptato bypassando eventuali restrizioni.

Il port forwarding dinamico (dynamic port forwarding) è un meccanismo trasparente che supporta il protocollo SOCKS4 o SOCKS5. Invece di configurare un port forwarding da porte specifiche dell’host locale verso porte specifiche del server remoto, esso permette di specificare un server SOCKS che può essere utilizzato dalle applicazioni. Il Client SSH apre una porta sull’host locale e simula un server SOCKS per ciascuna delle applicazioni opportunamente configurate. Quando queste applicazioni devono connettersi a servizi come HTTP, FTP, POP3, SMTP ecc., esse “parlano” al client SSH che simula un server SOCKS e crea un port forwarding verso il server SSH remoto, al quale inoltra il traffico crittografato dal protocollo SSH.

In pratica tutto il traffico in uscita dalle applicazioni configurate per usare il server SOCKS locale viene incapsulato nella connessione SSH verso il server remoto, da dove esce e viene poi veicolato verso i server di competenza. Per effetto di questo meccanismo otteniamo il duplice risultato di bypassare le eventuali regole restrittive del firewall (in quanto la connessione in uscita è solo verso il server SSH), e di criptare tutto il traffico dal client fino al server SSH, nascondendolo agli sguardi indiscreti.

Il requisito principale è un accesso shell via SSH a un server che possiamo raggiungere: potrebbe essere anche un computer a casa che abbiamo configurato per essere raggiungibile dall’esterno con varie tecniche, ad esempio DynDNS. Praticamente tutte le distribuzioni linux contengono OpenSSH, disponibile anche per Windows e su OS/X si abiliterà il login remoto. Il giochino funziona anche se avete un account su un server di un provider che fornisce una shell SSH, ad esempio DreamHost, e riuscite a raggiungerlo dalla vostra posizione. I client sono Putty per Windows e nativi negli altri casi.

Putty può essere usato tramite linea di comando o interfaccia grafica. La sintassi per la linea di comando è la seguente:

putty -ssh -D 9999 -P 80  serverssh.dominio.com

dove:

-ssh indica usare il protocollo SSH.
-D 9999 indica al client di ascoltare sulla porta 9999/TCP. Potete utilizzare qualunque porta libera sul vostro client: controllate con netstat -an -p TCP | findstr LISTENING (Windows) o netstat -an -p TCP | grep LISTEN (OS/X e linux).
-P 80 identifica la porta sulla quale è in ascolto il server SSH remoto. Se è la default TCP/22 non serve indicarla.
serverssh.dominio.com è il nome del server SSH. Si può usare anche l’indirizzo IP.

Se si usa l’interfaccia grafica bisogna stabilire una normale connessione, poi aggiungere un tunnel nel menu Connection –> SSH –>Tunnels compilando il campo “Source port” (la porta locale di ascolto),  lasciare vuoto “Destination”, scegliere “Dynamic” e cliccare su “Add”

La sintassi per linux e OS/X è:

ssh -D porta_locale utente@serverssh

Una volta autenticati e stabilita la connessione si può minimizzare la finestra della console senza chiuderla e passare alla configurazione delle applicazioni. In Windows si possono utilizzare tutte quelle che supportino l’utilizzo di un server SOCKS. Praticamente tutti i browser lo fanno e molti altri programmi hanno il supporto, per esempio Pidgin.

In Firefox la configurazione si fa tramite il menu Strumenti –> Opzioni –> Avanzate –> Rete  –> Impostazioni –> Configurazione manuale del proxy –> Host SOCKS e si specifica “localhost” (o 127.0.0.1) e la porta locale sulla quale ascolta il client SSH (9999 nell’esempio qui sopra).

Una comoda alternativa è rappresentata da una categora di tool chiamati socksifier, che permettono a qualunque applicativo di connettersi all’esterno tamite SOCKS. Uno dei più utilizzati per Windows è gratuito e si chiama WideCap. Su linux si può usare tsocks, avendo cura di modificare prima il file /etc/tsocks.conf specificando 127.0.0.1 nella variabile “server” e la porta desiderata in “server_port”.  Per OS/X il supporto è nativo: Preferenze di sistema –> Network –> scegliete l’interfaccia con la quale siete collegati ad internet –> Avanzate –> Proxy –> Abilitare “Proxy SOCKS” e compilare i capi “Server” (localhost) e porta (quella scelta precedentemente). In questo modo tutte le connessioni uscenti da quella scheda di rete transiteranno attraverso il proxy SOCKS, e non ci sarà bisogno di toccare la configurazione delle applicazioni poiché il meccanismo è completamente trasparente.

Questo è un breve screencast che mostra come utilizzare Putty e Firefox per ottenere un port forwarding dinamico.

(Utilizzate questi metodi con giudizio: bypassare le policy di sicurezza aziendali vi potrebbe mettere nei guai.)

Tags: port forwarding, ssh, TCP/IP, Tecnica
Generali  port_forwarding  ssh  TCP/IP  Tecnica  from google
june 2010 by hanicker
Un tapullo per filtrare gratis il traffico internet
Pare che la moda del momento sia chiedere che i propri dipendenti non usino Facebook e non chattino su MSN. Pur non essendo d’accordo, credo si tratti di una richiesta lecita se fatta da chi paga sia le persone che la banda(*).

I sistemi di content filtering possono essere costosi e/o impegnativi nella manutenzione per aziende di piccole dimensioni che magari dispongono a malapena un firewall. Ci sono un paio di tecniche che permettono di filtrare abbastanza agevolmente senza dover fare alcun investimento. Il principio è controllare le query DNS, intercettando i domini da bloccare e/o utilizzando l’apposito servizio gratuito fornito da OpenDNS. Della situazione speculare, il blocco totale con pochi domini in whitelist avevo già parlato qui.

Come spesso accade, in azienda c’è un piccolo server Windows 200x o Small Business Server che adempie alle solite funzioni (AD controller, file e print server, DNS, DHCP ecc ecc.); concentriamoci sul DNS. In questo esempio mi interessa bloccare il traffico verso Facebook, quindi ne carico una pagina e do una scorsa al sorgente HTML, dal quale mi accorgo che gli unici domini interessati sono Facebook.com e fbcdn.net. Provvedo quindi a creare due nuove zone di ricerca diretta primarie, integrate in AD e replicate su tutti i server DNS proprio per quei due domini (facebook.com e fbcdn.net).

Il risultato di questa operazione sarà che il mio server sarà convinto di essere autoritativo per i domini in questione e non si preoccuperà di recuperare dai suoi forwarder, o dai root server, l’indirizzo IP degli host di quei domini(**). Non avendo alcun record di tipo A definito, restituirà al client un messaggio di host sconosciuto (“www.facebook.com non esiste“); otteniamo così il risultato di rendere Facebook non raggiungibile. (Naturalmente devo attendere che la cache DNS sui client sia scaduta o forzarne il refresh con ipconfig /flushdns)

Per evitare che un utente più smaliziato usi un server DNS pubblico, bisogna bloccare sul firewall tutto il traffico in uscita sulla porta 53 sia TCP che UDP, tranne quello proveniente dai server DNS interni.

Per bloccare Messenger e per un controllo su altre categorie di siti, si può usare il servizio gratuito offerto da OpenDNS, dove basta registrarsi, configurare il proprio server DNS con gli appositi forwarder, registrare e confermare il proprio network seguendo le semplici indicazioni (c’è anche un client per chi non ha un IP pubblico statico) e attivare il content filtering. Questo è un esempio di configurazione che blocca Messenger ed altre categorie di siti.

Queste impostazioni che vedete sono disponibili anche nella versione gratuita, che assolve egregiamente ai suoi scopi. Si possono anche specificare singoli domini da blacklistare. Il servizio offre anche un po’ di statistiche. Le pagine bloccate vengono catturate e viene restituita una pagina con messaggi personalizzabili e logo dell’azienda.

E’ evidente che questi metodi non resistono ad un utente con competenze evolute (non riuscirete a bloccare il traffico a un ufficio di sistemisti), ma per la maggior parte dell’utenza è uno scoglio insormontabile.

Pregi:

Sono gratuiti.
Sono molto semplici da implementare.
Sono facili da spiegare ai clienti.
Richiedono pochissima manutenzione.
Sono adatti a aziende piccole o medio-piccole.
Sono facilmente reversibili alla configurazione “tutto aperto”.

Difetti:

Pasticciare con le query DNS non è affatto elegante.
Ci si affida a un servizio esterno con tutto ciò che ne consegue in termini di sicurezza, privacy e continuità del servizio.
Utilizzare un servizio come OpenDNS che raccoglie un database di query e lucra sul traffico rediretto è comunque un compromesso.
Non scalano bene nel caso le esigenze di controllo diventino più granulari.
Non sono adatti ad aziende più grandi con infrastrutture più complesse.

(*)Ulteriori considerazioni sul filtrare i contenuti internet sono al di fuori dello scopo di questo post.

(**)Semplificazione. Per una spiegazione più approfondita, leggimi qui.

Tapullo: “Non esiste parola che si possa paragonare a Tapullo. Trattasi di riparazione di fortuna che spesso dura nel tempo e aggiunge nuove funzionalità (…). I Genovesi, da sempre parsimoniosi, sono abili nei Tapulli. I Tapulli vengono mostrati con fierezza agli amici, alcuni diventano perfino leggendari e spesso i grandi marchi vi si ispirano per migliorare i propri prodotti. A volte viene usato il termine per denigrare una riparazione di fortuna (raro), o per indicare una soluzione temporanea (più comune).” Fonte.

Tags: Content filtering, DNS, networking, reti, TCP/IP, Tecnica
Generali  Content_filtering  DNS  networking  reti  TCP/IP  Tecnica  from google
march 2010 by hanicker

Copy this bookmark:



description:


tags: