Експертите по информационна безопасност разкриха сериозна уязвимост в процесорите, която изглежда ще направи безсмислена софтуерната защита на компютрите. Уязвимостта е на хардуерно ниво, почти не зависи от архитектурата на процесора и от операционната система.

Уязвимостта е част от принципа на работа на блока за управлението на паметта, който е елемент на много процесори, работеща по такъв начин, че дава възможност за заобикаляне на защитата Address Space Layout Randomization (ASLR).

ASLR е критично важна система за защита, използвана във всички съвременни операционни системи: Windows, Linux, macOS, Android и BSD. Накратко, ASLR е механизъм за защита на паметта, който по случен начин избира мястото за изпълнение на програмата в паметта на компютъра. По този начин сериозно се усложнява зареждането на компютърни вируси в конкретни области на паметта, затруднява се използването на препълване на буфера, както и много други подобни бъгове.

Групата програмисти от Амстердамския свободен университет, известна като VUsec, създаде нов метод за атакуване, който разбива ASLR защитата в процесорите на Intel, AMD, ARM, Allwinner, Nvidia (общо 22 архитектури).

Атаката бе наречена ASLR Cache или AnC е твърде опасана, понеже за нейното осъществяване е необходим единствено несложен JavaScript код. Той идентифицира адресите в паметта, в които се намират системните компоненти и приложенията. По този начин всеки компютър може да се зарази дори само ако посети хакерски или заразен сайт:

Уязвимостта се състои в начина на комуникиране на процесора с паметта. Блокът за управление на паметта, който е наличен във всички съвременни процесори, разпределящ по случаен начин секторите памет, постоянно проверява таблицата на страниците, за да следи разпределянето на паметта.

За повишаване скоростта и ефективността на компютрите, тази таблица на страниците обикновено се съхранява в кеша на процесора. Но част от този кеш е достъпна и за непроверени приложения, включително и за браузърите.

По този начин, въпросният JS код, стартиран в браузъра, също има достъп до кеша на процесора и дава възможност да се разбере местоположението на системните компоненти във виртуалната памет. Използвайки тези данни, хакерите могат да прочетат и обединят данните от различните участъци памет. В съчетание със съвременните експлойти, получаването на пълния контрол върху компютърната система е сравнително лесно.

Експертите демонстрираха успешни атаки в последните версии на браузърите Chrome и Firefox, работещи на процесори с 22 различни архитектури и различни операционни системи.

VUsec още преди три месеца е съобщила за уязвимостта на Intel, AMD, Samsung, Nvidia, Microsoft, Apple, Google и Mozilla, а тази седмица реши да съобщи публично за нея.

Засега, единственият начин за защита от AnC е изключването на JavaScript в браузърите.

12 КОМЕНТАРА

  1. преди известно време флаш плеъра бе нападнат и оплют щото товарел много цпу и имал дупки… към даденият момент обаче не излезе нищо качествено, което да го замести. Потвърди се приказката, че като са ти заврени ръцете в *** и не можеш да пишеш код, ще ок***ш с каквото се захванеш. Отделно, че преди няколко години гугъл се опита да въведе некъв стандарт но … не се получи. Общо взето – всичко върви на по-зле…

  2. Пич, коментара ти е неадекватен както и ти самия.Според статия проблема е на хардуерно ниво „proof of concept“ кода е написан на javascript за удобство предполагам, можеше да е на всеки друг език.

    • Пич, „всеки друг език“ не може да се изпълни от браузъра и да ти „завземе компа“. Критикувах липсата на стандарт по който да се водят всички, както и тоталната липса на професионализъм, който кара по някога сайтове да зареждат тонове шитни, не виждам какво лошо има в това…

      • Kaк да няма стандарт? HTML 5. CSS 3. Tва всичкото са стандарти.
        А това, кой как си прави сайтовете, това е друга бира.
        Както каза човекът по-горе, проблемът е от архитектурно естество за всеки един модерен процесор. Нито езикът, на който ще напишеш кода, има значение, нито операционната система. И въпросните стандарти нямат значение в тая ситуация 😀

        • За js няма стандарт, не се измъквай 🙂 Говорим за различни неща явно, не споря, че не може да се напише на друг език, но трябва да го стартираш по някакъв начин.. (пр. невнимателен потребител). Критикувах липсата на сътрудничество м-у майкрософт, мозила и гугъл които имаха златен шанс да направят нещо, което е от полза за всички..

  3. Прав си, явно съм пропуснал няколко годинки от развитието му. Но относно дискусията ми се струва ,че говорим за различни неща. Това не променя факта, че js може да се ползва за лошо… 🙂

    • Използва се Javascript, защото се изпълнява от браузър, който може да свали и изпълни този скрипт от който и да е сайт. Може да се напише на друг език и да се вкара в което и да е приложение, което има достъп до кеша на процесора. Потребителят, обаче трябва да си го инсталира сам. Очевидно е, че използвайки браузър и Javascript code е най-ефективният начин да се заразят повече машини. Затова и хората го демонстрират по този начин. Коментарът ти за JS няма връзка с темата.

  4. Вече много браузъри махнаха опцията за изключване на JavaScript – преди беше дастъпно с едно кликване на мишката.
    Сега излиза, че изключването му е ЕДИНСТВЕННО решение.
    Няма уеб сайт който да не зависи от JavaScript – ако го изключим нищо почти няма да работи.

    Изглежда проблема е супер голям особенно като е на хардуерно ниво.
    Сега след като експлойта е публично известен на ход са всички хакери и терористи – надявам се да се измисли нещо преди да атакуват нещо сериозно.

    • Може би трябва да се преправят браузърите да не позволяват достъп на JS код до кеша на паметта. Ще го забави, но поне ще работи.

  5. Е то си има плъгини за цялостно изключване на JS в браузърите. Лошото е че повечето саитове са отварят със скрипт (предполагам да се затрудни идентифицирането на рекламата) та в повечето случаи нищо няма да се вижда, но пък и уязвимостта си е сериозна.

ДОБАВИ КОМЕНТАР

Напишете вашия коментар!
Моля въведете вашето име