А что не так? По твитам ниже - нефиг пользоваться линупсами. Зачем эти говноеды замапили всю физическую память - одному т-су известно.
Ну и цитата из документика: the direct-physical map starts at address 0xffff 8800 0000 0000 and linearly maps the entire physical memory. Этот же адрес виден в первом твите с анимированой гифкой.
Я только читать умею. Написать что-то условно большое - уже нет. Слишком много нужно для этого знать чтобы написать эффективный код, тот же компилятор справится с этим намного лучше. И x86 процессоры (да и не только они) штука достаточно простая логически, особенно если не лезть слишком глубоко в кишки. Вот держать в голове какую-то высокоуровневую стековую машину (тот же дотнет или флеш) мне кажется намного сложнее. Даже с листиком слишком много писанины выходит по отслеживанию состояния.
Уязвимость живёт в железе почти 10 лет, и тут её ВНЕЗАПНО в один и тот же сжатый промежуток времени обнаруживает несколько исследователей из США. Независимо друг от друга.
И лечить её можно, только вот костыль, экая незадача, откатит текущие серверные процессоры по производительности на пару поколений назад. Но следующие процессоры, ясное дело, всё это поправят. Просто надо обновить всё - от amd64-систем и ARM до аж IBM POWER. А то ишь, некоторые вот тут вот апгрейдиться переста... ой, палюсь.
пол года это не сжатый промежуток. Плюс вполне вероятно что раньше фича не проявлялась ибо процессоры/память были медленнее. Там ведь главное успеть выполнить всю загрузку до того как процессор проведёт проверку прав доступа.
По общему хайпу, выглядит так, будто кто-то из Amazon либо Microsoft внезапно понял (возможно были не особо разглашаемые случаи успешного применения?), что эта штука, применённая в облаке, позволяет "читать" адресное пространство другой виртуалки на том же железном хосте. Ведь префетчинг, кэшлайны, спекулятивное исполнение - они ведь афаик не знают ничего про эти наши виртуалки. Так что спекулятивное выполнение обеих веток кода "if (cpu_time_quantum_ended) {switch to process of another VM} else {stay in this VM}" вполне возможно. А в облаках сейчас хостятся все подряд, включая например банки...
Meltdown не позволяет читать адресное пространство за пределами виртуального адресного пространства текущего процесса, поэтому он не работает в случае с виртуалками. Майкам в этом плане нечего переживать. Но он работает в случае PV (xen и прочие). Да и я сомневаюсь в ральности атак на другие виртуалки. Все текущие атаки основаны на том что есть контролируемое влияние и возможность получать отклик. Как влиять на фактически чужую машину, пусть и виртуальную - не совсем понятно.
Comments 16
Reply
(The comment has been removed)
Ну и цитата из документика: the direct-physical map starts at address 0xffff 8800 0000 0000 and linearly maps the entire physical memory. Этот же адрес виден в первом твите с анимированой гифкой.
Reply
Reply
Reply
Угу, тока есть дыры в сложности предсказаний. )
Олсо, мап физической памяти в процесс имеет смысл для быстродействия (zero-copy shared memory). Задумайся, например, почему DPDK нет для винды.
Reply
И лечить её можно, только вот костыль, экая незадача, откатит текущие серверные процессоры по производительности на пару поколений назад. Но следующие процессоры, ясное дело, всё это поправят. Просто надо обновить всё - от amd64-систем и ARM до аж IBM POWER. А то ишь, некоторые вот тут вот апгрейдиться переста... ой, палюсь.
Reply
Но теории заговора они такие теории...
Reply
Reply
Reply
Leave a comment