Archivi categoria: Intel

Altre grane per i processori: ecco Spectre 1.1 e 1.2

Facebooktwittergoogle_plusredditlinkedin

Le nuove vulnerabilità sfruttano lo stesso principio di Metldown e Spectre, ma permettono diversi tipi di attacchi alle CPU. La sensazione che molti hanno avuto al momento della scoperta di Meltdown e Spectre è confermata: l’emersione delle due vulnerabilità nelle CPU era solo il primo capitolo di una saga che promette di continuare a lungo. […]

L’articolo Altre grane per i processori: ecco Spectre 1.1 e 1.2 proviene da Securityinfo.it.

OpenBSD disabilita il supporto all’hyper-threading sulle CPU Intel

Facebooktwittergoogle_plusredditlinkedin

L’hyper-threading è un’implementazione proprietaria di Intel dell’SMT (Simultaneous Multhreading): questa tecnologia consente di mostrare al sistema operativo due core per ogni core fisico effettivamente presente sulla CPU, portando dei vantaggi di performance. Per sfruttarlo appieno, però, il sistema operativo deve riconoscerlo.

A seguito di tutti i problemi ed ai continui bug che vengono scovati riguardanti alle falle di Meldown e Spectre, Mark Kettenis del team di OpenBSD ha annunciato che verrà rimosso il supporto all’hyper-threading delle CPU Intel perché, per il modo in cui è progettato, aprirebbe la porta ad ulteriori timing attack.
Un timing attack è un tipo di attacco crittografico che permette a terze parti di dedurre il contenuto dei dati criptati registrando ed analizzando il tempo impiegato per eseguire gli algoritmi di crittografia. Spectre e Meltdown, ovviamente, rientrano in questa categoria.

Questa decisione è stata maturata considerando anche che nella maggior parte dell’hardware recente non è possibile disabilitare l’hyper-threading nemmeno dal BIOS/UEFI.
In termini pratici, questa opzione sarà controllabile tramite un nuovo hw.smt in sysctl. Per ora questo “fix” è applicabile solo alle CPU Intel utilizzate su OpenBSD/amd64 ma il team sta lavorando per renderla disponibile anche per altri vendor ed altre architetture (anche AMD ha implementato tecniche simili, per esempio).

Kettenis conclude dicendo che la disabilitazione dell’hyper-threading non risulterà in un calo prestazionale, visto che comunque non si sono mai visti impatti positivi sulle performance.

Quanto “tuning” ci sarà ancora da fare per arginare (decentemente) la questione?

Altro giro, altro bug (per Intel)!

Facebooktwittergoogle_plusredditlinkedin

L’epopea di Intel e dei bug hardware dei suoi processori non cenna a diminuire. Dopo l’annuncio di altre varianti di Spectre e Meltdown, con relative patch in arrivo, Cyberus Technology annuncia la scoperta di un nuovo buco, relativo al lazy FPU state switching (cambiamento di stato della FPU pigro).

Di cosa si tratta? Abbiamo già accennato ai meccanismi di Meltdown e Spectre, per cui alcune tecniche di miglioramento delle prestazioni (branch prediction) permettono l’accesso non autorizzato a dati memorizzati nella CPU; anche questa volta siamo di fronte ad un caso simile.

Le nostre CPU eseguono un solo programma alla volta, ma possono sospendere l’esecuzione di un programma ed eseguirne un altro: fatto spesso (e con sufficiente velocità), questo crea l’illusione del multitasking, ovvero l’esecuzione contemporanea di più programmi. La CPU usa tutta una serie di registri per sapere a che punto del programma sia arrivata e su che dati stesse lavorando: il cambio avviene salvando la situazione di questi registri e caricando la situazione del programma lasciato in sospeso da riprendere.
Anche in questo caso lo switch di programma può essere piuttosto oneroso, quindi una tecnica per migliorare le prestazioni è evitare l’effettivo cambiamento fino a quando non sarà necessario, lasciando quindi accessibili dei dati che non appartengono al programma in esecuzione in quel momento.

Questa particolare falla non riguarda tutta la CPU, ma la FPU (Floating-Point Unit), ovvero quel chip che si occupa esclusivamente dei calcoli che riguardano numeri con la virgola (le operazioni fatte con numeri interi sono più semplici e gestite direttamente dalla CPU). Ai tempi di 286 e 386 si parlava di coprocessore, ma l’utilità (e il costo irrisorio aggiuntivo) hanno ormai fatto integrare questo componente in tutti i processori moderni. Il dettaglio sembra piccolo, e che limiti i danni, peccato che moltissimi calcoli siano demandati all’FPU, compreso criptazioni e codifiche/decodifiche: danni limitati proprio alla parte più sensibile.

Al momento l’attacco sembra specifico delle CPU Intel, ma non è ancora dato sapere esattamente quali modelli né quanto sia difficile attuarlo. Tutto perduto, quindi?
No, perché da qualche anno i processori dispongono di una nuova istruzione (XSAVEOPT) per memorizzare lo stato dei registri che non si comporta pigramente, e i kernel moderni usano questa funzionalità di default: vale per RHEL/CentOS 7, Ubuntu 16.04, in genere dal kernel 4.9. Perfino Windows 10 è già coperto.
Per chi invece usasse un kernel più antico, dal kernel 3.7 è disponibile l’opzione al boot “eagerfpu=on”, che disattiva l’ottimizzazione problematica.

Per questo giro, forse, possiamo stare tranquilli.

Intel compie 50 anni

Facebooktwittergoogle_plusredditlinkedin

Attraverso questo video Intel ha voluto dare il via alle celebrazioni per il suo cinquantesimo compleanno:

Già, perché l’azienda fondata, tra gli altri, da Gordon Moore iniziò la sua avventura del 1968, precisamente il 18 luglio, ma le celebrazioni sono già iniziate.

Il primo prodotto, distribuito a partire dal 1969, fu il 3101, ossia una RAM statica (static random access memory) il cui principale obiettivo voleva essere quello di creare qualcosa di nuovo, non limitandosi a replicare quanto disponibile sul mercato su tutti gli aspetti: tecnologie impiegate, materiali di costruzione ed approccio al prodotto.

Il risultato delle vendite, e quindi l’azzardo, fu sensibile per il futuro della compagnia che da quel momento cominciò la sua ascesa.

Quando nel 1965 lo stesso Moore formulò la sua “legge” fu facile capire nel giro di dieci anni quanto questa fosse accurata: secondo quanto predetto, nel 1975 un microchip di ultima generazione avrebbe dovuto essere in grado di contenere 65.000 transistor, ed il conteggio effettivo fu alla fine di 65.536. Sostanzialmente, ed esageratamente, preciso.

Nel corso della storia la legge è stata parzialmente rivista, proprio perché trattandosi di una legge esponenziale ci sono dei limiti fisici per cui questa non può continuare a dimostrarsi vera, ma i microchip continueranno ad evolversi ad un ritmo vertiginoso, c’è da scommettere su questo.

Intel, pur dovendo combattere con Meldown e Spectre, continuerà ad essere l’azienda principe di questa tecnologia? È tutto da vedere, dipenderà da quanto dello spirito degli esordi sarà parte dei futuri processi produttivi. L’era della fine del silicio è dietro la porta, le CPU a tre dimensioni saranno il futuro, i chip quantici, c’è tutto un futuro da scoprire.

Fino ad allora, tanti auguri Intel!

 

Intel distribuisce CPU a 10nm

Facebooktwittergoogle_plusredditlinkedin

Qualche tempo fa abbiamo parlato di IBM e della sua messa a punto di un processo di produzione industriale a 5nm (nanometri, miliardesimi di metro), ma facciamo un riassunto: la dimensione indicata è quella del singolo transistor all’interno di un chip (una CPU oggi ne conta dai 2 miliardi dell’i7 serie 5000 ai 19 miliardi dell’AMD Epyc), quindi minore è questa dimensione, maggiore è il numero di transistor che possono stare nello stesso spazio (oppure maggiore sarà il numero di chip che si potranno produrre con la stessa quantità di silicio).

Non solo, minore è la dimensione del transistor, maggiore sarà la frequenza di clock che questo sarà in grado di sopportare (con migliori prestazioni), nonché minore sarà l’energia consumata per le stesse attività. In effetti, l’aumento di potenza di calcolo (e il rispetto della famosa legge di Moore) sono dirette conseguenze dei miglioramenti di questo aspetto produttivo.

Al momento Intel ha in catalogo CPU a 14nm, ma sono attese da molto tempo le CPU a 10nm: erano state annunciate per il 2015, ma le difficoltà produttive e le difficoltà finanziare (complice Meltdown) avevano rimandato fino al 2019. Un articolo di ArsTechnica però ci svela che non solo queste CPU sono già in produzione, ma addirittura in distribuzione – e specificamente a Lenovo. L’articolo si concentra sulle caratteristiche del tipo di processore (i3), del codice (8121, quindi ottava generazione), della serie (U, basso voltaggio) ed il fatto che sia il primo con microarchitettura Cannon Lake. Ad interessare maggiormente in ogni caso è il fatto che questo processore sia il primo con tecnologia a 10nm, e significa che il passaggio dalla produzione a 14nm si è già verificato.

Alcuni indizi indicano che questa produzione sia una specie di prova generale, come il fatto che un i3 (fascia bassa) è meno complesso di un i5 (fascia media) o di un i7 (fascia alta), quindi sono tollerabili maggiori difetti di produzione. Anche il fatto che non ci sono accenni ad una scheda grafica integrata farebbe pensare a difetti tanto frequenti da preferire di disattivare permanentemente questo componente. Inoltre, la distribuzione ad un solo cliente (per quanto importante) potrebbe essere una scelta obbligata per una produzione ancora in piccola scala.

Allo stesso tempo questa notizia ci permette di sperare che l’applicazione di questa tecnologia produttiva sia a breve termine applicabile per i5 ed i7, o anche per il mercato server: la nuova generazione. Dalla quale ci si aspetta anche la risoluzione definitiva di Meltdown e Spectre…

Intel introduce AI builders program, una via d’accesso semplificata all’intelligenza artificiale

Facebooktwittergoogle_plusredditlinkedin

Nell’ambito della conferenza O’Reilly dedicata all’AI (Artificial Intelligence), svoltasi a New York il primo maggio, Intel ha lanciato l’AI Builders Program, un progetto proposto ai partner e dedicato all’implementazione dell’intelligenza artificiale mediante le tecnologie Intel.

Il progetto viene proposto a tutti i partner: produttori software indipendenti, system integrators e quanti creano equipaggiamento AI e fornisce accesso consistente alle tecnologie AI di Intel, abilitando e supportando l’accesso alla Intel AI Academy, l’accesso alla Intel AI DevCloud e la promozione tramite canali internet Intel.

Certo non si tratta dell’annuncio della creazione di una community open-source, in quanto l’ecosistema è e rimarrà parte di Intel stessa, ma sapere che facendo parte di questo programma renderà possibile accedere alle pubblicazioni della rete AI di Intel: architetture di riferimento, whitepapers, progetti e presentazioni di soluzioni.

Un buon trampolino per chiunque voglia dedicarsi allo studio dell’AI quindi.

Pronti a battere il record di volo contemporaneo di Droni? Dovete superare quota 1500!

Spectre next generation: rivelate otto nuove vulnerabilità nei processori Intel

Facebooktwittergoogle_plusredditlinkedin

I toni sono piuttosto catastrofici, ma purtroppo lo si sapeva già, o quantomeno ce lo si aspettava: altre falle di tipo Spectre sono state esposte. Sembrerebbero addirittura otto le nuove falle scoperte ed evidenziate da Heise, una rivista tedesca di computer, in questo articolo. Intel ha assegnato la categoria “high” a quattro di queste e quella “medium” alle altre quattro. Il risultato per l’utente finale? C’è poco da stare allegri e soprattutto c’è da prepararsi ad un nuovo giro di update che presto o tardi colpirà tutti.

I piani di Intel sono quelli di rilasciare le patch per questi problemi in due trance: la prima a maggio 2018 (quindi, uhm, oggi), la seconda ad agosto 2018.

Quindi, in attesa di tutto questo, facciamo un piccolo punto della situazione: è possibile conoscere lo stato del proprio sistema in merito a Meltdown e Spectre mediante il filesystem virtuale /sys. È sufficiente lanciare questo comando:

grep . /sys/devices/system/cpu/vulnerabilities/*
/sys/devices/system/cpu/vulnerabilities/meltdown:Mitigation: PTI
/sys/devices/system/cpu/vulnerabilities/spectre_v1:Mitigation: __user pointer sanitization
/sys/devices/system/cpu/vulnerabilities/spectre_v2:Mitigation: Full generic retpoline, IBPB, IBRS_FW

L’output del comando è stato copiato da un sistema Fedora 27, aggiornata alle ultime patch disponibili, ma lo stesso può essere utilizzato su qualsiasi sistema Linux aggiornato per capire il livello di (in)sicurezza a cui si è sottoposti. Da notare come nel caso illustrato Spectre v2 venga attenuato da retpoline.

Più giù di così non si può? No, non ancora, anche se è facile presumere cosa c’è dietro l’angolo: nuovi falle saranno scoperte e nuovi giri di patch saranno necessari. Il che significa davvero un’enorme mole di lavoro per chi gestisce i datacenter e la sicurezza in generale.

Rimbocchiamoci le maniche!