A grande aposta da Apple para eliminar as vulnerabilidades mais visadas do iPhone

A Apple lançou uma série de novos iPhones na terça-feira, equipados com os novos chips A19 e A19 Pro da empresa. Além de um iPhone Air ultrafino e outras novidades , os novos aparelhos contam com uma atualização menos chamativa que pode se tornar o verdadeiro recurso matador. Uma melhoria de segurança chamada Memory Integrity Enforcement combina proteções sempre ativas no nível do chip com defesas de software, em um esforço para proteger os iPhones contra as vulnerabilidades de software mais comuns — e comumente exploradas.
Nos últimos anos, um movimento tem crescido constantemente na indústria global de tecnologia para lidar com um tipo onipresente e insidioso de bugs conhecido como vulnerabilidades de segurança de memória. A memória de um computador é um recurso compartilhado entre todos os programas, e problemas de segurança de memória surgem quando o software consegue extrair dados que deveriam estar fora dos limites da memória de um computador ou manipular dados na memória que não deveriam ser acessíveis ao programa. Quando desenvolvedores — mesmo desenvolvedores experientes e preocupados com a segurança — escrevem software em linguagens de programação onipresentes e históricas, como C e C++, é fácil cometer erros que levam a vulnerabilidades de segurança de memória. É por isso que ferramentas proativas, como linguagens de programação especiais, têm proliferado com o objetivo de tornar estruturalmente impossível para o software conter essas vulnerabilidades, em vez de tentar evitar a introdução delas ou capturar todas elas.
“A importância da segurança da memória não pode ser exagerada”, escreveram a Agência de Segurança Nacional dos EUA e a Agência de Segurança Cibernética e de Infraestrutura em um relatório de junho . “As consequências das vulnerabilidades na segurança da memória podem ser graves, desde violações de dados a falhas no sistema e interrupções operacionais.”
A linguagem de programação Swift da Apple, lançada em 2014, é segura para memória. A empresa afirma que vem escrevendo novos códigos em Swift há anos, além de tentar revisar e reescrever estrategicamente o código existente na linguagem segura para memória, a fim de tornar seus sistemas mais seguros. Isso reflete o desafio da segurança de memória em toda a indústria, pois, mesmo que o novo código seja escrito com mais segurança, o software mundial foi todo escrito em linguagens inseguras para memória por décadas. E embora, em geral, o ecossistema bloqueado da Apple tenha conseguido até agora impedir ataques generalizados de malware contra iPhones, invasores motivados, especialmente os criadores de spyware , ainda desenvolvem cadeias complexas de exploração de iOS a alto custo para atingir iPhones de vítimas específicas.
Mesmo com o trabalho que a Apple fez para começar a revisar seu código para segurança de memória, a empresa descobriu que essas cadeias de ataque rarefeitas quase sempre incluem exploração de bugs de memória.
“As cadeias de spyware mercenários conhecidas usadas contra o iOS compartilham um denominador comum com aquelas que têm como alvo o Windows e o Android: elas exploram vulnerabilidades de segurança de memória, que são intercambiáveis, poderosas e existem em todo o setor”, escreveu a Apple em seu anúncio de Aplicação da Integridade da Memória na quarta-feira.
A Apple tem investido cada vez mais em segurança de memória com o Swift e alocadores de memória seguros que gerenciam quais regiões da memória são "alocadas" e "desalocadas" para quais dados — um fator importante e fonte de vulnerabilidades de segurança de memória. Mas a própria Aplicação da Integridade da Memória foi originalmente inspirada no trabalho em nível de hardware para proteger a integridade do código mesmo quando um sistema sofre corrupção de memória.
Com linguagens de programação inseguras em termos de memória subjacentes a grande parte da base de código coletiva do mundo, a equipe de Engenharia e Arquitetura de Segurança da Apple sentiu que colocar mecanismos de segurança de memória no cerne dos chips da Apple poderia ser uma solução mágica para um problema aparentemente intratável. O grupo se baseou em uma especificação conhecida como Memory Tagging Extension (MTE), lançada em 2019 pela fabricante de chips Arm. A ideia era essencialmente proteger com senha cada alocação de memória no hardware, de modo que futuras solicitações de acesso àquela região da memória só fossem atendidas pelo sistema se incluíssem o segredo correto.
A Arm desenvolveu o MTE como uma ferramenta para ajudar desenvolvedores a encontrar e corrigir bugs de corrupção de memória. Se o sistema receber uma solicitação de acesso à memória sem passar pela verificação secreta, o aplicativo travará e o sistema registrará a sequência de eventos para revisão pelos desenvolvedores. Os engenheiros da Apple se perguntaram se o MTE poderia ser executado o tempo todo, em vez de ser usado apenas como uma ferramenta de depuração, e o grupo trabalhou com a Arm para lançar uma versão da especificação para esse fim em 2022, chamada Enhanced Memory Tagging Extension .
Para tornar tudo isso uma defesa constante e em tempo real contra a exploração de vulnerabilidades de segurança de memória, a Apple passou anos arquitetando a proteção em profundidade em seus chips para que o recurso pudesse estar ativo o tempo todo para os usuários sem sacrificar o desempenho geral do processador e da memória. Em outras palavras, é possível perceber como gerar e anexar segredos a cada alocação de memória e, em seguida, exigir que os programas gerenciem e produzam esses segredos para cada solicitação de memória pode prejudicar o desempenho. Mas a Apple afirma que conseguiu resolver o problema.
O Memory Integrity Enforcement “está integrado ao hardware e software da Apple em todos os modelos do iPhone 17 e iPhone Air e oferece proteção de segurança de memória inigualável e sempre ativa para nossas principais superfícies de ataque, incluindo o kernel, ao mesmo tempo em que mantém a potência e o desempenho que os usuários esperam”, escreveu a Apple no anúncio.
A empresa também lançou uma versão da especificação Enhanced Memory Tagging Extension para todos os desenvolvedores Apple no Xcode, para que os criadores de aplicativos possam começar a incorporar a proteção em seus produtos. Pesquisadores que participam do programa especial para dispositivos da Apple também serão incentivados a testar e atacar o Memory Integrity Enforcement na nova versão dos dispositivos que contêm chips da série A19.
A Apple tem sido frequentemente criticada por quão restritivo seu ecossistema fechado pode ser, inclusive quando a falta de transparência impede que pesquisadores de segurança examinem completamente os sistemas da Apple. Mas a abordagem também se mostrou eficaz em muitos aspectos. E as reações iniciais ao anúncio sobre o Memory Integrity Enforcement foram amplamente positivas, dados os benefícios de segurança que ele promete.
“A profunda integração do ecossistema da Apple significa que melhorias de segurança como o Memory Integrity Enforcement têm um enorme impacto na segurança e privacidade geral do usuário”, afirma Alex Zenla, diretor de tecnologia da empresa de segurança em nuvem sandbox Edera. “A segurança pode ser efetivamente incorporada desde o início quando projetada corretamente.”
wired