A Microsoft parece ter perdido o código-fonte de um componente do Office

A Microsoft parece ter perdido o código-fonte de um componente do Office

A forma como a Microsoft corrigiu um erro de segurança recente levou vários especialistas em segurança e software a acreditarem que a empresa pode ter perdido o código-fonte para um dos componentes do Office.

Os especialistas chegaram a esta conclusão esta semana, depois que a Microsoft corrigiu uma vulnerabilidade de segurança rastreada como CVE-2017-11882 que afetou EQNEDT32.EXE (editor de equações que foi incluído no pacote do Microsoft Office até 2007).

Enquanto a Microsoft substituiu o antigo componente EQNEDT32.EXE por um novo em 2007, o arquivo mais antigo ainda está incluído em todas as instalações do Office permitindo aos usuários carregar e editar equações criadas com o componente antigo.

A maneira como a Microsoft corrigiu um bug recente levantou algumas sobrancelhas

Pesquisadores da empresa de segurança cibernética Embedi descobriram uma falha nesse componente. O bug recebeu muita atenção da mídia porque permitiu ataques silenciosos em todas as versões do Microsoft Office e Windows lançadas nos últimos 17 anos sem interação do usuário.

Enquanto a maioria dos especialistas em segurança examinou o relatório Embedi de 20 páginas para obter detalhes sobre o bug, uma empresa particular analisou a forma como a Microsoft corrigiu o bug no Office.

Especialistas do 0patch – que executam uma plataforma para distribuição instantânea, aplicação e remoção de patches binários microscópicos – notaram que o arquivo EQNEDT32.EXE remendado era quase idêntico ao antigo.

A Microsoft editou manualmente um binário

Quando os programadores modificam o código fonte e compilam um novo binário, o compilador modifica os endereços de memória das funções quando o binário é compilado. Isso cria um binário ligeiramente distinto de cada vez.

A única forma como o novo EQNEDT32.EXE ficou tão semelhante à sua versão anterior era se os engenheiros da Microsoft editassem manualmente o próprio binário.

A explicação seria a perca pela Microsoft do código-fonte de um componente do Office.

 

Um tanto estranho que um componente que enviou com o Office nos últimos 17 anos não recebeu uma única atualização.

Correção manual do EQNEDT32.EXE

A edição manual de executáveis ​​para alterar o comportamento de um binário é considerada um hack de baixo nível, que geralmente causa mais problemas do que resolve. Os desenvolvedores que se envolvem em táticas táticas costumam correr o risco de corromper todo o binário. De acordo com 0patch, o patch EQNEDT32.EXE era uma obra de arte.

A vulnerabilidade CVE-2017-11882 ocorreu porque o EQNEDT32.EXE atribui um tamanho fixo de memória e carrega um nome de fonte dentro. Se o nome da fonte fosse muito longo, isso desencadearia um estouro de buffer e permitir que os invasores executem códigos mal-intencionados.

0patch diz que encontrou correções para este problema.

A Microsoft otimizou outras funções e, quando as modificações do código resultaram em funções menores, a Microsoft adicionou bits de preenchimento para evitar não mexer no arranjo de outras funções próximas.

Tais esforços para evitar não arruinar o binário EQNEDT32.EXE são demorados, e nenhum desenvolvedor sano teria tomado essa rota se ele ainda tivesse acesso ao código-fonte. Além disso, a Microsoft também modificou o número de versão do binário, editando manualmente o binário.

Todas as pistas apontam para a conclusão de que a Microsoft perdeu o acesso ao código-fonte EQNEDT32.EXE, que, se você pensa sobre a quantidade de software que a empresa gerenciou nos últimos 42 anos, é uma maravilha que não aconteceu mais algumas vezes antes.

BLEEPING COMPUTER

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *