Una panoramica sul mondo della Sicurezza Informatica, del Networking, della Virtualizzazione e non solo. Blog particolarmente indicato per i reparti IT che comunque alterna articoli scritti per specialisti con articoli formulati con linguaggio semplice e comprensibile a tutti.

Ogni articolo di questo blog è stato integralmente scritto dall'autore. Il contenuto è completamente originale e la riproduzione, anche parziale, è vietata salvo autorizzazione.

sabato 3 settembre 2016

Bitcoin Mining nel Q4 del 2016, elaborare produce ancora guadagno?

Se siete completamente a digiuno dell'argomento e non conoscete le dinamiche del BitCoin Mining e del guadagno economico potenzialmente derivante dalle operazioni di calcolo, allora vi consiglio di leggervi questo articolo, datato ma esplicativo: Cos'è il bitcoin mining? Ci pagano davvero per fare elaborazioni?

Mi sono allontanato da diverso tempo da questo campo, tuttavia ho acquistato da poco una scheda video all'avanguardia e di generosa potenza, quindi mi sono domandato se la vendita della sua capacità elaborativa potesse generarmi un profitto. Questo mi ha portato a fare dei rapidi calcoli.

La GTX1080 avrebbe sviluppato 450MH (MegaHash) di calcolo, un numero che fino a poco tempo fa era di tutto rispetto. Un altrettanto rapido calcolo mi ha portato però una deludente verità, la mia scheda mi avrebbe generato un profitto potenziale di 0,01$ al mese (spendendoci forse 30$ di energia elettrica).



Eppure fino a non molto tempo fa ci avrei potuto sviluppare un buon guadagno. Cosa è cambiato? Semplice, il coefficiente di difficulty, ovvero il coefficiente di retribuzione basato sulle elaborazioni che vengono fatte.

Come in ogni mercato, l'aumentare dell'offerta fa scendere il prezzo della domanda. Nel nostro caso l'aumentare dell'offerta è derivata dalla maggior capacità di calcolo e dall'introduzione massiva di processori ASIC (https://en.bitcoin.it/wiki/ASIC) fortemente specializzati su questo tipo di elaborazione ed estremamente performanti.

Qui sotto possiamo vedere un grafico indicante quanto esponenzialmente sia aumentato il coefficiente di difficulty (e quindi quanto sia drammaticamente scesa la retribuzione) nel corso del tempo:



Per avere un'idea di quanto esponenzialmente sia salito il coefficiente, basti osservare quanto la linea sia sostanzialmente piatta fino al 2014 nonostante, vi assicuro, fino a quegli anni i coefficienti raddoppiavano con una facilità estrema (erano tutt'altro che piatti).


Assodato che, quindi, elaborare con qualsiasi altra piattaforma che non sia ASIC al giorno d'oggi non ha alcun senso (immaginiamo che una CPU Xeon all'avanguardia di un server recente svilupperebbe  0.01$ dopo 3 anni di elaborazione al 100%), ho provato a raccogliere dati sulle MiningBox, ovvero strumenti nati per fare solo questo. Tra informazioni ricavate su internet e approfondimenti sui nuovi modelli direttamente sui siti di produzione, ho elaborato una tabella aggiungendo il guadagno giornaliero ed in quanti giorni il prodotto si sarebbe teoricamente ripagato.

Performance / Prezzo


Miner Capacity gH Price
AntMiner S7 4730,00 $479,95
AntMiner S9-B12 11850,00 $1.442,00
AntMiner S9-B13 12930,00 $1.600,00
Avalon6 3500,00 $499,95
AntMiner R4 8600,00 $1.395,00
SP20 Jackson 1500,00 $248,99
AntMiner S5+ 7722,00 $2.307,00
AntMiner S5 1155,00 $370,00
ASICMiner BE Tube 800,00 $320,00
ROCKMINER T1 800G 800,00 $325,00
Spondooliestech SP35 Yukon 5500,00 $2.235,00
Spondooliestech SP31 Yukon 4900,00 $2.075,00
ASICMiner BE Prisma 1400,00 $600,00
ROCKMINER R3-BOX 450,00 $200,00
ROCKMINER R4-BOX 470,00 $210,00
HashCoins Zeus v3 4500,00 $2.299,00
HashCoins Apollo v3 1100,00 $599,00
BTC Garden AM-V1 616 GH/s 616,00 $350,00
AntMiner U3 63,00 $38,00
AntMiner S4 2000,00 $1.400,00
ROCKMINER R-BOX 110G 110,00 $88,00
AntMiner S3 441,00 $382,00
Spondooliestech SP30 Yukon 4500,00 $4.121,00
CoinTerra TerraMiner IV 1600,00 $1.500,00
BTC Garden AM-V1 310 GH/s 310,00 $309,00
ROCKMINER Rocket BOX 450,00 $599,00
AntMiner S1 180,00 $299,00
BFL Monarch 700GH/s 700,00 $1.379,00
ROCKMINER R-BOX 32,00 $65,00
Spondooliestech SP10 Dawson 1400,00 $2.845,00
AntMiner S2 1000,00 $2.259,00
Black Arrow Prospero X-3 2000,00 $6.000,00
HashFast Sierra Evo 3 2000,00 $6.800,00
Black Arrow Prospero X-1 100,00 $370,00
Klondike 5,00 $20,00
KnC Neptune 3000,00 $12.995,00
GekkoScience 9,50 $49,97
HashFast Sierra 1200,00 $7.080,00
KnC Jupiter 500,00 $4.995,00
KnC Saturn 250,00 $2.995,00
NanoFury NF2 4,00 $50,00
HashFast Baby Jet 400,00 $5.600,00
AntMiner U1 2,00 $29,00
Avalon USB Nano3 3,60 $55,00
BPMC Red Fury USB 2,50 $44,99
Metabank 120,00 $2.160,00
Avalon Batch 2 82,00 $1.499,00
Avalon Batch 3 82,00 $1.499,00
ASICMiner BE Cube 30,00 $550,00
BFL SC 50 Gh/s 50,00 $984,00
Avalon Batch 1 66,00 $1.299,00
KnCMiner Mercury 100,00 $1.995,00
BFL Single 'SC' 60,00 $1.299,00
AntMiner U2 2,00 $49,66
ASICMiner BE Blade 11,00 $350,00
HashBuster Micro 20,00 $688,00
bi*fury 5,00 $209,00
Twinfury 5,00 $216,00
BFL 500 GH/s Mini Rig SC 500,00 $22.484,00
Blue Fury 3,00 $140,00
BFL SC 25 Gh/s 25,00 $1.249,00
TerraHash Klondike 16 5,00 $250,00
TerraHash Klondike 64 18,00 $900,00
BFL SC 5Gh/s 5,00 $274,00
TerraHash DX Large (full) 180,00 $10.500,00
TerraHash DX Mini (full) 90,00 $6.000,00
Bitmine,ch Avalon Clone 85GH 85,00 $6.489,00


Guadagno / Ritorno sull'investimento (giorni)


Miner $/day guadagno ROI (gg)
AntMiner S7 3,1921824 150
AntMiner S9-B12 7,997328 180
AntMiner S9-B13 8,7261984 183
Avalon6 2,36208 212
AntMiner R4 5,803968 240
SP20 Jackson 1,01232 246
AntMiner S5+ 5,21142336 443
AntMiner S5 0,7794864 475
ASICMiner BE Tube 0,539904 593
ROCKMINER T1 800G 0,539904 602
Spondooliestech SP35 Yukon 3,71184 602
Spondooliestech SP31 Yukon 3,306912 627
ASICMiner BE Prisma 0,944832 635
ROCKMINER R3-BOX 0,303696 659
ROCKMINER R4-BOX 0,3171936 662
HashCoins Zeus v3 3,03696 757
HashCoins Apollo v3 0,742368 807
BTC Garden AM-V1 616 GH/s 0,41572608 842
AntMiner U3 0,04251744 894
AntMiner S4 1,34976 1.037
ROCKMINER R-BOX 110G 0,0742368 1.185
AntMiner S3 0,29762208 1.284
Spondooliestech SP30 Yukon 3,03696 1.357
CoinTerra TerraMiner IV 1,079808 1.389
BTC Garden AM-V1 310 GH/s 0,2092128 1.477
ROCKMINER Rocket BOX 0,303696 1.972
AntMiner S1 0,1214784 2.461
BFL Monarch 700GH/s 0,472416 2.919
ROCKMINER R-BOX 0,02159616 3.010
Spondooliestech SP10 Dawson 0,944832 3.011
AntMiner S2 0,67488 3.347
Black Arrow Prospero X-3 1,34976 4.445
HashFast Sierra Evo 3 1,34976 5.038
Black Arrow Prospero X-1 0,067488 5.482
Klondike 0,0033744 5.927
KnC Neptune 2,02464 6.418
GekkoScience 0,00641136 7.794
HashFast Sierra 0,809856 8.742
KnC Jupiter 0,33744 14.803
KnC Saturn 0,16872 17.751
NanoFury NF2 0,00269952 18.522
HashFast Baby Jet 0,269952 20.744
AntMiner U1 0,00134976 21.485
Avalon USB Nano3 0,002429568 22.638
BPMC Red Fury USB 0,0016872 26.665
Metabank 0,0809856 26.671
Avalon Batch 2 0,05534016 27.087
Avalon Batch 3 0,05534016 27.087
ASICMiner BE Cube 0,0202464 27.165
BFL SC 50 Gh/s 0,033744 29.161
Avalon Batch 1 0,04454208 29.163
KnCMiner Mercury 0,067488 29.561
BFL Single 'SC' 0,0404928 32.080
AntMiner U2 0,00134976 36.792
ASICMiner BE Blade 0,00742368 47.146
HashBuster Micro 0,0134976 50.972
bi*fury 0,0033744 61.937
Twinfury 0,0033744 64.011
BFL 500 GH/s Mini Rig SC 0,33744 66.631
Blue Fury 0,00202464 69.148
BFL SC 25 Gh/s 0,016872 74.028
TerraHash Klondike 16 0,0033744 74.087
TerraHash Klondike 64 0,01214784 74.087
BFL SC 5Gh/s 0,0033744 81.200
TerraHash DX Large (full) 0,1214784 86.435
TerraHash DX Mini (full) 0,0607392 98.783
Bitmine,ch Avalon Clone 85GH 0,0573648 113.118



Questo ci fa capire, quindi, che nel migliore dei casi (ad oggi, 3 settembre 2016), dando per scontato uno scenario inverosimile (ovvero che il grado di difficulty rimanga stabile) investendo quasi 500$ avremo un rientro del capitale in circa 150 giorni per poi guadagnarci circa 3,1$ al giorno. 

Non abbiamo però calcolato che il sistema consuma circa 800W/h che attualizzato alle tariffe attuali italiane significa circa 3$ al giorno (converto in dollari perchè tutti i calcoli sono in questa valuta), vanificando completamente tutto il calcolo.

Nella realtà dei fatti, il coefficiente non potrà che aumentare esponenzialmente, riducendo drastricamente i guadagni giorno dopo giorno.



Conclusioni 


Ad oggi mi sembra del tutto irragionevole investire per vendere le proprie risorse elaborative, salvo che non si abbia già un'infrastruttura preesistente e che non si paghi l'energia elettrica. In sostanza, se avete qualche decina di migliaia di criceti a disposizione e desiderosi di produrre energia correndo sulla ruota e trovate per terra passeggiando e per caso un miner da 5000 euro funzionante, allora potrebbe valerne la pena. In tutti i restanti casi non ci vedo molta convenienza.



Discaimer: Ogni articolo di questo blog è stato integralmente scritto dall'autore. Il contenuto è completamente originale e la riproduzione è vietata salvo autorizzazione.

giovedì 25 agosto 2016

L'ennesimo (pericoloso) capriccio di Microsoft Outlook: l'autodiscover

Ogni nuova versione di Outlook introduce un nuovo capriccio. Con l'uscita della versione 2013 suscitò scalpore l'impossibilità di salvare la propria posta in uscita IMAP nella propria cartella Sent. Quella che sembrava essere una normalità, fu rimossa. I più ingenui pensarono ad un restyling, i più scaltri videro un'operazione di marketing mirata ad indebolire l'utilizzo di protocolli standard a favore di MAPI ed Exchange.

Ma l'ultima genialata della versione 2016 sembra essere pensata dal peggior "markettaro" di caracas: l'autodiscover.



Cos'è e come funziona l'autodiscover


L'autodiscover è una funzionalità in grado di velocizzare la configurazione di una casella exchange. Lavora cercando un record DNS di tipo autodiscover.dominio.ext, che a sua volta è un rimando verso l'MTA in grado di fornire, dopo autenticazione, tutti i dati di configurazione.





Pericoli


E' evidente che la funzionalità autodiscover pone gravissimi problemi di sicurezza. La tendenza degli utimi anni è quella di anteporre davanti ai propri mailserver dei frontend (antispam, antivirus, etc.) in grado di assorbire gli attacchi e filtrare le email con lo scopo primario di celare il vero MTA e renderlo invisibile. L'autodiscover fa l'esatto contrario, a fronte di una facilitazione, grida ai quattro venti dove sitrova l'MTA reale.




Ok, disabilitiamolo


No. Non si può. Devi fare un complesso pasticcio tra il file hosts per imbrogliare il client e credere che stia realmente contattando il record dns. Sostanzialmente sei costretto ad usarlo dalla versione 2016 di outlook.




Un paio di esercizi


Esercizio 1: scoprire l'MTA reale di un dominio, saltando tutti i frontend antispam.

Si tratta di un dominio reale di una delle aziende finanziarie italiane più importanti e più sotto attacco (quindi ci aspettiamo attenzione massima in ambito security):


1. Vediamo il record MX, perfetto, questo è il cluster di frontend che riceve la posta, la filtra e la manda all'MTA reale, celandolo. Perfetto.



2. Scoprire l'ip dell'MTA reale sarebbe fantastico, ci consentirebbe di saltare ogni controllo. Facile con il discover, tanto quanto fare una query dns.


Oltretutto abbiamo scoperto che hanno un sistema exchange e utilizzano già degli outlook 2016. Informazioni assolutamente non banali per chi vuole muovere degli attacchi. E questo in maniera del tutto silente, con delle semplici query dns.


Esercizio 2: Da quando ho iniziato l'articolo, ho creato un record A fingendo un autodiscover, mettendoci un server honeypot in ascolto con uno script in grado di loggare ogni IP che richiedeva informazioni. In meno di un'ora ben 4 scanner hanno tentato di catturare informazioni cercando di accedere al server di discover. 


E non vi è modo di sapere quanti si sono fermati solo alla query DNS. Quindi gli attacchi già ci sono, gli scanner già ci sono e stanno già girando incessantemente. A voi le conclusioni. Non era meglio inserire il nome del server di posta in arrivo e quello in uscita come si è sempre fatto? Era davvero necessario?


Di per se l'idea non è male, ma è incredibile che questa debba essere imposta senza possibilità di replica. La sicurezza informatica è un equilibrio continuo tra la comodità e la complessità che vanno a favore o a discapito del livello di sicurezza. Ma lasciamo che gli EDP decidano autonomanente ed in piena consapevolezza dove posizionare l'asticella. Perchè imporre una facilitazione che ha così tanti lati negativi?

In questo articolo non abbiamo parlato della messa in sicurezza supplementare del server MTA, magari impedendo che accetti connessioni se non dal suo frontend. Ma non abbiamo nemmeno parlato del disastro che la compromissione della paginetta web di autenticazione dell'autodiscover comporterebbe (tutte le credenziali di dominio AD raccolte in un batter d'occhio)... Insomma, non ci siamo spinti oltre, ma tanto basta e avanza.


Discaimer: Ogni articolo di questo blog è stato integralmente scritto dall'autore. Il contenuto è completamente originale e la riproduzione è vietata salvo autorizzazione.

mercoledì 29 giugno 2016

La tecnologia contactless delle nuove carte di credito è sicura?

Ho dovuto rinnovare la mia carta di credito ed ho avuto una "splendida" sorpresa. La mia nuova carta è contactless.

Ho "storto il naso" perchè ricordavo degli articoli di fonti autorevoli (Kaspersky Labs ed altri) che elencavano attacchi proprio su questo tipo di tecnologia. Ed ho provato ad approfondire con tanto di laboratori. Ma andiamo con ordine.


Tecnologia


La tecnologia contactless prevede il pagamento avvicinando la carta sul lettore. Il sistema funziona via NFC a 13.56MHz, una sottoclasse delle tecnologie RDIF. Un'antenna attiva sollecita un tag passivo contenuto nella carta, alimentandolo e leggendone le informazioni. Qualsiasi dispositivo NFC opportunamente dotato di software (nemmeno tanto) specifico può leggere il contenuto del tag.

Ogni transazione carta-pos genera un codice onetime, quindi la lettura della carta diviene utile per una singola transazione.




Limite per transazione


Normalmente il limite delle transazioni contactless è di 25 euro a transazione, superabile inserendo un pin oppure firmando lo scontrino. Ora... non è che per un maleintenzionato lo scontrino sia proprio un deterrente eh...

Dal blog di Kaspersky Labs si apprende che una coppia di ricercatori britannici ha bypassato il limite di transazione mettendo offline il POS e pagando in un'altra valuta, portando la somma erogata ad 1 milione di euro. Limite che comunque la propria banca non erogherebbe (si spera), ma comunque che apre una finesta sulla possibilità che vulnerabilità future possano alterare questa protezione.




Sicurezza


Allo stato attuale e a differenza di quanto affermato da MasterCard e Visa, vi sono diversi studi che dimostrano le fragilità di questo sistema.

Tanto per iniziare, abbiamo detto che dispositivi NFC possono leggere il contenuto della carta di credito. Normalmente il proprio telefono viene spesso appoggiato al portafoglio. Con questa "visione illuminata", due ricercatori hanno dimostrato la possibilità di infettare un dispositivo android (senza necessitare di permessi di root e anche a display bloccato) al fine di recuperarne le informazioni utili a sviluppare una transazione bancaria.


Quando un dispositivo è in grado di leggere il contenuto di una carta, avvisa il maleintenzionato che a sua volta può effettuare una transazione creando un collegamento con il binomio smartphone-carta vittima.



La crittografia, inoltre, è molto più efficace nel momento in cui è basata sull'utilizzo di un codice PIN, cosa che nella tecnologia contactless viene meno.

Lo standard EMV, inoltre, prevede che alcune informazioni come l'ultima transazione o il numero della carta possano essere memorizzate in chiaro senza alcuna crittografia. Facilmente reperibili con una banale app per android.





Diversi si sono occupati dell'argomento:



tra cui anche le nostre Iene in un servizio, tuttavia e come spesso accaduto quando si occupano di temi estremamente tecnici, molto criticato.




Sfatiamo qualche mito


I sostenitori della tecnologia indicano tra i punti più forti a favore della sicurezza, il fatto che una carta contenuta in un portafoglio non può essere "accidentalmente" letta, ma va estratta. Questo non è affatto vero in quanto il tag supera abbondantemente di un paio di centimetri tutti i portafogli testati.

E' possibile, inoltre, sviluppare un'antenna fuori standard ed estendere il raggio di azione a 80 cm http://www.surrey.ac.uk/mediacentre/press/2013/114636_contactless_payment_cards_research_highlights_security_concerns.htm

E' di un anno fa, inoltre, questa notizia http://www.dailymail.co.uk/news/article-3171431/Thieves-use-scanners-steal-account-details-contactless-card-wallet.html in cui si solleva l'argomento e si fa luce sulla relativa facilità con cui operazioni fraudolente potrebbero avvenire.




Conclusione


Tanto per iniziare, sicura o meno che sia questa tecnologia, mi fa rabbrividire che senza una duplice volontà dell'utilizzatore, la carta possa dare l'ok a procedere su una transazione finanziaria. Inoltre non ne trovo assolutamente l'utilità, tanto poggiare la carta, tanto inserirla e far leggere un chip.
Ad ogni modo, giusto per non sbagliare e nulla togliendo ai ricercatori di Visa e Mastercard, "senza saper nè leggere nè scrivere", io ho comprato un portafoglio schermato. E se non volete investire 50 euro per un portafoglio schermato, questi contenitori "RFID STOP" costano pochi euro https://www.amazon.it/KORUMA-Blocco-Contactless-Porta-credito/dp/B018I90WMA ...senza scendere nel dettaglio dei protocolli crittografici utilizzati dal sistema EMV... potrebbe valere comunque la pena adottare sistemi "ignoranti" (certamente i più efficaci) se non si ha la necessità di pagare senza staccare le mani da un mandolino (ve la ricordate la pubblicità, vero?).




Discaimer: Ogni articolo di questo blog è stato integralmente scritto dall'autore. Il contenuto è completamente originale e la riproduzione è vietata salvo autorizzazione.

giovedì 19 maggio 2016

WebTool, Strumenti e News

Facciamo il punto su qualche webtool estremamente utile nella diagnostica di problemi di sicurezza.


haveibeenpwned.com


haveibeenpwned.com si occupa di raccogliere database di account e password compromesse, così da consentire una ricerca rapida



E' evidente che la sua efficacia è proporzionale al numero di enti che hanno deciso di condividere il proprio security breach (troverete adobe, ma non troverete dropbox, ad esempio). Ma è un ottimo punto di partenza.



CERT


I CERT (Computer Emergency Response Team) sono osservatori incaricati di raccogliere incidenti e vulnerabilità informatiche. Normalmente sono considerati un punto di riferimento, anche a livello governativo, in ambito IT Security.


In italia abbiamo IT-CERT https://www.certnazionale.it/





National Vulnerability Database


Il NVD americano, pariteticamente ed in collaborazione con i CERT, fornisce un'interfaccia dove cercare vulnerabilità note per pacchetti, librerie o software anche specifici.






VirusTotal


Ci allontaniamo un attimo, ma è sicuramente un must. Virustotal consente la scansione di un file confrontandolo con 56 motori antivirus diversi. Se siete incerti sul contenuto di un file, sicuramente questo è un ottimo modo per togliersi qualche dubbio.





DataBreachToday


Mantenersi aggiornati fa parte della IT Security e conoscere per tempo i security breach ci consente di mettere in atto ragionevoli precauzioni.



lunedì 11 aprile 2016

Quanto è facile rubare password?

Ormai anche i muri sanno che le connessioni https sono da preferire a quelle http, le connessioni imaps a quelle imap (143/TCP) o le connessioni submission SSL/TLS sono da preferire a quelle smtp (25/TCP) qualora ci si autentifichi per inviare email. 

Questo è assodato, ma la domanda che spesso mi rivolgono è "ok, ma chi vuoi abbia mai le competenze per catturare le mie password?". Proviamo a fare un laboratorio per cercare di capire quanto è semplice.

Come in linea con il resto del blog, in questo articolo non verrà spiegato come fare, lo scopo esclusivo è quello di sensibilizzare alla sicurezza informatica.

L'articolo è rivolto sia ai normali utilizzatori, sia a chi ha a che fare con queste tecnologie e spesso per "pigrizia" o per mancanza di volontà preferisce configurare connessioni in chiaro piuttosto che seguire la strada corretta di dotare ed utilizzare sul proprio server un certificato valido.



Hardware


Per questa prima prova, inizieremo a fare un Man in The Middle (MiTM) su una connessione ethernet, interrompendo in maniera silente ed invisibile un collegamento fisico.


Nello specifico, banalmente ci siamo dotati di una qualsiasi macchina con 2 schede di rete, intercettando una patch.





Più "in alto" intercettiamo la patch, e più informazioni carpiamo. Se intercettiamo la patch del router, è evidente che avremo informazioni riguardanti l'intera rete, se intercettiamo solo quella di un host, la nostra ricerca si limiterà a quest'ultimo ed al traffico di broadcast.

Lo stesso ragionamento vale in ambito geografico, ricordandoci che internet è un insieme di nodi e rimbalzi da un punto "A" ad un punto "B" e nel mezzo attraversiamo potenzialmente decine di scenari in cui questa operazione di sniffing è facilmente fattibile.



Software


Come sistema operativo abbiamo utilizzato una distribuzione Linux specifica e normalmente utilizzata per questo tipo di attività, tuttavia avremmo potuto fare la medesima cosa con una distribuzione qualsiasi e persino con una macchina Windows con uno sniffer di rete attivo. L'aver utilizzato una distribuzione specifica ci ha solo velocizzato le operazioni di installazione dei tool, facilmente reperibili in rete.

Questa è sostanzialmente la cronologia delle operazioni, con relativo tempo impiegato.

  1. Scaricamento ed installazione della distribuzione Linux (40m)
  2. Configurazione del bridge tra eth2 ed eth4, le nostre NIC (10m)
  3. Esecuzione e configurazione dei tool di sniffing e logging delle password (5m) 





I risultati


Nel giro di meno di 1h abbiamo creato una macchina in grado di catturare tutto il traffico e restituirci le credenziali di accesso in chiaro.



Qui sopra possiamo osservare il risultato di un test di login su un form di autenticazione in HTTP e di un'interrogazione IMAP su di un qualsiasi server di posta. Facile, no?




Access Point liberi


Facciamo un passo in avanti. Per catturare quelle informazioni abbiamo bisogno indubbiamente di un accesso fisico. Potrebbe essere più semplice, quindi, lasciare un simpatico Access Point aperto a tutti.

Ed ecco che:

  1. Installeremo e configureremo il sistema di emulazione AP (15m)
  2. Creeremo le regole di NAT dalla (nel nostro caso) wlan2 alla br0 (5m)
  3. Installeremo e configureremo un Server DHCP per rilasciare gli indirizzi alla wlan (15m)






E come una carta moschicida, in un attimo avremo il traffico (e quindi le relative password) di chi vi si connette, dando in cambio un po' di banda.

Spiegato, concretamente, uno degli evergreen della sicurezza "user-side": mai connettersi a reti non affidabili o aperte. Il rischio di incappare in reti volontariamente lasciate aperte per raccogliere dati è altissimo.



Proxy SSL


Spostiamoci ancora più in là. Creiamo un proxy al cui interno fare decrypt del traffico crittografato. Il funzionamento è pressappoco questo (agiremo creando delle semplici regole di NAT in grado di intercettare le porte su cui il traffico non in chiaro tradizionalmente avviene):






L'utente, come spesso accade, avrà una richiesta di accettazione di un certificato (a sinistra una connessione sicura, a destra una alterata). E' evidente che qualsiasi proxy deve necessariamente riscrivere il traffico, quindi il massimo che si può fare è generare un certificato per la porzione di traffico Proxy-Client.


All'interno del proxy SSL, quindi, vi è una generazione di un certificato forgiato ad hoc per la sessione, ed ogni sessione ha il suo certificato creato in real time con lo scopo di ingannare l'utente.



Sostanzialmente tutto il traffico originariamente crittografato, diviene in chiaro, esponendoci ai rischi di cui sopra.

Ed eccoci al secondo evergreen informatico: "non accettare mai tutti i certificati, ovvero non cliccare sempre e solamente su continua".


NB: Se si importa la root CA del proxy, e quindi l'attaccante ha accesso alla macchina client, i certificati vengono visti come verdi!





More, more and more...


Non ci siamo spinti oltre, non abbiamo parlato di arp poisoning con lo scopo di dirottare il traffico verso di noi al posto del gateway (magari lo faremo in un prossimo articolo), non abbiamo parlato di DoS su WiFi con lo scopo di sostituirsi ad un Access Point, non abbiamo parlato di fake web page con lo scopo di fare injection di codice malevolo... insomma... c'è tanta carne sul fuoco già in questo articolo.

Le morali della favola sono:
  • Evitare come fosse peste bubbonica le connessioni in chiaro (se un sito è HTTP, inserire credenziali non è mai una buona idea)
  • Quando un certificato https è "rosso", c'è un motivo. E se il browser vi segnala un problema, tenetene conto.



giovedì 7 aprile 2016

Cosa succede quando si risparmia troppo sullo storage in un ambiente virtuale?

In ambiente virtuale, il datastore è sicuramente uno degli aspetti più importanti e più sottovalutati in assoluto. Non è inusuale vedere errori grossolani di dimensionamento ed osservare un sovrautilizzo dei dischi SATA (lenti per definizione) e di RAID hardware con performance poco più di "fake raid".

Questo è vero sia quando il datastore è locale e direttamente collegato al singolo server, sia (e peggio) quando il datastore è condiviso da un pool di server.



Tipologie di SAN


Qui abbiamo approfondito come creare una SAN iSCSI con dischi in RAID su una LUN LVM Linux affinchè sia collegata con un pool di server VMWare. Questo procedimento non è differente da cosa accade nei NAS economici, anch'essi con una loro distribuzione linux che si occupa di gestire i dischi ed i collegamenti. Questa architettura, tuttavia, ha dei profondi limiti.

Possiamo dire, riassumendo banalmente, che gli storage si dividono (non me ne volete, è una mia personale classificazione) in:
  • Software Storage (molto economici), ovvero tutti i marchi che utilizzano a bordo un OS Linux e la suite md a gestione dei raid (o anche un Windows Storage Edition, se preferite)
  • Hardware Storage (molto costosi), ovvero tutti i marchi che implementano principalmente a livello hardware la gestione dei dischi
Nel primo caso vedremo ovviamente delle latenze e, per quanto performante potrà essere il sistema, non potrà mai avere un paragone che non sia schiacciante verso la più performante soluzione hardware. Ma si può fare qualcosa? Abbiamo margini di movimento? Lo vedremo nel proseguo dell'articolo.




I costi


In verità non ci sono grandi vie di mezzo sull'aspetto economico. C'è una linea di demarcazione che suddivide nettamente il prodotto "Software" più costoso dal prodotto "Hardware" più economico. Questo mette in difficoltà chi, come me, sviluppa anche progetti e preventivi. Da un punto di vista è facile risultare costoso e perdere di competitività, da un altro è facile quotare un prodotto economico ma non in grado di essere all'altezza delle aspettative (e questo in ambienti virtuali è un disastro).
Allora ho deciso di dedicarmi all'ottimizzazione di un prodotto economico, impiegando (purtroppo) mesi nell'osservazione e nell'affinamento di tutto il possibile per spingere al massimo lo storage software, basato su linux, che avevo tra le mani.



Ottimizzazione di un prodotto commerciale basato su Linux


Il prodotto su cui ho lavorato, un top di gamma di un noto produttore dal nome breve, aveva 8 dischi da 4Tb SATA WD RE, per un totale nominale di 32Tb. Processore Xeon, 32Gb di RAM ECC e 8 NIC, di cui 4 a 10Gbit. In aggiunta, due dischi M2 SSD da 128GB in RAID1 a fare da cache sia in lettura sia in scrittura.

A leggere i datasheet ed i performance test, era una Ferrari. Poteva essere usato anche al CERN di Ginevra. La verità è stata decisamente più mesta ed impietosa.

I primi due mesi, abbiamo avuto latenze così gravi e performance così basse da avere macchine corrotte, datastore persi dagli host, storage vmotion falliti. La media delle latenze si aggirava intorno ai 600ms (e per chi non lo sapesse, oltre i 40ms uno storage è già palesemente e gravemente in crisi).

Non ci siamo persi d'animo, per i successivi 6 mesi è stato un continuo di ticket aperti con il supporto oltre continente, ma senza alcun esito. 6 mesi del tutto inconcludenti. Senza contare gli innumerevoli bug scovati che ci hanno indotto a pensare a processi qualitativi di revisione del software decisamente carenti.

Questo ne è un esempio: cache SSD abilitata, a detta del produttore una features in grado di velocizzare esponenzialmente lo storage. Peccato che, a dischi SSD pieni, le operazioni di riciclo della cache diventavano una cozzaglia di colli di bottiglia così gravi da mandare durante qualche storage vmotion persino in timeout il datastore su vmware (14 secondi, QUATTORDICI SECONDI DI LATENZA, avete letto bene) con una frequenza di una volta ogni 4-5 giorni.


Data Rate

 Latenze (forse il parametro più importante)






Gli ultimi due mesi abbiamo deciso di invalidare la garanzia e mettere mani direttamente al sistema linux. Abbiamo fatto decine di cambiamenti e soprattutto centinaia di test in ogni condizione e con ogni variazione possibile ed immaginabile, sia lato vmware sia lato SAN. Abbiamo prodotto più fogli excel e grafici di quanto avrei voluto, ma lavorando molto sull'utilizzo corretto della RAM dello storage intesa come cache, coinvolgendo il supporto al controllo SIOC di vmware, utilizzando la vFlash (features comunque così costosa da non avere un senso ed una applicabilità reale con apparati SAN così economici) e apportando una marea di variazioni, siamo riusciti ad avere il massimo matematico che potevamo ricavare da quell'hardware. Sufficiente? Dipende ovviamente da cosa ci deve girare e dalla mole di lavoro che hanno le VM.





Credeteci, abbiamo fatto innumerevoli test. Questo articolo tuttavia non vuole fare una statistica degli storage più o meno performanti, quindi marchi e modelli sono stati oscurati. Lo scopo è solo capire se uno storage "software" top di gamma può arrivare a performance similari ad uno "hardware" entry level.



Dopo quasi un anno di lavoro e di test, queste sono le mie personalissime conclusioni


Storage economici possono essere utilizzati solo per sistemi di backup, tipicamente con scritture relativamente sequenziali, impegnative come throughput ma meno sensibili a latenze elevate. 

In ambienti di produzioni, onestamente, dopo aver subìto macchine corrotte e dopo il tempo e gli sforzi che sono serviti ad avere un prodotto stabile e al limite dell'accettabile, non consiglierei questa soluzione nemmeno al mio peggior nemico. Vada per gli ambienti di test, vada anche per un paio di Domain Controller, ma per metterci database o fileserver ci vuole tanto coraggio. E nei miei test non ho usato proprio una macchinetta, ho preso il massimo, equipaggiato con il massimo delle opzioni ed i dischi più enterprise che il mercato SATA offriva.

Sostanzialmente, per quanto abbia tentato con tutte le mie forze e sperato di avvicinare uno storage "software" ad uno con hardware dedicato e specifico per questo scopo, le differenze sono e rimangono abissali ed i costi rispecchiano, in conclusione, esattamente i risultati ottenuti.

Senza considerare che le soluzioni hardware consentono solitamente anche la ridondanza a caldo dei controller ed hanno mediamente un bacino di clientela enterprise, con un livello di supporto decisamente migliore.