В Университете американского штата Мичиган разработана технология, способная оградить центральный процессор компьютера от выполнения кода, содержащего ошибки, а также предотвратить захват полномочий на компьютере или сервере злоумышленниками.
Сами разработчики называют технологию Семантический стражник. Технически она представляет собой небольшую систему мониторинга, работающую "поверх" микропроцессора, проверяя не просит ли код программы выполнить что-либо такое, что разработчики программы изначально не планировали выполнять.
Разработчики говорят, что программа работает на двух уровнях - физическом и логическом. На первом она способна предотвратить выполнения кода, ведущего к зависанию процессора, на втором предотвращаются логические уловки кода, которые приводят к различным переполнениям буфера, DoS-атакам и т п. Семантический стражник способен на лету выявлять такие неожиданные для оборудования состояния и замедлять работу процессора, переводя его в более изолированный и безопасный режим работы, чтобы возможность нежелательных действий сводилась к минимуму.
В Университете Мичигана говорят, что под "замедлением" они понимают приостановку некоторых циклов на доли секунды для тщательного анализа, однако пользователь такого замедления не заметит. По словам одного из разработчиков решения - Валерии Бертакко, в большинстве случаев такой подход позволяет спасти системы от краха и потери данных, которые еще не были записаны на жесткий диск или иное устройство постоянного хранения.
Сейчас Семантический стражник существует в виде программного эмулятора, однако в ближайшее время исследователи завершат проектирование чипа FPGA (field-programmable gate array), в котором будет реализован алгоритм Семантического стражника на аппаратном уровне.
Бертакко говорит, что пока их разработка во время функционирования замедляет работу процессора в среднем на 3%, но когда она будет доведена до состояния коммерческого использования, коэффициент загрузки попытаются снизить до 1%.
Источник: CyberSecurity
|