У процесорів Intel та AMD виявили серйозну вразливість: використовуючи недоліки чіпів зловмисники можуть отримати доступ до даних (паролі, номера карток, рахунки) користувача.
3 січня, коли в новорічних новинних стрічках ще йшли повідомлення про найвищі ялинки і найкрасивіші подарунки, в блозі Project Zero з'явилося повідомлення про те, що виявлені вразливості Spectre і Meltdown. Про групу Project Zero відомо тільки те, що це підрозділ Google, який шукає вразливості в чужих, не гугловських продуктах. Уразливості в програмах знаходяться щодня, уразливості бувають у браузерів, месенджерів, операційних систем, до них випускаються «патчі», або заплатки, і це рутина. Але тут мова йшла про те, що виявлені діри в процесорах.
Серце системи, джерело її життя - ось що таке процесор. Недарма його називають «камінь». На цьому камені стоїть весь хай-тек, весь комп'ютерний світ. І не тільки комп'ютерний. На надійності і потужності процесора заснована сучасна людська цивілізація безмежних контактів і вільних потоків інформації. ОС, програми, протоколи, інтерфейси живуть тільки тому, що під ними, в глибині комп'ютера, працює процесор. Без нього немає нічого.
Колективний геній тисяч інженерів спресований в маленькому кремнієвому прямокутнику, геній, що кожен день і годину знаходить рішення, що дозволяють прискорити роботу процесора і комп'ютера. Одним з таких рішень була випереджувальна робота процесора, який не чекає рішень користувача, а передбачає їх, закидаючи в певні області своєї пам'яті дані, які може запросити користувач. Якщо процесор не вгадав і дані не знадобилися, то відбувається відкат назад, інструкції скасовуються, процесор переходить до виконання правильних інструкцій. Тут, в цьому механізмі, який виробники процесорів використовують багато років, і відкрилася діра.
Дані, запитані процесором, як виявилося, скидаються не завжди. Вони залишаються в кеші процесора. Уразливість
Meltdown дозволяє отримати доступ до пам'яті комп'ютера, в тому числі до пам'яті ядра процесора. Уразливість
Spectre відкриває доступ до пам'яті програм. Це - найкоротший, найпростіший і навіть примітивний опис ситуації, яка повністю викладена на 32 сторінках двох інженерно-наукових статей, написаних комп'ютерними гуру вищого розряду, які працюють в університетах Пенсільванії, Меріленда, Аделаїди, Граца, а також в компаніях Rambus і Cyberus.
Міхаель Шварц з Технологічного університету Граца зробив відео, в якому демонструє атаку Meltdown, в результаті якої Шварц двома кліками миші краде пароль. На це йде 13 секунд.
Що означає виявлена вразливість процесорів
Отже, ми оточували себе стінами, кували броню, зводили загородження, будували редути, а деякі маніяки, навіть вручну перебирали файл config браузера Firefox, щоб закрити в ньому всі дірки - і тепер виявляється, що все це нісенітниця і даремно, тому що внизу, під браузером, під програмами, під ОС, зяє і шкіриться діра, через яку будь-хто може витягнути з комп'ютера що завгодно.
Це катастрофа, але ми тут навіть ще не почали описувати її масштаби і наслідки. Тому що важко собі їх уявити. Діра в серці системи! Всі ми раптом, в одну мить, стали голими. Нас можна обікрасти в будь-який момент. Як ще це пояснити? Маленькі дверцята в задній стіні, через яку будь-хто може увійти в ваш будинок і потягти з нього що завгодно зі швидкості 2000 байт в секунду. На такій швидкості працює прототип Meltdown, створений в лабораторії. Невисока швидкість, але її цілком вистачить, щоб забрати всі ваші паролі і всю вашу особисту переписку.
Це кошмар і обвал. Уразливості є у всіх процесорах Intel, випущених з 1995 року, за винятком Intel Itanium і Intel Atom, випущених до 2013 року. Процесори AMD схильні тільки до уразливості Spectre.
Під ударом все, абсолютно все комп'ютери: настільні, ноутбуки, нетбуки, планшети, але ще і смартфони, тому що в них стоять процесори ARM, а вони теж схильні до атак через Meltdown і Spectre. Мільярди пристроїв, які стоять у нас на столах, які ми тримаємо в руках і носимо в кишенях, з якими ми лягаємо в ліжко, щоб почитати перед сном, і в які ми дивимося, тільки-но прокинувшись, щоб дізнатися новини і час - всі вони виявилися збитковими, у всіх них є дірка, через яку може дивитися - чи вже дивиться? - око спостерігача і шарить рука в гумових рукавичках.
Справа ще в тому, що у випадку з Meltdown і Spectre ми не можемо знати, що за нами стежать і нас грабують. Ви сидите за комп'ютером, листуючись в чаті, а в цей час хтось безликий шарить у вас під клавіатурою. Але ви цього ніколи не дізнаєтеся, тому що ніяких слідів в log-файлах не залишається.
Віртуальні машини, якими ми так пишалися, ставлячи їх на наші комп'ютери, виявляються мильною бульбашкою, тому що солодка парочка гадів Meltdown і Spectre роблять можливим проникнення з однієї віртуальної машини в іншу, а також в хост-машину.
Які дії вживаються
З кожною годиною збільшується список компаній, які випускають заяви з приводу катастрофи. Intel, AMD, ARM, Microsoft, Google, Apple, Amazon, VMWare, Ubuntu, Mozilla і так далі - всі вони попереджають і пропонують в спішному порядку зроблені патчі. Але жоден патч не закриває дірки повністю. Рятівного рішення немає.
І тепер все виглядає по-іншому, не так, як виглядало чотири дні тому, в останній день минулого року. Тепер по-іншому виглядають дивні люди, які запитували, а навіщо потрібна гонка за тактовою частотою, яка призводить до обваження й ускладнення софту, що, в свою чергу, знову приводить до гонки процесорів? Адже старого Пентиума і Windows XP цілком достатньо для життя і роботи, не кажучи вже про Core 2 і Убунту.
Але якби всі ми залишилися на старих, десятиліттями справно працюючих комп'ютерах, то як би тоді могла існувати економіка безперервних продажів і нестримного споживання? Тепер по-іншому виглядає оброслий, бородатий, безглуздий товстун Столмен, який закликав не користуватися процесорами Intel новіше, ніж Core 2, тому що в них є навмисне зроблена дірка, яку неможливо закрити. Так, але чим же нам тоді користуватися, дорогий гуру Столмен? Де взяти процесор без дірки?
Є китайський процесор Longson, але немає ніяких гарантій, що і він не має задніх дверей для спостерігача і відкрите для шмону ядро.
У шаленому темпі, працюючи в новорічні свята, інженери створюють патчі, але проблема в тому, що латати доводиться процесор, а це схоже на операцію на серці.
Досконалого рішення немає, вихід не найдено. Випущені заплатки знижують продуктивність процесора на 30%. Новітнє, вчора куплене залізо таким чином перетворюється в мотлох п'ятирічної давності.
Який сенс тоді в нових комп'ютерах, які безперервним потоком, переможно сяючи цифрами приголомшливою тактової частоти, йдуть з конвеєра і стоять в магазинах? Всі вони, вже випущені, і ті, які будуть випущені - діряві машини.
Ми будемо слідкувати за розвитком подій та шляхами вирішення цієї проблеми, слідкуйте за новинами на сайті.