Window RT Jailbreak — зачем он нужен?


Microsoft попыталась заблокировать некоторые аспекты Windows 8 и сделала еще больше для защиты Windows RT. Как и следовало ожидать, это просто приглашение к взлому системы, но, к удивлению, попытка взлома привела к немного более глубокому вопросу — почему рабочий стол Windows RT вообще заблокирован?

Первое, что нужно сказать, это то, что у нас пока нет полного джейлбрейка в том смысле, что он не очень удобен для пользователя. Windows RT — это окна для процессора ARM, и он поддерживает приложения WinRT, которые работают как на x86, так и на ARM, с соответствующей перекомпиляцией. Однако Windows RT также поддерживает настольные приложения, то есть приложения, работающие под Win32 API. Большая проблема в том, что Microsoft решила, что вы не можете запускать настольные приложения под Windows RT — можно загружать только подписанные приложения, авторизованные Microsoft.

Джейлбрейк, сделанный программистом по имени clrokr, использует давнюю уязвимость в ядре, которое было перенесено на ARM, — хешированный код, который определяет уровень безопасности. На машинах x86 он установлен на ноль, чтобы разрешить выполнение чего угодно, но в Windows RT на ARM он установлен на 8, что означает, что приложение должно быть подписано Microsoft для запуска. Джейлбрейк просто находит хешированные данные и меняет их на хеш нулевого уровня. На самом деле изменить значение непросто, потому что у приложений WinRT нет контекста безопасности для изменения данных, принадлежащих другому процессу. Уловка требует использования удаленного отладчика и некоторого умного кода для изменения байта. Единственная проблема заключается в том, что значение сбрасывается при перезагрузке машины, что делает изменение менее чем постоянным.

Интересно то, что clrokr утверждает, что взлом работает в Windows 8 и что Windows RT является «чистым портом Windows 8». Это означает, что если вы возьмете классическое приложение Win32 и перекомпилируете его в код ARM, оно должно просто работать.

Microsoft привела ряд причин для запрета приложений Win32, работающих под Windows RT. Во-первых, Windows RT включает только очень простой и неполный порт Win32. Похоже, что это не так. Более позднее объяснение заключалось в том, что это было сделано для того, чтобы не сбивать с толку пользователей, которые могут попытаться загрузить и запустить x86-версии настольных приложений. Их может раздражать то, что они не работают, потому что они не были скомпилированы в код ARM. Конечно, из-за блокировки их теперь просто раздражает то, что они не могут даже попытаться загрузить их. В любом случае они не работают, и если бы Windows RT не была заблокирована, программисты могли бы перекомпилировать свои настольные приложения и сделать их доступными под Windows RT.

В общем, блокировать Windows RT не имеет особого смысла. Среди других возможных причин для этого — проблемы с безопасностью и проблемы с временем автономной работы. Хотя это может быть проблемой, огромный бонус наличия настольных приложений Windows, доступных для работы под Windows RT, может сделать их несущественными.

Одна возможная и правдоподобная причина отказа от настольных приложений на процессорах ARM заключается в том, что Microsoft действительно хочет, чтобы настольные приложения вымерли. Будущее за приложением WinRT, а устаревшая версия Win32 подойдет под действие блокировки настольных приложений из Windows RT. Такое же отношение существует и в Windows 8, где новый стартовый экран нельзя отключить. В Windows 8 вы не можете избежать приложений WinRT, и вы не можете просто вернуться к своему старому рабочему столу и продолжать работу, как будто ничего не изменилось.

Блокировка рабочего стола Windows RT, вероятно, больше связана с тем, чтобы программисты получили сообщение о том, что API рабочего стола мертв, чем что-либо еще.

Microsoft, похоже, не слишком обеспокоена текущим побегом из тюрьмы, сославшись на тот факт, что на самом деле это не угроза безопасности и не совсем практично. Также похоже, что эта проблема будет решена в будущем выпуске Windows RT.

Как пишет clrokr в своей записи в блоге:

«Решение запретить традиционные настольные приложения было не техническим, а плохим маркетинговым решением. Windows RT нуждается в экосистеме Win32, чтобы укрепить свои позиции в качестве инструмента повышения производительности. Планшетов для« потребления »уже достаточно.

Microsoft, пожалуйста, рассмотрите возможность сделать подпись кода необязательной и тем самым повысить ценность ваших устройств Windows RT! »

Он не одинок в этом мнении.

Сколько устройств Surface было возвращено, потому что пользователь подумал, что это настоящее устройство Windows? С одним небольшим изменением линейка Surface может стать больше похожей на настоящее устройство Windows.


Добавить комментарий