Обновление 02 марта 2018 г.: вышел пакет обновлений для Astra Linux Special Edition, закрывающий данные уязвимости.
Разработчики из Google Project Zero опубликовали детали двух уязвимостей, которые получили кодовые имена Meltdown и Spectre. Процессоры Intel и ARM64 подвержены обеим проблемам, AMD затрагивает только вторая уязвимость. Для демонстрации атак подготовлены работающие прототипы эксплоитов, в том числе реализация на JavaScript, работающая в браузере.
Уязвимость Meltdown (CVE-2017-5754) позволяет приложению прочитать содержимое любой области память компьютера, включая память ядра и других пользователей. Проблема также позволяет получить доступ к чужой памяти в системах виртуализации и контейнерной изоляции, например, пользователь одной виртуальной машины может получить содержимое памяти хост-системы и других виртуальных машин. Уютный видосик:
Уязвимость Spectre (CVE-2017-5753, CVE-2017-5715) создаёт брешь в механизме изоляции памяти приложений и позволяет атакующему получить данные чужого приложения (только приложения, но не памяти ядра). Этой атаке подвержены процессоры Intel, AMD (только при включенном eBPF в ядре) и ARM64. По сравнению с Meltdown уязвимость существенно труднее в эксплуатации, но её и значительно труднее исправить.
Как проверить
Исходники для Meltdown (Windows) лежат на pastebin, для Линукс есть репозиторий на Гитхабе.
Для Spectre на Гитхабе.
Исправления
Для Линукс уже есть патчи (PTI), народ рапортует о результатах:
Выключен PTI
dd if=/dev/zero of=testfile bs=512 count=5000000 5000000+0 records in 5000000+0 records out 2560000000 bytes (2.6 GB, 2.4 GiB) copied, 2.34906 s, 1.1 GB/s
Включен PTI
dd if=/dev/zero of=testfile bs=512 count=5000000 5000000+0 records in 5000000+0 records out 2560000000 bytes (2.6 GB, 2.4 GiB) copied, 4.91892 s, 520 MB/s
В /tmp который tmpfs.
С Новым Годом!