Компьютерра PDA N72 (13.11.2010-19.11.2010)
Шрифт:
Доэрр также похвалил Apple за созданную вокруг iPhone экосистему, которая позволяет эффективно зарабатывать разработчикам приложений. Другой известный инвестор, Фред Уилсон, парировал тем, что в Apple была создана закрытая система, похожая на кабельное телевидение, но Доэрр заявил, что инновации без запретов - это просто галлюцинации.
Кивино гнездо: Ближе к железу
Автор: Берд Киви
Опубликовано 18 ноября 2010 года
Темой нынешнего обзора станут новости о программных средствах, в потенциале способных наносить вред компьютерному оборудованию и данным
Некий анонимный исследователь-хакер, укрывшийся под ником Czernobyl или просто "Черно", обнародовал в интернете информацию о секретном отладочном режиме, встроенном во все процессоры AMD, начиная с поколения Athlon XP. Данная публикация открывает двери для весьма продвинутых экспериментов, простирающихся далеко за границы того, что определено официальными спецификациями к процессорной архитектуре x86.
Отладочный режим, обнаруженный Чернобылем, выглядит как сугубо внутренний сервис фирмы AMD, закодированный в процессоры изначально, однако отключенный чипах, поступающих в продажу. Хотя расширенные функциональные возможности по-прежнему остаются в процессоре, получить к ним доступ можно лишь в том случае, если определенные служебные регистры заполнить набором определенных байтов. По сути дела, это эквивалентно вводу пароля.
Но коль скоро пароль этот постоянный и фактически зашит в схему микропроцессоров, Чернобыль сумел его отыскать путем сканирования памяти компьютера. Для человека, понимающего, что он делает, подобная задача не слишком сложна, принимая во внимание, что хакеру уже удалось перед этим раздобыть имена тех конкретных регистров, в которые следует поместить байты отпирающей комбинации.
Получив доступ к отладочному режиму, Черно обнаружил массу новых заманчивых возможностей, которые делают процессоры AMD "наиболее предпочтительным выбором" для специалистов, занимающихся программированием на глубоком уровне. В особенности же — для тех людей, которые решают задачи обратной инженерной разработки. В частности, среди новых возможностей теперь есть такие, как условные точки останова программы в зависимости от содержимого данных и точки останова прочих типов (data-aware conditional breakpoints, page-guard breakpoints и т.д.), реализуемые непосредственно на аппаратном уровне.
Чернобыль достаточно подробно описывает проделанную им работу в документации об активации отладочного режима. Поскольку восстановление функций отладочного инструментария происходит, по сути, методом тыка, исследователь характеризует свое творчество как "проект в процессе реализации, но уже работоспособный — поэтому публикуемый как есть".
Среди инструкций Чернобыля, в частности, встречаются и такие пассажи: "Предупреждение! Выставление в младших битах регистра значения Control=1 следует рассматривать как 'зарезервировано / опасно / не используется'. И хотя сам я знаю (мне думается), каким образом микрокод функционирует при такой установке параметра, я не буду это документировать. Ничего полезного там нет (впрочем, любители приключений не обязаны принимать мои слова на веру)"...
Все, что Чернобыль счел нужным рассказать о своих открытиях, он опубликовал на сайте Woodmann.com в тексте под названием "Суперсекретные отладочные возможности процессоров AMD".
В условиях, когда свыше девяти десятых
Ныне, как известно, эта безрадостная с точки зрения инфобезопасности ситуация начала меняться. Хотя и медленно, но рынок Windows сужается по мере того, как конкуренты вроде платформ Mac и Linux набирают все больше поклонников. Особенно же отчетливо эта тенденция проявляется в том, как народ все больше и больше переходит от настольных компьютеров к мобильным устройствам, работающим на основе платформ Apple iOS, Google Android, RIM Blackberry и так далее. Соответственно, наблюдается и стабильное сокращение рыночной доли программ Microsoft.
Вместе с исчезновением монокультуры Windows и радикальным расширением спектра программных средств, злоумышленникам придется отыскивать и новые типы атак — которые уже не будут специфическими для конкретной ОС или для конкретных приложений. Один из наиболее логичных и естественных шагов в данном направлении, по мнению экспертов-исследователей, это нацеливать атаки уже не на программы, а на аппаратное обеспечение. В частности, на процессоры конкретных фирм-изготовителей.
В ноябре этого года опубликована статья исследователей из парижского ИТ-института ESIEA (Ecole Superiore d'Informatique, Electronique, Automatique), в общих чертах демонстрирующая, каким примерно образом это будет происходить. В работе французских авторов (Anthony Desnos, Robert Erra, Eric Filiol) представлен открытый ими метод для выявления процессора, используемого произвольной системой, c целью последующего захвата управления этим аппаратным обеспечением. По заключению экспертов, защитить систему от атак, воздействующих на уровне "железа", оказывается существенно труднее.
Понятно, что для успеха атаки в данном направлении задача по идентификации конкретного процессора в системе- мишени представляется одной из принципиально важных. И хотя задачу эту нельзя назвать тривиальной, французские авторы показывают, что решить ее не так уж сложно.
Один из ключей к ее решению предоставляет давнишний баг в процессорах Intel P5, обнаруженный в середине 1990-х годов и вызывавший ошибки в операциях арифметики с плавающей точкой (или плавающей десятичной запятой, если кому-то такой термин нравится больше). Простой способ для определения того, используется ли в каком-то из компьютеров данный чип, — это выполнить определенное вычисление, о котором заведомо известно, что Пентиум сделает там ошибку.
Авторы статьи из ESIEA отмечают, что все реально используемые чипы имеют в себе определенные математические ограничения, продиктованные теми стандартами, которые они применяют для кодирования чисел и выполнения операций арифметики с плавающей точкой. Некоторые из этих ограничений достаточно хорошо известны специалистам, другие известны хуже, но самое главное, что все они приводят к тем или иным неточностям в результатах вычислений. А специфика архитектуры конкретного процессора, соответственно, способна порождать своего рода "подпись" из такого рода неточностей.