Spectre — уразливість у модулях передбачення переходів сучасних мікропроцесорів з технологією спекулятивного виконання команд, яка дозволяє зловмисникам отримати несанкційований доступ до віртуальної пам'яті інших процесів. Відомо щонайменше два методи реалізації цієї вразливості, які отримали коди CVE-2017-5753 [ 11 січня 2018 у Wayback Machine.] та CVE-2017-5715 [ 11 січня 2018 у Wayback Machine.].
Уразливість Spectre була виявлена та задокументована декількома групами дослідників, зокрема: Яном Хорном з Google Project Zero та Полом Кохером у співпраці з низкою дослідників з різних установ.
Згодом було встановлено, що розкриті спочатку два способи реалізації цієї уразливості є лише окремими представниками цілого сімейства подібних атак із використанням витоків інформації через сторонні канали.
Значення
Станом на 2018 рік уразливості сімейства Spectre наявні майже в усіх сучасних мікропроцесорах, зокрема, у десктопах, ноутбуках, смартфонах, тощо. Були створені та успішно здійснені демонстраційні атаки на мікропроцесорах виробництва Intel, AMD, та сімейства ARM.
Уразливість також була виявлена і підтверджена в процесорах IBM Power: Power7+, Power8 та Power9, Fujitsu та . Існують відомості, що уразливість вдалось відтворити в мікропроцесорах Power6, хоча в них конвеєр виконує команди за чергою, але спекулятивно.
Уразливість була виявлена в мікропроцесорах MIPS P5600 та P6600.
Уразливість мікропроцесорів сімейства ARM залежить від конкретної версії архітектури та реалізації ядра конкретним виробником. Відомо та підтверджено наявність уразливості в мікропроцесорах з ядрами: , , , , Cortex-A15, , Cortex-A57, , Cortex-A73 та . В той же час деякі смартфони і комп'ютери з простішими (часто дешевшими) варіантами, в яких відсутня суперскалярність, не мають цієї вразливості. Наприклад, всі варіанти Raspberry Pi не уражені ані Meltdown, ані Spectre.
Станом на початок 2018 року вдалось створити атаки із використанням уразливості Spectre між процесами рівня користувача.
Реалізація вразливості Spectre набагато складніша за Meltdown, але й захиститись від неї важче.
Крім того, Spectre може становити більшу загрозу хмарним обчисленням, оскільки, на відміну від Meltdown, може спонукати гіпервізор передавати дані гостьовій системі.
Однак найбільшу загрозу для звичайних користувачів становить варіант CVE-2017-5753 (доступ за межі масиву), який може бути реалізований скриптами JavaScript та призводити до викрадення даних із веббраузера. Проте і захист від нього найпростіший, без помітної втрати швидкодії і вимагає лише оновлення веббраузера.
В квітні 2021 року компанія AMD повідомила, що її фахівці виявили уразливість подібну до Spectre v4 в підсистемі Predictive Store Forwarding (PSF) мікропроцесорів архітектури Zen 3. На їхню думку ця уразливість не становить небезпеки для більшості користувачів, а за бажання її можна вимкнути налаштуваннями процесора.
Алгоритм реалізації
Уразливість Spectre та пов'язана з нею уразливість Meltdown (CVE-2017-5754) покладаються на вади реалізації механізмів спекулятивного виконання в сучасних мікропроцесорах.
Заради підвищення швидкодії програм сучасні мікропроцесори можуть виконувати деякі інструкції поза чергою, спираючись на певні припущення. Під час спекулятивного виконання процесор перевіряє припущення і якщо вони виявляються вірними, то виконання продовжується далі. Якщо ж вони виявилися хибними, то процес виконання зупиняється й відбувається повернення до вірної послідовності інструкцій. Однак, у деяких випадках спекулятивне виконання може мати сторонні ефекти, які не усуваються під час повернення до нормальної послідовності інструкцій, що може призводити до витоку даних (так звані сторонні канали інформації).
Наприклад, якщо виконання програми залежить від даних у загальній пам'яті, процесор може зробити певні припущення про подальший перебіг подій і заради економії декількох сотень циклів перемістити ці дані в кеш процесора наперед. Якщо припущення були невірними, загальна швидкість виконання програми виявляється такою самою, якби процесор виконував інструкції за їхньою чергою та простоював при звертаннях до оперативної пам'яті. Проте, якщо припущення були вірними, виконання програми істотно прискорюється завдяки ефективнішому використанню ресурсів системи. Оскільки замість простоїв корисна робота процесора не припиняється.
З погляду інформаційної безпеки спекулятивність може призводити до некоректного виконання програми. Інженери раніше вважали що, оскільки за невірних припущень процесор автоматично повертається до коректного стану, ці помилки не становлять загрози.
Уразливість Spectre основана на тому, аби примусити процесор спекулятивно виконати такі послідовності інструкцій, які було би неможливо виконати за коректної роботи програми. Дослідники назвали такі інструкції перехідними (англ. transient instructions). Шляхом правильного підбору перехідних інструкцій зловмисник здатен створити виток із пам'яті жертви через сторонній канал.
Уразливість Spectre має два можливі алгоритми реалізації:
- шляхом введення в оману модуля передбачення переходів, аби той спекулятивно виконав захищений код жертви зі стороннім каналом. Цей варіант діє між процесами та навіть між гіперпотоками в межах одного мікропроцесора й може бути використаний для атаки проти ядра операційної системи чи гіпервізора віртуальної машини. Ця вразливість має код CVE-2017-5715.
- введення в оману мікропроцесора для спекулятивного завантаження даних за межами масиву. Цей варіант діє в межах одного процесу. Ця уразливість має код CVE-2017-5753.
Читання за межами масиву (CVE-2017-5753)
Уразливість CVE-2017-5753 є спрощеним варіантом Meltdown (або навпаки, Meltdown є розвиненим варіантом даної уразливості).
Уразливість CVE-2017-5753 основана на введенні в оману модуля передбачення переходів аби змусити його спекулятивно зчитати дані за межами масиву. У результаті, зловмисник здатен зчитати всі дані в межах одного процесу (на відміну від Meltdown без виходу у зони з вищим рівнем захисту). Дослідники назвали цей варіант уразливості англ. Exploiting Conditional Branch Misprediction — атака з використанням невірного передбачення умовного переходу.
Для успішної реалізації цієї вразливості зловмисник має примусити жертву виконати спеціальну послідовність інструкцій у просторі атакованого процесу. Це можуть бути або вже наявні в коді атакованого процесу інструкції, або ж атакований процес може виконувати інструкції зловмисника у JiT-компіляторі.
Дослідникам вдалось показати приклади успішної атаки із використанням цієї вразливості проти ядра Linux через систему eBPF, а також на сучасні веббраузери, які виконують сценарії JavaScript у рушіях з JiT-компіляцією. Крім того, була представлена проста програма-демонстратор написана мовою C, яка зчитує «приховані» дані в межах власного процесу.
Атака з використанням цієї вразливості була показана на основі функції, сторонній ефект у якій створено таким кодом:
if (x < array1_size) y = array2[array1[x] * 256];
Умовний перехід гарантує, що звернення до array1 буде завжди коректним й не виходитиме за межі масиву. Тим не менш, при спекулятивному виконанні команд мікропроцесор може виконати ці інструкції в конвеєрі, залишивши сторонній канал у вигляді кешованих фрагментів масиву array2. У цьому прикладі значення змінної x визначає адресу в пам'яті, яку прагне зчитати зловмисник (зі зсувом від адреси масиву array1). Значення комірки пам'яті за адресою array1 + x буде відновлено на основі інформації про кешований фрагмент масиву array2.
Маніпуляція модулем передбачення переходів (CVE-2017-5715)
Дослідниками також був представлена інша уразливість, так звана англ. Branch Target Injection (BTI) або англ. Poisoning Indirect Branches — маніпуляція непрямими переходами. Уразливість розміщена в модулі передбачення переходів і може бути використана для атаки між процесами різного рівня.
На відміну від прямого, при непрямому переході адреса переходу наперед не відома, а має бути отримана з регістра, комірки пам'яті чи обчислена в якийсь інший спосіб. Якщо отримання адреси для переходу потребуватиме істотного часу, то модуль передбачення переходів може вирішити спекулятивно виконати перехід за невірною адресою. Зловмисник здатен підлаштувати модуль передбачення переходів так, що адресу переходу для спекулятивного виконання визначатиме він. Таким чином, буде спекулятивно виконано інструкції, які ніколи б не були виконані за нормальних умов. Така ситуація створює істотну вразливість, якщо спекулятивне виконання цих інструкцій залишає помітні сторонні ефекти (наприклад, варіації часу виконання залежно від параметра, який задає зловмисник).
Інші варіанти
Група дослідників з Прінстонського університету і компанії NVIDIA в лютому 2018 відкрили нові способи атак з використанням цих вразливостей. Вони отримали назви MeltdownPrime і SpectrePrime відповідно, від уже відомих методів відрізняються іншим способом відтворення інформації з процесорного кешу.
Обидві атаки побудовані на роботі з двома ядрами багатоядерного процесора і використовують особливості роботи протоколу узгодження вмісту кешу для різних ядер CPU (Invalidation-Based Coherence Protocol). Якщо в уже відомих атаках сторонніми каналами служило відновлення вмісту кешу на основі техніки FLUSH + RELOAD, то в нових застосований метод «Prime and Probe».
Однак поточні програмні латки, що випускаються виробниками, забезпечують захист і від нових атак.
Захист
Ризики
Оскільки Spectre являє собою ціле сімейство вразливостей, єдиного способу захисту, імовірно, знайдено не буде. Проте, було розроблено механізми захисту (латки операційних систем, веббраузерів, оновлення мікрокоду мікропроцесорів, тощо) від відомих конкретних атак в яких використано цю вразливість.
На відміну від Meltdown, уразливості сімейства Spectre потребують не лише латок програмного забезпечення, але й мікропроцесорів.
Розробники операційних систем, прикладного програмного забезпечення випустили оновлення своїх продуктів, що мають захистити або зменшити ризик успішної атаки з використанням цих уразливостей. Деякі виробники мікропроцесорів також випустили оновлені версії мікрокоду, покликані або захистити від відомих варіантів реалізації, або ж зменшити ризик успішної атаки.
Для успішного використання уразливості зловмисник має виконати свій код на комп'ютері жертви. Таким чином найбільшу небезпеку уразливості Spectre становлять для постачальників хмарних обчислень, коли на одному фізичному комп'ютері можуть водночас працювати декілька віртуальних машин різних клієнтів. Звичайним користувачам найбільшу небезпеку може представляти варіант CVE-2017-5753 (доступ за межі масиву), який може бути реалізований скриптами JavaScript у веббраузері.
Якщо зловмисник буде здатен примусити жертву завантажити свій скрипт JavaScript (чи то так званий , чи то відвіданням сайту, тощо), то він отримає можливість зчитати збережені паролі або іншу приватну інформацію, що зберігається в браузері.
Проте, як виявилось, від варіанту CVE-2017-5753 найпростіше захиститись із майже непомітними наслідками для швидкодії. Відповідні оновлення для своїх веб браузерів уже підготували розробники Mozilla Firefox та WebKit (рушій, яким користується Chromium, сучасні версії Opera, тощо).
На початку лютого 2018 року компанія AV-Test повідомила, що нею зафіксовано 140 різних вірусів та зразків шкідливого програмного забезпечення, в якому було використано вразливості Spectre та Meltdown. Проте, досі не було зрозуміло, як широко поширені дані зразки в реальному світі.
Латки програмного забезпечення
Розробники сімейства компіляторів GCC додали механізм в релізи версії 8 та новіше. Через велике значення цих латок їх було також застосовано і до релізу версії 7.3
Розробники компанії Microsoft запропонували нову версію компілятора з новою опцією /Qspectre, яка додає в компільовані програми захист від уразливості Spectre варіант «Читання за межами масиву» (англ. Bounds Check Bypass, CVE-2017-5753). Якщо дана опція увімкнута, компілятор під час компіляції шукає потенційно вразливі фрагменти коду та додає інструкцію, що виконує функцію бар'єра для спекулятивного виконання команд. Для x86-сумісних мікропроцесорів (Intel та AMD) це інструкція lfence, для ARM — csdb. Таким чином, при компіляції такого коду:
if (untrusted_index < array1_length) { // спекулятивний доступ до елементів масиву unsigned char value = array1[untrusted_index]; // використати ці спекулятивно отримані дані аби // змінити стан кешу процесора unsigned char value2 = array2[value * 64]; }
компілятор додає бар'єр спекулятивного виконання на початку тіла циклу, фактично, генеруючи код:
if (untrusted_index < array1_length) { // переконатись, що процесор спочатку перевірить // умову, і лише тоді звертатиметься за даними speculation_barrier(); // ці інструкції вже не будуть виконуватись // спекулятивно unsigned char value = array1[untrusted_index]; unsigned char value2 = array2[value * 64]; }
Недоліком такого підходу є істотне падіння швидкодії програм. Слід звернути увагу на те, що насправді захисту потребують лише ті частини коду, в яких зловмисник може задати індекс елемента в масиві. Компілятор, попри реалізовані евристичні правила, відокремити такі фрагменти не здатен, тому він може додавати захист навіть там, де він зайвий.
У червні 2018 року проект OpenBSD повідомив про рішення учасників проекту вимикати функції Hyper-threading при роботі цієї операційної системи на мікропроцесорах виробництва Intel.
Проте, група дослідників компанії Google дійшла висновку, що лише програмними заходами повністю захиститись від витоків інформації через сторонні канали при спекулятивному виконанні програм неможливо, а відмова від спекулятивного виконання недоцільна з точки зору ефективності роботи мікропроцесорів.
Латки процесорів
Невдовзі після оприлюднення інформації про уразливості розробники операційних систем і виробники мікропроцесорів почали випускати оновлення з латками. Проте у деяких випадках оновлення спричиняли іще більше проблем. Так, наприклад, оновлення мікрокоду випущені Intel спричиняли випадкові перезавантаження системи. Тому 23 січня компанія порадила відтермінувати оновлення мікрокоду для систем на мікропроцесорах сімейства , Haswell, , , Skylake і Ivy Bridge. Сервери на багатьох моделях Xeon і Ivy Bridge також мали цю проблему.
Компанії Intel та AMD мають намір додати три нові інструкції: Branch Restricted Speculation (IBRS), Single Thread Indirect Branch Predictors (STIBP) та Indirect Branch Predictor Barrier (IBPB) до набору інструкцій своїх мікропроцесорів. Нові інструкції будуть додані шляхом завантаження оновлень мікрокоду для процесорів Intel виробництва 2013 року і новіше, а також в нових процесорах AMD. Інформація про ці інструкції оприлюднена в документі з ідентифікатором 336996-001.
Латки для нових мікропроцесорів ARM64 Qualcomm Centriq 2400 (Falkor) та Cavium ThunderX2 будуть додані в нових релізах ядра Лінукс.
Компанія AMD, натомість, стверджує, що реалізація атаки сімейства Spectre CVE-2017-5715 (Branch Target Injection/BTI) надзвичайно ускладнена на мікропроцесорах її виробництва. Тому компанія має великий сумнів у потребі щось виправляти. Проте, заради збереження сумісності будуть випущені латки, в яких буде додано підтримку інструкцій . Також компанія оприлюднила докладну доповідь про уразливості Spectre у її процесорах.
Подальші дослідження
Spectre NG
3 травня 2018 року журнал [de] оприлюднив інформацію про виявлення сімейства з восьми уразливостей в процесорах Intel, що отримали загальну назву Spectre NG (англ. New Generation — нове покоління).
За повідомленням журналу, уразливостям було виділено блок номерів у базі даних CVE, і 7 травня 2018 року мало бути оголошено їх назви. Компанія Intel у прес-релізі не заперечувала наведені факти, і рекомендувала користувачам вчасно встановлювати оновлення програмного забезпечення.
За даними видання c't одна з уразливостей істотно спрощує атаку на основну систему з боку гостьової. Вона навіть дозволяє одній гостьовій системі атакувати іншу гостьову систему, що працює на тій же фізичній машині. Усі вісім уразливостей ґрунтуються на тих самих прорахунках у дизайні процесорів, що й Spectre 1 и 2, а також Meltdown. .
Станом на 12 липня 2018 року було відомо про чотири з восьми уразливостей, що були раніше об'єднані спільною назвою «Specrte NG»:
- CVE-2018-3640, робоча назва англ. Rogue System Register Read, Variant 3a
- CVE-2018-3639 [ 25 червня 2018 у Wayback Machine.], робоча назва англ. Speculative Store Bypass, Variant 4
- CVE-2018-3665 [ 25 червня 2018 у Wayback Machine.], також відома як
- CVE-2018-3693 [ 12 липня 2018 у Wayback Machine.], робоча назва англ. Bounds Check Bypass Store (або Spectre 1.1)
Spoiler
1 березня 2019 року була оприлюднена наукова доповідь про уразливість, яку назвали SPOILER. І хоча формально вона не є варіантом уразливостей сімейства Spectre, вона використовує вади в реалізації модуля таблиць пам'яті у всіх сучасних мікропроцесорах фірми Intel, починаючи з Intel Core. Цю уразливість не було виявлено в мікропроцесорах фірми AMD або сімейства ARM.
Уразливість дозволяє істотно пришвидшити атаку .
CacheOut
В січні 2020 року стало відомо про відкриття чергового варіанту атаки на сучасні мікропроцесори виробництва Intel (окрім виготовлених після четвертого кварталу 2019 року). Варіант отримав неформальну назву «CacheOut» та формальний ідентифікатор CVE-2020-0549/INTEL-SA-00329. Цей варіант використовує комбінацію вибіркового дослідження мікроархітектурного стану (англ. Microarchitectural Data Samping, MDS) мікропроцесора та примусового скасування транзакції в оперативній пам'яті (англ. Transactional Asynchronous Abort, TAA; див. транзакційна пам'ять).
У випадку успішного застосування зловмисник може отримати доступ до даних інших процесів, віртуальних машин, подолати захист ASLR, а також зламати захист системи Intel SGX.
Примітки
- Greenberg, Andy (3 січня 2018). . Wired (magazine). Архів оригіналу за 3 січня 2018. Процитовано 3 січня 2018.
- Staff (2018). . . Архів оригіналу за 3 січня 2018. Процитовано 3 січня 2018.
- Metz, Cade; Perlroth, Nicole (3 січня 2018). . The New York Times (амер.). ISSN 0362-4331. Архів оригіналу за 3 січня 2018. Процитовано 3 січня 2018.
- Warren, Tom (3 січня 2018). . The Verge. Архів оригіналу за 3 січня 2018. Процитовано 3 січня 2018.
- Bright, Peter (23 лютого 2019). . Ars Technica. Архів оригіналу за 3 березня 2019. Процитовано 4 березня 2019.
- Staff (2018). . (англ.). Архів оригіналу за 3 січня 2018. Процитовано 4 січня 2018.
- Busvine, Douglas; Nellis, Stephen (3 січня 2018). . Reuters. Thomson-Reuters. Архів оригіналу за 3 січня 2018. Процитовано 3 січня 2018.
- Christof Windeck (11 січня 2018). . Heise online. Архів оригіналу за 11 січня 2018. Процитовано 11 січня 2018.
- Christof Windeck (29 січня 2018). . Heise Security. Архів оригіналу за 29 січня 2018. Процитовано 29 січня 2018.
- . ARM Developer. ARM Ltd. 3 січня 2018. Архів оригіналу за 4 квітня 2018. Процитовано 5 січня 2018.
- Eben Upton (5 січня 2018). . Raspberry Pi Blog. Архів оригіналу за 9 квітня 2021. Процитовано 12 січня 2018.
- Fox-Brewster, Thomas (3 січня 2018). . Forbes. Forbes Media LLC. Архів оригіналу за 3 січня 2018. Процитовано 3 січня 2018.
- PETER BRIGHT (11 січня 2018). . Ars Technica. Архів оригіналу за 12 січня 2018. Процитовано 12 січня 2018.
- Zhiye Liu (5 квітня 2021). AMD's Zen 3 CPUs Are Susceptible To Spectre-Like Vulnerability. Tom's Hardware.
- Matt Linton, Pat Parseghian (3 січня 2018). . Google Security Blog. Архів оригіналу за 15 березня 2018. Процитовано 4 січня 2018.
- Paul Kocher, Daniel Genkin, Daniel Gruss, Werner Haas, Mike Hamburg, Moritz Lipp, Stefan Mangard, Thomas Prescher, Michael Schwarz, Yuval Yarom. (PDF). Архів оригіналу (PDF) за 3 січня 2018. Процитовано 4 січня 2018.
- Jann Horn (3 січня 2018). . Project Zero. Архів оригіналу за 1 жовтня 2019. Процитовано 15 січня 2018.
- . ITC.ua. 19 лютого 2018. Архів оригіналу за 21 лютого 2018. Процитовано 20 лютого 2018.
- Caroline Trippel, Daniel Lustig, Margaret Martonosi (11 лютого 2018). . Cornell University Library. arXiv:1802.03802. Архів оригіналу за 14 лютого 2018. Процитовано 21 лютого 2018.
- Fabian A. Scherschel (2 лютого 2018). . Heise online. Архів оригіналу за 5 лютого 2018. Процитовано 5 лютого 2018.
- . Phoronix. 16 січня 2018. Архів оригіналу за 8 лютого 2018. Процитовано 7 лютого 2018.
- Peter Bright (14 лютого 2018). . Ars Technica. Архів оригіналу за 15 лютого 2018. Процитовано 15 лютого 2018.
- Andrew Pardoe (15 лютого 2018). . Visual C++ Team Blog. Архів оригіналу за 16 лютого 2018. Процитовано 15 лютого 2018.
- Catalin Cimpanu (19 червня 2018). . Bleeping Computer. Архів оригіналу за 26 червня 2018. Процитовано 26 червня 2018.
- Mcilroy, Ross; Sevcik, Jaroslav; Tebbi, Tobias; Titzer, Ben L.; Verwaest, Toon (13 лютого 2019). . arXiv:1902.05178 [cs]. Архів оригіналу за 6 березня 2019. Процитовано 5 березня 2019.
- Владимир Скрипин (23 січня 2018). . ITC.ua. Архів оригіналу за 26 січня 2018. Процитовано 26 січня 2018.
- (PDF) (Звіт). 1.0. Intel. January 2018. Архів оригіналу (PDF) за 20 травня 2018. Процитовано 29 січня 2018.
- Christof Windeck (26 січня 2018). . Heise security. Архів оригіналу за 5 лютого 2018. Процитовано 5 лютого 2018.
- (PDF). AMD. Архів оригіналу (PDF) за 1 лютого 2018. Процитовано 5 лютого 2018.
- . c't (Heise online). Архів оригіналу за 5 травня 2018. Процитовано 4 травня 2018.(англ.)
- . Архів оригіналу за 5 травня 2018. Процитовано 4 травня 2018.(нім.)
- Патрик Белмер (04.05.2018 08:20). . [de] (російською) . Архів оригіналу за 4 травня 2018. Процитовано 7 березня 2018.
- . Архів оригіналу за 25 червня 2018.
- Catalin Cimpanu (11 липня 2018). . Bleeping Computer. Архів оригіналу за 16 липня 2018. Процитовано 12 липня 2018.
- Islam, Saad; Moghimi, Ahmad; Bruhns, Ida; Krebbel, Moritz; Gulmezoglu, Berk; Eisenbarth, Thomas; Sunar, Berk (1 березня 2019). . Архів оригіналу за 8 березня 2019. Процитовано 7 березня 2019.
- Claburn, Thomas (5 березня 2019). (англ.). The Register. Архів оригіналу за 7 березня 2019. Процитовано 7 березня 2019.
- . PC World. 27 січня 2020. Архів оригіналу за 27 січня 2020. Процитовано 28 січня 2020.
- . Intel. 27 січня 2020. Архів оригіналу за 28 січня 2020. Процитовано 28 січня 2020.
Див. також
Посилання
- US-CERT, Vulnerability Note VU#584653. CPU hardware vulnerable to side-channel attacks [ 4 січня 2018 у Wayback Machine.]
- Офіційний вебсайт створений для документації вразливості Spectre [ 3 січня 2018 у Wayback Machine.]
- Доповідь про вразливість Spectre [ 3 січня 2018 у Wayback Machine.]
- Доповідь Google Project Zero про виявлені вразливості [ 7 січня 2018 у Wayback Machine.]
Це незавершена стаття з інформаційної безпеки. Ви можете проєкту, виправивши або дописавши її. |
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Spectre urazlivist u modulyah peredbachennya perehodiv suchasnih mikroprocesoriv z tehnologiyeyu spekulyativnogo vikonannya komand yaka dozvolyaye zlovmisnikam otrimati nesankcijovanij dostup do virtualnoyi pam yati inshih procesiv Vidomo shonajmenshe dva metodi realizaciyi ciyeyi vrazlivosti yaki otrimali kodi CVE 2017 5753 11 sichnya 2018 u Wayback Machine ta CVE 2017 5715 11 sichnya 2018 u Wayback Machine Logotip stvorenij dlya poznachennya danoyi vrazlivosti Urazlivist Spectre bula viyavlena ta zadokumentovana dekilkoma grupami doslidnikiv zokrema Yanom Hornom z Google Project Zero ta Polom Koherom u spivpraci z nizkoyu doslidnikiv z riznih ustanov Zgodom bulo vstanovleno sho rozkriti spochatku dva sposobi realizaciyi ciyeyi urazlivosti ye lishe okremimi predstavnikami cilogo simejstva podibnih atak iz vikoristannyam vitokiv informaciyi cherez storonni kanali ZnachennyaStanom na 2018 rik urazlivosti simejstva Spectre nayavni majzhe v usih suchasnih mikroprocesorah zokrema u desktopah noutbukah smartfonah tosho Buli stvoreni ta uspishno zdijsneni demonstracijni ataki na mikroprocesorah virobnictva Intel AMD ta simejstva ARM Urazlivist takozh bula viyavlena i pidtverdzhena v procesorah IBM Power Power7 Power8 ta Power9 Fujitsu ta Isnuyut vidomosti sho urazlivist vdalos vidtvoriti v mikroprocesorah Power6 hocha v nih konveyer vikonuye komandi za chergoyu ale spekulyativno Urazlivist bula viyavlena v mikroprocesorah MIPS P5600 ta P6600 Urazlivist mikroprocesoriv simejstva ARM zalezhit vid konkretnoyi versiyi arhitekturi ta realizaciyi yadra konkretnim virobnikom Vidomo ta pidtverdzheno nayavnist urazlivosti v mikroprocesorah z yadrami Cortex A15 Cortex A57 Cortex A73 ta V toj zhe chas deyaki smartfoni i komp yuteri z prostishimi chasto deshevshimi variantami v yakih vidsutnya superskalyarnist ne mayut ciyeyi vrazlivosti Napriklad vsi varianti Raspberry Pi ne urazheni ani Meltdown ani Spectre Stanom na pochatok 2018 roku vdalos stvoriti ataki iz vikoristannyam urazlivosti Spectre mizh procesami rivnya koristuvacha Realizaciya vrazlivosti Spectre nabagato skladnisha za Meltdown ale j zahistitis vid neyi vazhche Krim togo Spectre mozhe stanoviti bilshu zagrozu hmarnim obchislennyam oskilki na vidminu vid Meltdown mozhe sponukati gipervizor peredavati dani gostovij sistemi Odnak najbilshu zagrozu dlya zvichajnih koristuvachiv stanovit variant CVE 2017 5753 dostup za mezhi masivu yakij mozhe buti realizovanij skriptami JavaScript ta prizvoditi do vikradennya danih iz vebbrauzera Prote i zahist vid nogo najprostishij bez pomitnoyi vtrati shvidkodiyi i vimagaye lishe onovlennya vebbrauzera V kvitni 2021 roku kompaniya AMD povidomila sho yiyi fahivci viyavili urazlivist podibnu do Spectre v4 v pidsistemi Predictive Store Forwarding PSF mikroprocesoriv arhitekturi Zen 3 Na yihnyu dumku cya urazlivist ne stanovit nebezpeki dlya bilshosti koristuvachiv a za bazhannya yiyi mozhna vimknuti nalashtuvannyami procesora Algoritm realizaciyiDiv takozh Cikl vikonannya instrukcij spekulyativne vikonannya konveyer komand modul peredbachennya perehodiv ta kesh procesora Urazlivist Spectre ta pov yazana z neyu urazlivist Meltdown CVE 2017 5754 pokladayutsya na vadi realizaciyi mehanizmiv spekulyativnogo vikonannya v suchasnih mikroprocesorah Zaradi pidvishennya shvidkodiyi program suchasni mikroprocesori mozhut vikonuvati deyaki instrukciyi poza chergoyu spirayuchis na pevni pripushennya Pid chas spekulyativnogo vikonannya procesor pereviryaye pripushennya i yaksho voni viyavlyayutsya virnimi to vikonannya prodovzhuyetsya dali Yaksho zh voni viyavilisya hibnimi to proces vikonannya zupinyayetsya j vidbuvayetsya povernennya do virnoyi poslidovnosti instrukcij Odnak u deyakih vipadkah spekulyativne vikonannya mozhe mati storonni efekti yaki ne usuvayutsya pid chas povernennya do normalnoyi poslidovnosti instrukcij sho mozhe prizvoditi do vitoku danih tak zvani storonni kanali informaciyi Napriklad yaksho vikonannya programi zalezhit vid danih u zagalnij pam yati procesor mozhe zrobiti pevni pripushennya pro podalshij perebig podij i zaradi ekonomiyi dekilkoh soten cikliv peremistiti ci dani v kesh procesora napered Yaksho pripushennya buli nevirnimi zagalna shvidkist vikonannya programi viyavlyayetsya takoyu samoyu yakbi procesor vikonuvav instrukciyi za yihnoyu chergoyu ta prostoyuvav pri zvertannyah do operativnoyi pam yati Prote yaksho pripushennya buli virnimi vikonannya programi istotno priskoryuyetsya zavdyaki efektivnishomu vikoristannyu resursiv sistemi Oskilki zamist prostoyiv korisna robota procesora ne pripinyayetsya Z poglyadu informacijnoyi bezpeki spekulyativnist mozhe prizvoditi do nekorektnogo vikonannya programi Inzheneri ranishe vvazhali sho oskilki za nevirnih pripushen procesor avtomatichno povertayetsya do korektnogo stanu ci pomilki ne stanovlyat zagrozi Urazlivist Spectre osnovana na tomu abi primusiti procesor spekulyativno vikonati taki poslidovnosti instrukcij yaki bulo bi nemozhlivo vikonati za korektnoyi roboti programi Doslidniki nazvali taki instrukciyi perehidnimi angl transient instructions Shlyahom pravilnogo pidboru perehidnih instrukcij zlovmisnik zdaten stvoriti vitok iz pam yati zhertvi cherez storonnij kanal Urazlivist Spectre maye dva mozhlivi algoritmi realizaciyi shlyahom vvedennya v omanu modulya peredbachennya perehodiv abi toj spekulyativno vikonav zahishenij kod zhertvi zi storonnim kanalom Cej variant diye mizh procesami ta navit mizh giperpotokami v mezhah odnogo mikroprocesora j mozhe buti vikoristanij dlya ataki proti yadra operacijnoyi sistemi chi gipervizora virtualnoyi mashini Cya vrazlivist maye kod CVE 2017 5715 vvedennya v omanu mikroprocesora dlya spekulyativnogo zavantazhennya danih za mezhami masivu Cej variant diye v mezhah odnogo procesu Cya urazlivist maye kod CVE 2017 5753 Chitannya za mezhami masivu CVE 2017 5753 Urazlivist CVE 2017 5753 ye sproshenim variantom Meltdown abo navpaki Meltdown ye rozvinenim variantom danoyi urazlivosti Urazlivist CVE 2017 5753 osnovana na vvedenni v omanu modulya peredbachennya perehodiv abi zmusiti jogo spekulyativno zchitati dani za mezhami masivu U rezultati zlovmisnik zdaten zchitati vsi dani v mezhah odnogo procesu na vidminu vid Meltdown bez vihodu u zoni z vishim rivnem zahistu Doslidniki nazvali cej variant urazlivosti angl Exploiting Conditional Branch Misprediction ataka z vikoristannyam nevirnogo peredbachennya umovnogo perehodu Dlya uspishnoyi realizaciyi ciyeyi vrazlivosti zlovmisnik maye primusiti zhertvu vikonati specialnu poslidovnist instrukcij u prostori atakovanogo procesu Ce mozhut buti abo vzhe nayavni v kodi atakovanogo procesu instrukciyi abo zh atakovanij proces mozhe vikonuvati instrukciyi zlovmisnika u JiT kompilyatori Doslidnikam vdalos pokazati prikladi uspishnoyi ataki iz vikoristannyam ciyeyi vrazlivosti proti yadra Linux cherez sistemu eBPF a takozh na suchasni vebbrauzeri yaki vikonuyut scenariyi JavaScript u rushiyah z JiT kompilyaciyeyu Krim togo bula predstavlena prosta programa demonstrator napisana movoyu C yaka zchituye prihovani dani v mezhah vlasnogo procesu Ataka z vikoristannyam ciyeyi vrazlivosti bula pokazana na osnovi funkciyi storonnij efekt u yakij stvoreno takim kodom if x lt array1 size y array2 array1 x 256 Umovnij perehid garantuye sho zvernennya do array1 bude zavzhdi korektnim j ne vihoditime za mezhi masivu Tim ne mensh pri spekulyativnomu vikonanni komand mikroprocesor mozhe vikonati ci instrukciyi v konveyeri zalishivshi storonnij kanal u viglyadi keshovanih fragmentiv masivu array2 U comu prikladi znachennya zminnoyi x viznachaye adresu v pam yati yaku pragne zchitati zlovmisnik zi zsuvom vid adresi masivu array1 Znachennya komirki pam yati za adresoyu array1 x bude vidnovleno na osnovi informaciyi pro keshovanij fragment masivu array2 Manipulyaciya modulem peredbachennya perehodiv CVE 2017 5715 Doslidnikami takozh buv predstavlena insha urazlivist tak zvana angl Branch Target Injection BTI abo angl Poisoning Indirect Branches manipulyaciya nepryamimi perehodami Urazlivist rozmishena v moduli peredbachennya perehodiv i mozhe buti vikoristana dlya ataki mizh procesami riznogo rivnya Na vidminu vid pryamogo pri nepryamomu perehodi adresa perehodu napered ne vidoma a maye buti otrimana z registra komirki pam yati chi obchislena v yakijs inshij sposib Yaksho otrimannya adresi dlya perehodu potrebuvatime istotnogo chasu to modul peredbachennya perehodiv mozhe virishiti spekulyativno vikonati perehid za nevirnoyu adresoyu Zlovmisnik zdaten pidlashtuvati modul peredbachennya perehodiv tak sho adresu perehodu dlya spekulyativnogo vikonannya viznachatime vin Takim chinom bude spekulyativno vikonano instrukciyi yaki nikoli b ne buli vikonani za normalnih umov Taka situaciya stvoryuye istotnu vrazlivist yaksho spekulyativne vikonannya cih instrukcij zalishaye pomitni storonni efekti napriklad variaciyi chasu vikonannya zalezhno vid parametra yakij zadaye zlovmisnik Inshi varianti Grupa doslidnikiv z Prinstonskogo universitetu i kompaniyi NVIDIA v lyutomu 2018 vidkrili novi sposobi atak z vikoristannyam cih vrazlivostej Voni otrimali nazvi MeltdownPrime i SpectrePrime vidpovidno vid uzhe vidomih metodiv vidriznyayutsya inshim sposobom vidtvorennya informaciyi z procesornogo keshu Obidvi ataki pobudovani na roboti z dvoma yadrami bagatoyadernogo procesora i vikoristovuyut osoblivosti roboti protokolu uzgodzhennya vmistu keshu dlya riznih yader CPU Invalidation Based Coherence Protocol Yaksho v uzhe vidomih atakah storonnimi kanalami sluzhilo vidnovlennya vmistu keshu na osnovi tehniki FLUSH RELOAD to v novih zastosovanij metod Prime and Probe Odnak potochni programni latki sho vipuskayutsya virobnikami zabezpechuyut zahist i vid novih atak ZahistRiziki Oskilki Spectre yavlyaye soboyu cile simejstvo vrazlivostej yedinogo sposobu zahistu imovirno znajdeno ne bude Prote bulo rozrobleno mehanizmi zahistu latki operacijnih sistem vebbrauzeriv onovlennya mikrokodu mikroprocesoriv tosho vid vidomih konkretnih atak v yakih vikoristano cyu vrazlivist Na vidminu vid Meltdown urazlivosti simejstva Spectre potrebuyut ne lishe latok programnogo zabezpechennya ale j mikroprocesoriv Rozrobniki operacijnih sistem prikladnogo programnogo zabezpechennya vipustili onovlennya svoyih produktiv sho mayut zahistiti abo zmenshiti rizik uspishnoyi ataki z vikoristannyam cih urazlivostej Deyaki virobniki mikroprocesoriv takozh vipustili onovleni versiyi mikrokodu poklikani abo zahistiti vid vidomih variantiv realizaciyi abo zh zmenshiti rizik uspishnoyi ataki Dlya uspishnogo vikoristannya urazlivosti zlovmisnik maye vikonati svij kod na komp yuteri zhertvi Takim chinom najbilshu nebezpeku urazlivosti Spectre stanovlyat dlya postachalnikiv hmarnih obchislen koli na odnomu fizichnomu komp yuteri mozhut vodnochas pracyuvati dekilka virtualnih mashin riznih kliyentiv Zvichajnim koristuvacham najbilshu nebezpeku mozhe predstavlyati variant CVE 2017 5753 dostup za mezhi masivu yakij mozhe buti realizovanij skriptami JavaScript u vebbrauzeri Yaksho zlovmisnik bude zdaten primusiti zhertvu zavantazhiti svij skript JavaScript chi to tak zvanij chi to vidvidannyam sajtu tosho to vin otrimaye mozhlivist zchitati zberezheni paroli abo inshu privatnu informaciyu sho zberigayetsya v brauzeri Prote yak viyavilos vid variantu CVE 2017 5753 najprostishe zahistitis iz majzhe nepomitnimi naslidkami dlya shvidkodiyi Vidpovidni onovlennya dlya svoyih veb brauzeriv uzhe pidgotuvali rozrobniki Mozilla Firefox ta WebKit rushij yakim koristuyetsya Chromium suchasni versiyi Opera tosho Na pochatku lyutogo 2018 roku kompaniya AV Test povidomila sho neyu zafiksovano 140 riznih virusiv ta zrazkiv shkidlivogo programnogo zabezpechennya v yakomu bulo vikoristano vrazlivosti Spectre ta Meltdown Prote dosi ne bulo zrozumilo yak shiroko poshireni dani zrazki v realnomu sviti Latki programnogo zabezpechennya Rozrobniki simejstva kompilyatoriv GCC dodali mehanizm v relizi versiyi 8 ta novishe Cherez velike znachennya cih latok yih bulo takozh zastosovano i do relizu versiyi 7 3 Rozrobniki kompaniyi Microsoft zaproponuvali novu versiyu kompilyatora MSVC z novoyu opciyeyu Qspectre yaka dodaye v kompilovani programi zahist vid urazlivosti Spectre variant Chitannya za mezhami masivu angl Bounds Check Bypass CVE 2017 5753 Yaksho dana opciya uvimknuta kompilyator pid chas kompilyaciyi shukaye potencijno vrazlivi fragmenti kodu ta dodaye instrukciyu sho vikonuye funkciyu bar yera dlya spekulyativnogo vikonannya komand Dlya x86 sumisnih mikroprocesoriv Intel ta AMD ce instrukciya lfence dlya ARM csdb Takim chinom pri kompilyaciyi takogo kodu if untrusted index lt array1 length spekulyativnij dostup do elementiv masivu unsigned char value array1 untrusted index vikoristati ci spekulyativno otrimani dani abi zminiti stan keshu procesora unsigned char value2 array2 value 64 kompilyator dodaye bar yer spekulyativnogo vikonannya na pochatku tila ciklu faktichno generuyuchi kod if untrusted index lt array1 length perekonatis sho procesor spochatku perevirit umovu i lishe todi zvertatimetsya za danimi speculation barrier ci instrukciyi vzhe ne budut vikonuvatis spekulyativno unsigned char value array1 untrusted index unsigned char value2 array2 value 64 Nedolikom takogo pidhodu ye istotne padinnya shvidkodiyi program Slid zvernuti uvagu na te sho naspravdi zahistu potrebuyut lishe ti chastini kodu v yakih zlovmisnik mozhe zadati indeks elementa v masivi Kompilyator popri realizovani evristichni pravila vidokremiti taki fragmenti ne zdaten tomu vin mozhe dodavati zahist navit tam de vin zajvij U chervni 2018 roku proekt OpenBSD povidomiv pro rishennya uchasnikiv proektu vimikati funkciyi Hyper threading pri roboti ciyeyi operacijnoyi sistemi na mikroprocesorah virobnictva Intel Prote grupa doslidnikiv kompaniyi Google dijshla visnovku sho lishe programnimi zahodami povnistyu zahistitis vid vitokiv informaciyi cherez storonni kanali pri spekulyativnomu vikonanni program nemozhlivo a vidmova vid spekulyativnogo vikonannya nedocilna z tochki zoru efektivnosti roboti mikroprocesoriv Latki procesoriv Nevdovzi pislya oprilyudnennya informaciyi pro urazlivosti rozrobniki operacijnih sistem i virobniki mikroprocesoriv pochali vipuskati onovlennya z latkami Prote u deyakih vipadkah onovlennya sprichinyali ishe bilshe problem Tak napriklad onovlennya mikrokodu vipusheni Intel sprichinyali vipadkovi perezavantazhennya sistemi Tomu 23 sichnya kompaniya poradila vidterminuvati onovlennya mikrokodu dlya sistem na mikroprocesorah simejstva Haswell Skylake i Ivy Bridge Serveri na bagatoh modelyah Xeon i Ivy Bridge takozh mali cyu problemu Kompaniyi Intel ta AMD mayut namir dodati tri novi instrukciyi Branch Restricted Speculation IBRS Single Thread Indirect Branch Predictors STIBP ta Indirect Branch Predictor Barrier IBPB do naboru instrukcij svoyih mikroprocesoriv Novi instrukciyi budut dodani shlyahom zavantazhennya onovlen mikrokodu dlya procesoriv Intel virobnictva 2013 roku i novishe a takozh v novih procesorah AMD Informaciya pro ci instrukciyi oprilyudnena v dokumenti z identifikatorom 336996 001 Latki dlya novih mikroprocesoriv ARM64 Qualcomm Centriq 2400 Falkor ta Cavium ThunderX2 budut dodani v novih relizah yadra Linuks Kompaniya AMD natomist stverdzhuye sho realizaciya ataki simejstva Spectre CVE 2017 5715 Branch Target Injection BTI nadzvichajno uskladnena na mikroprocesorah yiyi virobnictva Tomu kompaniya maye velikij sumniv u potrebi shos vipravlyati Prote zaradi zberezhennya sumisnosti budut vipusheni latki v yakih bude dodano pidtrimku instrukcij Takozh kompaniya oprilyudnila dokladnu dopovid pro urazlivosti Spectre u yiyi procesorah Podalshi doslidzhennyaSpectre NG 3 travnya 2018 roku zhurnal de oprilyudniv informaciyu pro viyavlennya simejstva z vosmi urazlivostej v procesorah Intel sho otrimali zagalnu nazvu Spectre NG angl New Generation nove pokolinnya Za povidomlennyam zhurnalu urazlivostyam bulo vidileno blok nomeriv u bazi danih CVE i 7 travnya 2018 roku malo buti ogolosheno yih nazvi Kompaniya Intel u pres relizi ne zaperechuvala navedeni fakti i rekomenduvala koristuvacham vchasno vstanovlyuvati onovlennya programnogo zabezpechennya Za danimi vidannya c t odna z urazlivostej istotno sproshuye ataku na osnovnu sistemu z boku gostovoyi Vona navit dozvolyaye odnij gostovij sistemi atakuvati inshu gostovu sistemu sho pracyuye na tij zhe fizichnij mashini Usi visim urazlivostej gruntuyutsya na tih samih prorahunkah u dizajni procesoriv sho j Spectre 1 i 2 a takozh Meltdown Stanom na 12 lipnya 2018 roku bulo vidomo pro chotiri z vosmi urazlivostej sho buli ranishe ob yednani spilnoyu nazvoyu Specrte NG CVE 2018 3640 robocha nazva angl Rogue System Register Read Variant 3a CVE 2018 3639 25 chervnya 2018 u Wayback Machine robocha nazva angl Speculative Store Bypass Variant 4 CVE 2018 3665 25 chervnya 2018 u Wayback Machine takozh vidoma yak CVE 2018 3693 12 lipnya 2018 u Wayback Machine robocha nazva angl Bounds Check Bypass Store abo Spectre 1 1 Spoiler 1 bereznya 2019 roku bula oprilyudnena naukova dopovid pro urazlivist yaku nazvali SPOILER I hocha formalno vona ne ye variantom urazlivostej simejstva Spectre vona vikoristovuye vadi v realizaciyi modulya tablic pam yati u vsih suchasnih mikroprocesorah firmi Intel pochinayuchi z Intel Core Cyu urazlivist ne bulo viyavleno v mikroprocesorah firmi AMD abo simejstva ARM Urazlivist dozvolyaye istotno prishvidshiti ataku CacheOut V sichni 2020 roku stalo vidomo pro vidkrittya chergovogo variantu ataki na suchasni mikroprocesori virobnictva Intel okrim vigotovlenih pislya chetvertogo kvartalu 2019 roku Variant otrimav neformalnu nazvu CacheOut ta formalnij identifikator CVE 2020 0549 INTEL SA 00329 Cej variant vikoristovuye kombinaciyu vibirkovogo doslidzhennya mikroarhitekturnogo stanu angl Microarchitectural Data Samping MDS mikroprocesora ta primusovogo skasuvannya tranzakciyi v operativnij pam yati angl Transactional Asynchronous Abort TAA div tranzakcijna pam yat U vipadku uspishnogo zastosuvannya zlovmisnik mozhe otrimati dostup do danih inshih procesiv virtualnih mashin podolati zahist ASLR a takozh zlamati zahist sistemi Intel SGX PrimitkiGreenberg Andy 3 sichnya 2018 Wired magazine Arhiv originalu za 3 sichnya 2018 Procitovano 3 sichnya 2018 Staff 2018 Arhiv originalu za 3 sichnya 2018 Procitovano 3 sichnya 2018 Metz Cade Perlroth Nicole 3 sichnya 2018 The New York Times amer ISSN 0362 4331 Arhiv originalu za 3 sichnya 2018 Procitovano 3 sichnya 2018 Warren Tom 3 sichnya 2018 The Verge Arhiv originalu za 3 sichnya 2018 Procitovano 3 sichnya 2018 Bright Peter 23 lyutogo 2019 Ars Technica Arhiv originalu za 3 bereznya 2019 Procitovano 4 bereznya 2019 Staff 2018 angl Arhiv originalu za 3 sichnya 2018 Procitovano 4 sichnya 2018 Busvine Douglas Nellis Stephen 3 sichnya 2018 Reuters Thomson Reuters Arhiv originalu za 3 sichnya 2018 Procitovano 3 sichnya 2018 Christof Windeck 11 sichnya 2018 Heise online Arhiv originalu za 11 sichnya 2018 Procitovano 11 sichnya 2018 Christof Windeck 29 sichnya 2018 Heise Security Arhiv originalu za 29 sichnya 2018 Procitovano 29 sichnya 2018 ARM Developer ARM Ltd 3 sichnya 2018 Arhiv originalu za 4 kvitnya 2018 Procitovano 5 sichnya 2018 Eben Upton 5 sichnya 2018 Raspberry Pi Blog Arhiv originalu za 9 kvitnya 2021 Procitovano 12 sichnya 2018 Fox Brewster Thomas 3 sichnya 2018 Forbes Forbes Media LLC Arhiv originalu za 3 sichnya 2018 Procitovano 3 sichnya 2018 PETER BRIGHT 11 sichnya 2018 Ars Technica Arhiv originalu za 12 sichnya 2018 Procitovano 12 sichnya 2018 Zhiye Liu 5 kvitnya 2021 AMD s Zen 3 CPUs Are Susceptible To Spectre Like Vulnerability Tom s Hardware Matt Linton Pat Parseghian 3 sichnya 2018 Google Security Blog Arhiv originalu za 15 bereznya 2018 Procitovano 4 sichnya 2018 Paul Kocher Daniel Genkin Daniel Gruss Werner Haas Mike Hamburg Moritz Lipp Stefan Mangard Thomas Prescher Michael Schwarz Yuval Yarom PDF Arhiv originalu PDF za 3 sichnya 2018 Procitovano 4 sichnya 2018 Jann Horn 3 sichnya 2018 Project Zero Arhiv originalu za 1 zhovtnya 2019 Procitovano 15 sichnya 2018 ITC ua 19 lyutogo 2018 Arhiv originalu za 21 lyutogo 2018 Procitovano 20 lyutogo 2018 Caroline Trippel Daniel Lustig Margaret Martonosi 11 lyutogo 2018 Cornell University Library arXiv 1802 03802 Arhiv originalu za 14 lyutogo 2018 Procitovano 21 lyutogo 2018 Fabian A Scherschel 2 lyutogo 2018 Heise online Arhiv originalu za 5 lyutogo 2018 Procitovano 5 lyutogo 2018 Phoronix 16 sichnya 2018 Arhiv originalu za 8 lyutogo 2018 Procitovano 7 lyutogo 2018 Peter Bright 14 lyutogo 2018 Ars Technica Arhiv originalu za 15 lyutogo 2018 Procitovano 15 lyutogo 2018 Andrew Pardoe 15 lyutogo 2018 Visual C Team Blog Arhiv originalu za 16 lyutogo 2018 Procitovano 15 lyutogo 2018 Catalin Cimpanu 19 chervnya 2018 Bleeping Computer Arhiv originalu za 26 chervnya 2018 Procitovano 26 chervnya 2018 Mcilroy Ross Sevcik Jaroslav Tebbi Tobias Titzer Ben L Verwaest Toon 13 lyutogo 2019 arXiv 1902 05178 cs Arhiv originalu za 6 bereznya 2019 Procitovano 5 bereznya 2019 Vladimir Skripin 23 sichnya 2018 ITC ua Arhiv originalu za 26 sichnya 2018 Procitovano 26 sichnya 2018 PDF Zvit 1 0 Intel January 2018 Arhiv originalu PDF za 20 travnya 2018 Procitovano 29 sichnya 2018 Christof Windeck 26 sichnya 2018 Heise security Arhiv originalu za 5 lyutogo 2018 Procitovano 5 lyutogo 2018 PDF AMD Arhiv originalu PDF za 1 lyutogo 2018 Procitovano 5 lyutogo 2018 c t Heise online Arhiv originalu za 5 travnya 2018 Procitovano 4 travnya 2018 angl Arhiv originalu za 5 travnya 2018 Procitovano 4 travnya 2018 nim Patrik Belmer 04 05 2018 08 20 de rosijskoyu Arhiv originalu za 4 travnya 2018 Procitovano 7 bereznya 2018 Arhiv originalu za 25 chervnya 2018 Catalin Cimpanu 11 lipnya 2018 Bleeping Computer Arhiv originalu za 16 lipnya 2018 Procitovano 12 lipnya 2018 Islam Saad Moghimi Ahmad Bruhns Ida Krebbel Moritz Gulmezoglu Berk Eisenbarth Thomas Sunar Berk 1 bereznya 2019 Arhiv originalu za 8 bereznya 2019 Procitovano 7 bereznya 2019 Claburn Thomas 5 bereznya 2019 angl The Register Arhiv originalu za 7 bereznya 2019 Procitovano 7 bereznya 2019 PC World 27 sichnya 2020 Arhiv originalu za 27 sichnya 2020 Procitovano 28 sichnya 2020 Intel 27 sichnya 2020 Arhiv originalu za 28 sichnya 2020 Procitovano 28 sichnya 2020 Div takozhAtaka storonnimi kanalami Meltdown urazlivist PosilannyaUS CERT Vulnerability Note VU 584653 CPU hardware vulnerable to side channel attacks 4 sichnya 2018 u Wayback Machine Oficijnij vebsajt stvorenij dlya dokumentaciyi vrazlivosti Spectre 3 sichnya 2018 u Wayback Machine Dopovid pro vrazlivist Spectre 3 sichnya 2018 u Wayback Machine Dopovid Google Project Zero pro viyavleni vrazlivosti 7 sichnya 2018 u Wayback Machine Ce nezavershena stattya z informacijnoyi bezpeki Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi