Friday, August 30, 2013

Thoughts on Intel's upcoming Software Guard Extensions (Part 1)

Intel Software Guard Extensions (SGX) might very well be The Next Big Thing coming to our industry, since cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 introduction of Intel VT-d, VT-x, and TXT technologies in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 previous decade. It apparently seem to promise what so far has never been possible – an ability to create a secure enclave within a potentially compromised OS. It sounds just too great, so I decided to take a closer look and share some early thoughts on this technology.

Intel SGX – secure enclaves within untrusted world!

Intel SGX is an upcoming technology, and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re is very little public documents about it at cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 moment. In fact cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 only public papers and presentations about SGX can be found in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 agenda of one security workshop that took place some two months ago. The three papers from Intel engineers presented cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re provide a reasonably good technical introduction to those new processor extensions.

You might think about SGX as of a next generation of Intel TXT – a technology that has never really took off, and which has had a long history of security problems disclosed by certain team of researchers ;) Intel TXT has also been perhaps cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 most misunderstood technology from Intel – in fact many people thought about TXT as if it already could provide security enclaves within untrusted OS – this however was not really true (even ignoring for our multiple attacks) and I have spoke and wrote many times about that in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 past years.

It's not clear to me when SGX will make it to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 CPUs that we could buy in local shops around cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 corner. I would be assuming we're talking about 3-5 years from now, because cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 SGX is not even described in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Intel SDM at this moment.

Intel SGX is essentially a new mode of execution on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 CPU, a new memory protection semantic, plus a couple of new instructions to manage this all. So, you create an enclave by filling its protected pages with desired code, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n you lock it down, measure cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 code cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re, and if everything's fine, you ask cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 processor to start executing cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 code inside cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 enclave. Since now on, no entity, including cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 kernel (ring 0) or hypervisor (ring “-1”), or SMM (ring “-2”) or AMT (ring “-3”), has no right to read nor write cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 memory pages belonging to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 enclave. Simple as that!

Why have we had to wait so long for such technology? Ok, it's not really that simple, because we need some form of attestation or sealing to make sure that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 enclave was really loaded with good code.

The cool thing about an SGX enclave is that it can coexist (and so, co-execute) togecá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r with ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r code, such all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 untrusted OS code. There is no need to stop or pause cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 main OS, and boot into a new stub mini-OS, like it was with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 TXT (this is what e.g. Flicker tried to do, and which was very clumsy). Additionally, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re can be multiple enclaves, mutually untrusted, all executing at cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 same time.

No more stinkin' TPMs nor BIOSes to trust!

A nice surprise is that SGX infrastructure no longer depends on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 TPM to do measurements, sealing and attestation. Instead Intel has a special enclave that essentially emulates cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 TPM. This is a smart move, and doesn't decrease security in my opinion. It surely makes us now trust only Intel vs. trusting Intel plus some-asian-TPM-vendor. While it might sound like a good idea to spread cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 trust between two or more vendors, this only really makes sense if cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 relation between trusting those vendors is expressed as “AND”, while in this case cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 relation is, unfortunately of “OR” type – if cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 private EK key gets leaked from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 TPM manufacture, we can bypass any remote attestation, and no longer we need any failure on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Intel's side. Similarly, if Intel was to have a backdoor in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir processors, this would be just enough to sabotage all our security, even if cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 TPM manufacture was decent and played fair.

Because of this, it's generally good that SGX allows us to shrink cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 number of entities we need to trust down to just one: Intel processor (which, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se days include cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 CPUs as well as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 memory controller, and, often, also a GPU). Just to remind – today, even with a sophisticated operating system architecture like those we use in Qubes OS, which is designed with decomposition and minimizing trust in mind, we still need to trust cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 BIOS and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 TPM, in addition to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 processor.

And, of course, because SGX enclaves memories are protected against any ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r processor mode's access, so SMM backdoor no longer can compromise our protected code (in contrast to TXT, where SMM can subvert a TXT-loaded hypervisor), nor any ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r entity, such as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 infamous AMT, or malicious GPU, should be able to do that.

So, this is all very good. However...

Secure Input and Output (for Humans)

For any piece of code to be somehow useful, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re must be a secure way to interact with it. In case of servers, this could be implemented by e.g. including cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 SSL endpoint inside cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 protected enclave. However for most applications that run on a client system, ability to interact with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user via screen and keyboard is a must. So, one of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 most important questions is how does Intel SGX secures output to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 screen from an SGX enclave, as well as how does it ensure that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 input cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 enclave gets is indeed cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 input cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user intended?

Interestingly, this subject is not very thoroughly discussed in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Intel papers mentioned above. In fact only one paper briefly mentions Intel Protected Audio Video Path (PVAP) technology that apparently could be used to provide secured output to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 screen. The paper cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n references... a consumer FAQ onBlueRay Disc Playback using Intel HD graphics. There is no furcá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r technical details and I was also unable to find any technical document from Intel about this technology. Additionally this same paper admits that, as of now, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re is no protected input technology available, even on prototype level, although cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y promise to work on that in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 future.

This might not sound very surprising – after all one doesn't need to be a genius to figure out that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 main driving force behind this whole SGX thing is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 DRM, and specifically protecting Holywwod media against cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 pirate industry. This would be nothing wrong in itself, assuming, however, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 technology could also have some ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r usages, that could really improve security of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user (in contrast to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 security of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 media companies).

We shall remember that all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 secrets, keys, tokens, and smart-cards, are ultimately to allow cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user to access some information. And how does people access information? By viewing in on a computer screen. I know, I know, this so retro, but until we have direct PC-brain interfaces, I'm afraid that's cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 only way. Without properly securing cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 graphics output, all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 secrets can be ultimately leaked out.

Also, how people command cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir computers and applications? Well, again using this retro thing called keyboard and mouse (touchpad). However secure our enclave might be, without secured input, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 app would not be able to distinguish intended user input from simulated input crafted by malware. Not to mention about such obvious attacks as sniffing of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user input.

Without protected input and output, SGX might be able to stop cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 malware from stealing cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user's private keys for email encryption or issuing bank transactions, yet cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 malware will still be able to command this super-secured software to e.g. decrypt all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user emails and later steal cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 screenshots of all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 plaintext messages (with a bit of simple programming, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 screenshot's could be turned back into nice ASCII text for saving on bandwidth when leaking cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m out to a server in Hong Kong), or better yet, perhaps just forward cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m to an email address that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attacker controls (perhaps still encrypted, but using cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attackers key).

But, let's ignore for a moment this “little issue” of lack of protected input, and lack of technical documentation on how secure graphics output is really implemented. Surely it is thinkable that protected input and output could be implemented in a number of ways, and so let's hope Intel will do it, and will do right. We should remember here, that whatever mechanism Intel is going to use to secure cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 graphics and audio output, it surely will be an attractive target of attacks, as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re is probably a huge money incentive for such attacks in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 film illegal copying business.

Securing mainstream client OSes and why this is not so simple?

As mentioned above, for SGX enclaves to be truly meaningful on client systems we need protected input and output, to and from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 secured enclaves. Anyway, lets assume for now that Intel has come up with robust mechanisms to provide cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se. Let's now consider furcá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r, how SGX could be used to turn our current mainstream desktop systems into reasonably secure bastions.

We start with a simple scenario – a dedicated application for viewing of incoming encrypted files, say PDFs, performing cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir decryption and signature verification., and displaying of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 final outcome to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user (via protected graphics path). The application takes care about all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 key management too. All this happens, of coruse, inside an SGX enclave(s).

Now, this sounds all attractive and surely could be implemented using cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 SGX. But what about if we wanted our secure document viewer to become a bit more than just a viewer? What if we wanted a secure version of MS Word or Excel, with its full ability to open complex documents and edit cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m?

Well it's obviously not enough to just put cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 proverbial msword.exe into a SGX enclave. It is not, because cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 msword.exe makes use of million of ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r things that are provided by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 OS and 3rd libraries, in order to perform all sorts of tasks it is supposed to do. It is not a straightforward decision to draw a line between those parts that are security sensitive and those that are not. Is font parsing security critical? Is drawing proper labels on GUI buttons and menu lists security critical? Is rendering of various objects that are part of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 (decrypted) document, such as pictures, security critical? Is spellchecking security critical? Even if cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 function of some of a subsystem seem not security critical (i.e. not allows to easily leak cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 plaintext document out of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 enclave), let's not forget that all this 3rd party code would be interacting very closely with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 enclave-contained code. This means cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attack surface exposed to all those untrusted 3rd party modules will be racá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r huge. And we already know it is racá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r not possible to write a renderer for such complex documents as PDFs, DOCs, XLS, etc, without introducing tons of exploitable bugs. And cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se attack are not coming now from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 potentially malicious documents (against those we protect, somehow, by parsing only signed document from trusted peers), but are coming from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 compromised OS.

Perhaps it would be possible to take Adobe Reader, MS Word, Powerpoint, Excel etc, and just rewrite every of those apps from scratch in a way that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y were properly decomposed into sensitive parts that execute within SGC enclave(s), and those that are not-sensitive and make use of all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 OS-provided functionality, and furcá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r define clean and simple interfaces between those parts, ensuring cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 “dirty” code cannot exploit cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 sensitive code. Somehow attractive, but somehow I don't see this happening anytime soon.

But, perhaps, it would be easier to do something different – just take cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 whole msword.exe, all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 DLLs it depends on, as well as all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 OS subsystems it depends on, such as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 GUI subsystem, and put all of this into an enclave. This sounds like a more rational approach, and also more secure.

Only notice one thing – we just created... a Virtual Machine with Windows OS inside and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 msword.exe that uses this Windows OS.. Sure, it is not a VT-x-based VM, it is an SGX-based VM now, but it is largely cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 same animal!

Again, we came to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 conclusion why cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 use of VMs is suddenly perceived as such an increase in security (which some people cannot get, claiming that introducing VM-layer only increases complexity) – cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 use of VMs is profitable because of one of thing: it suddenly packs all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 fat libraries- and OS-exposed APIs and subsystems into one security domain, reducing all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 interfaces between this code in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 VM and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 outside world. Reducing of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 interfaces between two security domains is ALWAYS desirable.

But our SGX-isolated VMs have one significant advantage over cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r VM technologies we got used to in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 last decade or so – namely those VMs can now be impenetrable to any ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r entity outside of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 VM. No kernel or hypervisor can peek into its memory. Neicá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r can cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 SMM, AMT, or even a determined physical attacker with DRAM emulator, because SGX automatically encrypts any data that leave cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 processor, so everything that is in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 DRAM is encrypted and useless to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 physical attacker.

This is a significant achievement. Of course SGX, strictly speaking, is not a (full) virtualization technology, it's not going to replace VT-x.. But remember we don't always need full virtualization, like VT-x, often we can use paravirtualization and all we need in that case is a good isolation technology. For examaple, Xen uses paravirtualization for Linux-based PV VMs, and uses good-old ring3/ring0 separation mechanism to implement this, and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 level of isolation of such PV domains on Xen is comparable to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 isolation of HVMs, which are virtualized using VT-x.

To Be Continued

In cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 next part of this article, we will look into some interesting unconventional uses of SGX, such as creating malware that cannot be reversed engineered, or TOR nodes or Bitcoin mixers that should be reasonably trusted, even if we don't trust cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir operators. Then we will discuss how SGX might profoundly change cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 architecture of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 future operating systems, and virtualization systems, in a way that we will no longer need to trust (large portions of) cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir kernels or hypervisors, or system admins (Anti Snowden Protection?) And, of course, how our Qubes OS might embrace this technology in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 future.

Finally, we should discuss cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 important issue of whecá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r this whole SGX, while providing many great benefits for system architects, should really be blindly trusted? What are cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 chances of Intel building in backdoors cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re and exposing those to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 NSA? Is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re any difference in trusting Intel processors today vs. trusting cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 SGX as a basis of security model of all software in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 future?