gkaindl / meltdown-poc Goto Github PK
View Code? Open in Web Editor NEWA quick PoC to try out the "meltdown" timing attack.
A quick PoC to try out the "meltdown" timing attack.
Any idea? I'm just getting random noise.
I don't have any machines with TSX :(
the TEST_PHRASE is in your own process address space, and can be read.
So the TEST_IN_OWN_PROCESS will work without problem.
But if you change TEST_PHRASE to some address witch can't read, the result will be noise.
I use mmap and mprotect make address can't read, then It will not work.
#if TEST_IN_OWN_PROCESS
static char* test = NULL;
int n = strlen(TEST_PHRASE);
test = (uint8_t *) mmap(NULL, n, PROT_READ|PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
memcpy(test, TEST_PHRASE, n);
// make array not readable.
mprotect(test, n, PROT_NONE);
start_addr = (unsigned long)test;
#else
......
$ sudo ./meltdown
poke buffer: 0x103041000, page size: 4096
Why no hex dump printed then?
$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.9.2
Has anyone managed to get this working on Ubuntu or Debian outside of it's own process? I can read inside the calling process no problem, but if I point it anywhere else I get garbage.
On
rs$ sysctl -n machdep.cpu.brand_string
Intel(R) Core(TM) M-5Y31 CPU @ 0.90GHz
and
rs$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.13.2
BuildVersion: 17C88
i got
rs$ ./meltdown 0x0 10
poke buffer: 0x10f3c6000, page size: 4096
Illegal instruction: 4
It seems like M-5Y31 doesn't support TSX?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.