terça-feira, 8 de janeiro de 2013

IDG Now!: Hacker encontra meio de rodar aplicativos de desktop no Windows RT



Um hacker afirma ter encontrado um método para contornar o mecanismo de integridade de código no Windows RT, permitindo assim que programas de desktop sejam instalados na área de trabalho. O hacker, que utiliza o apelido de "clrokr", publicou o método em um blog no domingo (6/12).

O Windows RT é uma versão especial do OS da Microsoft que foi projetada para computadores mais leves e tablets que são baseados em arquitetura ARM, incluindo o Surface. Comparado com o Windows 8, o Windows RT permite apenas a instalação de aplicativos Metro, baixados diretamente da Windows Store. Essas aplicações são projetadas exclusivamente para a interface Metro e não têm acesso à tradicional área de trabalho Windows.

O Windows RT possui alguns aplicativos de desktop pré-instalados, como o Office RT (uma versão especial do Office 2013) e o Internet Explorer 10.

De acordo com clrokr, a restrição que permite apenas a instalação de apps Metro no OS é forçada por meio do mecanismo de integridade do código, que verifica a assinatura do app antes de permitir sua instalação. Isso impede que usuários simplesmente utilizem um aplicativo de desktop para a arquitetura ARM e o instale em dispositivos com Windows RT.

"Se olharmos a fundo no núcleo (kernel), em uma seção de dados criptografada e assinada, protegida pelo Secure Boot do UEFI (Unified Extensible Firmware Interface), está um byte que representa o nível mínimo de assinatura", disse clrokr. "Esse nível determina o quão boa a assinatura de um executável é em uma escala como esta: Unsigned (0), Authenticode (4), Microsoft (8), Windows (12). O valor padrão em máquinas x86 [Windows 8 e versões anteriores] é naturalmente 0, porque você pode executar qualquer coisa que você gosta no seu computador. Já para as máquinas ARM, o padrão é 8."

O nível mínimo exigido pelo Windows RT pode ser mudado por meio da exploração de uma vulnerabilidade no kernel do Windows que existe por algum tempo - e também está presente no OS, a qual visa modificar esse byte especial na memória, disse clrokr.

Apesar de tudo, o hack tem algumas limitações. O byte de assinatura de level não pode ser permanentemente mudado por conta do recurso de inicialização segura (Secure Boot), que verifica a integridade do sistema operacional após cada reinicialização e reverte alterações não autorizadas. Isso significa que o procedimento deve ser refeito a cada inicialização do sistema. Tablets não são reiniciados sempre, então isso não deve ser um inconveniente muito grande, mas isso não significa que o uso do hack é restrito a usuários com mais conhecimento técnico - ao menos até agora.

Outra limitação é que programas de desktop x86 não podem simplesmente ser instalados no Windows RT, eles precisam ser compilados para arquitetura ARM. Para programas de código aberto, essa deve ser uma tarefa fácil de ser realizada, mas para programas com código fechado, a úncia forma é convencer os desenvolvedores originais a criar versões ARM.

O caso

O hacker decidiu tornar a informação pública, porque ele acha que a decisão da Microsoft em impedir a execução de aplicativos de desktop tradicionais na plataforma é uma jogada de marketing ruim e que diminui o valor dos dispositivos windows RT. "O Windows RT precisa do ecossistema Win32 para reforçar sua posição como ferramenta de produtividade", disse. "Já há tablets de consumo o suficiente."

"A razão pela qual eu tentei desativar a integridade de código não tem nada a ver com o Win32 ou o WinRT", disse ele em uma discussão no Reddit. "Isso tem a ver com escolha. A Microsoft quer que os dispositivos passem pela Windows Store e isso é compreensível do ponto de vista financeiro. Mas permitir aplicações Win32 poderia ajudar no problema que poderá resultar na morte do Surface."

Clrokr não concorda com o argumento de que aplicativos de desktop tradicionais exigem mais recursos e consomem mais energia da bateria do que aplicativos Metro - o que pode ter levado a Microsoft a bani-los do Windows RT. "Tudo depende realmente da qualidade dos programas. Aplicativos WinRT e Win32 não são tão diferentes quanto pode parecer. Você pode facilmente construir um app WinRT lento, sem resposta. E não há razão para acreditar que os apps Win32 têm maior requisitos quando se trata de poder de processamento e memória."

A Microsoft está ciente do exploit divulgado e está investigando o assunto. "Estamos investigando o caso e tomaremos as medidas adequadas para proteger os clientes", afirmou a companhia nesta segunda-feira (7/12), por e-mail.

Nenhum comentário:

Postar um comentário

deixe aqui seu comentário