#

эксплойты

(1 articles)

Странные машины: как хакеры собирают процессор из данных

![](https://habrastorage.org/getpro/habr/upload_files/b27/a93/fb1/b27a93fb116570d2f5c7df5074bcb2f9.gif) Как часто нам приходится читать в бюллетенях безопасности *«Уязвимость... позволяющая нарушителю выполнить произвольный код с помощью специально сформированного запроса»*. Но что на самом деле скрывается за этой фразой? Что это за специальные запросы и как наша программа может выполнять чужой код, если мы досконально знаем в ней каждую строчку и каждую библиотеку? И почему тогда Apple [платит до двух миллионов долларов](https://security.apple.com/bounty/) за одну найденную уязвимость и выстраивает многоуровневую аппаратную защиту — а айфоны всё равно взламывают по нажатию одной кнопки? Всё дело в том, что сами атаки стали другими. Когда инженеры перекрыли большинство очевидных ходов, хакерам пришлось изменить сам подход к взлому. Вместо поиска лазеек они научились брать легитимные вычисления программы и строить поверх них... виртуальный процессор. Даже стандартную функцию вывода текста `printf` удалось превратить в Тьюринг-полный интерпретатор — то есть вычислитель, способный выполнить любой алгоритм. Перед нами — Data-Only атаки, где взлом превращается в программирование на «невидимом» процессоре. Процессоре, команды которого — лишь побочный эффект работы нашей собственной программы. Но чтобы понять, как мы здесь оказались, придётся вернуться на двадцать лет назад. [Читать далее](https://habr.com/ru/articles/1059800/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1059800#habracut) https://habr.com/ru/articles/1059800/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1059800