
Prova de conceito / Exploit / verifica se o sistema é afetado pela Variante 3: rogue data cache load (CVE-2017-5754), a.k.a

Prova-de-conceito /
Exploit /
Verifica se o sistema é afetado pela Variante 3: carga de cache de dados desonesta (CVE-2017-5754), também conhecida como MELTDOWN.
A ideia básica é que o usuário saberá se o sistema em execução está devidamente corrigido com algo como o conjunto de patches KAISER (https://lkml.org/lkml/2017/10/31/884), por exemplo.
*** Funciona apenas no Linux por enquanto ***
Funciona usando /proc/kallsyms para encontrar a tabela de chamadas do sistema e verifica se o endereço de uma chamada de sistema encontrada explorando o MELTDOWN corresponde ao respectivo endereço em /proc/kallsyms.
Isso ocorre porque seu sistema pode estar impedindo o programa de ler símbolos do kernel em /proc/kallsyms devido a /proc/sys/kernel/kptr_restrict definido como 1. O seguinte comando resolverá:
sudo sh -c "echo 0 > /proc/sys/kernel/kptr_restrict"
Por favor, abra uma issue se você tiver uma ideia de como fazer fallback para outra abordagem neste cenário.
Execute make para compilar o projeto

Checking whether system is affected by Variant 3: rogue data cache load (CVE-2017-5754), a.k.a MELTDOWN ...
Checking syscall table (sys_call_table) found at address 0xffffffffaea001c0 ...
0xc4c4c4c4c4c4c4c4 -> That's unknown
0xffffffffae251e10 -> That's SyS_write
System affected! Please consider upgrading your kernel to one that is patched with KAISER
Check https://security.googleblog.com/2018/01/todays-cpu-vulnerability-what-you-need.html for more details