Enviar mensagem

Notícia

March 11, 2021

A ameaça persistente da gole a Chip Security

Uma vulnerabilidade conhecida da GOLE chamada o “rowhammer,” que permite que um assaltante interrompa ou tome o controle de um sistema, continua a assombrar a indústria da microplaqueta. As soluções foram tentadas, e os novos estão sendo propostos, mas o potencial para um ataque principal persiste.

Descoberto primeiramente alguns cinco anos há, a maioria dos esforços para eliminar a ameaça do “rowhammer” fizeram pouco mais do que abranda o problema.

“Rowhammer é uma edição grande,” disse Barbara Aichinger, vice-presidente em FuturePlus. “Os vendedores reivindicam que ‘esteve fixado, ‘mas não era. Se você olha apenas em muitos papéis que têm sido publicados em 2020, você verá a abundância da evidência daquela.”

Há umas maneiras numerosas de obstruir o rowhammer, embora nenhum seja aceitado até agora amplamente como definitivo e decisivo. As mitigação podem ser encontradas a nível do software, o nível do navegador, e no hardware nas goles e nos controladores da memória. Mas este somente tentativa de estragar os ataques. Não resolvem o problema na causa origem. Uma empresa reivindica agora ter uma solução.

Princípios de Rowhammer
Rowhammer ocorre enquanto uma consequência sem intenção da GOLE da maneira é feita. Esse processo é uma maneira com cuidado crafted de obter tantos como bocados como a pena possível no silicone para tão pouco dinheiro como possível. Simplesmente mudar o processo não é nenhum repto médio. O fato de que nós não podemos erigir a maneira nós construímos quantidades enormes de memória — junto com a promessa constante das mitigação como sendo suficiente — impediram soluções da causa origem.

O problema ocorre a nível do dado ao longo das paredes que foram gravadas como parte do processo de manufatura. Esse processo de gravação com água-forte deixa imperfeições, ou armadilhas, que podem capturar elétrons e os sustentar eles. Se aqueles elétrons ficaram nas armadilhas, este não pôde ser um problema tão grande. Mas mais tarde no ciclo do acesso de memória, aqueles elétrons podem ser liberados. De lá, podem derivar ao redor, potencialmente terminando acima em uma pilha vizinha.

“Cada vez que você gerencie a fileira de fora para sobre para fora, você obtém um sopro dos elétrons na carcaça,” disse Andy Walker, vice-presidente do produto na memória da rotação. “Alguns destes elétrons migrarão e serão pegarados por nós próximos.”

últimas notícias da empresa sobre A ameaça persistente da gole a Chip Security  0

Fig. 1: Armadilhas ao longo dos elétrons da captação do sidewall (saiu) que permanecem lá temporariamente (centro). Mais tarde, podem ser liberados e migrado a outras pilhas (direitas). Fonte: IEDM/Micron

Uma pilha de bocado da GOLE não é nada mais do que um capacitor que armazene a carga, junto com os meios de obter a carga dentro e para fora ao escrever, e ao determinar quanto carga sobre lá quando ler. Os capacitores podem escapar, e o processo de leitura é próprio destrutivo. Assim um capacitor deve ter seu valor refrescado mesmo após frequência em sua lida ou, se não é alcançado por muito tempo, então alguma predeterminada.

O ponto fundamental aqui é que o estado da pilha está determinado pela carga no capacitor, e essa carga é vulnerável entre refresca ciclos. Os elétrons de derivação podem migrar em uma pilha, mudando a carga na pilha. Se feito vezes demais, bastante carga pode acumular para mudar o estado percebido da pilha.

Isto é o lugar aonde a peça do “martelo” do rowhammer entra. A ideia é que, se uma fileira dada é lida bastante vezes antes da refrescam ocorrem, as mini-explosões repetidas destes elétrons errantes podem mudar uma pilha vizinha. De fato, na conferência recente de IEDM, o Naga Chandrasekaran, vice-presidente superior, desenvolvimento de tecnologia no mícron, notou que, com dimensões de encolhimento, não pode ser somente as fileiras vizinhas que são vulneráveis. Porque as fileiras obtêm mais próximas junto, mesmo as fileiras próximo-vizinhas – dois ou mesmo mais fileiras afastado – poderiam ser afetadas também.

Do fenômeno a atacar
Toma algum pensamento inteligente para tomar este fenômeno e para figurar para fora como poderia ser usado para atacar um sistema. Quando não parecer ter estado nenhuns ataques sérios do chapéu negro ainda, houve papéis acadêmicos numerosos que ilustram o rowhammer como meio de tomar o controle de um sistema.

“Algumas demonstrações notáveis do ataque estão elevando às direita niveladas mais altas de sistema (goste ao administrador), enraizando um telefone de Android, ou tomando o controle do que deve ser uma máquina virtual protegida,” disse John Hallman, Diretor de produto para a confiança e a segurança em soluções de OneSpin.

Está olhando da parte superior de um sistema para baixo e da parte inferior da microplaqueta acima, dois grandes desafios. Um encontra-se em saber onde os dados de sistema críticos são ficados situados na memória. O outro exige o conhecimento de que as fileiras são fisicamente adjacentes. A disposição específica da microplaqueta importante, e esta são mantiveram-se geralmente confidencial por fabricantes de chips. Você não pode supor que o arranjo físico de uma memória feita por um vendedor será o mesmo que aquele de um outro vendedor.

Toda a esta fez o rowhammer difícil, mas de modo algum impossível, para transformar em um ataque viável. Quando os específicos dos vários ataques forem apresentados em muitos relatórios da pesquisa que detalham os resultados, um par exemplos mostram como não é tanto um desafio de obter o controlo total de alguma parte aleatória da memória, mas um pouco obtendo o controle de lugar estratégicos — e com esse, tomando o controle do sistema total.

Um lugar atrativo a visar é as tabelas usadas para a gestão de memória. Apresentam os limites pretendidos para os vários processos que correm, incluindo as permissões exigidas para alcançar as atribuições diferentes. Um pouco do que atacando a memória central, atacando estes meios das tabelas de página que, com um edite, um processo restrito pode mudar em uma maneira que faça mais (ou tudo) da memória – incluindo blocos seguros – acessível ao atacante. Com essa uma mudança, o sistema tem sido aberto agora para promover a exploração.

A respeito de determinar que fileira martelar – e então martelando o – o uso predominante do esconderijo faz a este mais duro. Se você escreve um programa que alcance simplesmente algum lugar de memória repetidamente, você não leveraging o fenômeno do rowhammer. Isso é porque o primeiro acesso de memória fará com que os índices sejam carregados no esconderijo, e todos os subsequentes puxarão do esconderijo um pouco do que relendo a memória.

Isso faz a obtenção em torno do esconderijo de uma parte importante de toda a façanha. Pode ser facilitado ou mais duramente, segundo o processador usado, porque as arquiteturas diferentes têm políticas diferentes da exclusão do esconderijo (e aquelas com políticas puramente determinísticas seja mais em risco). Isso disse, contudo, determinar adjacências pode envolver fazer cálculos cronometrando suteis para determinar se os dados estão ou não estão já no esconderijo ou no amortecedor da fileira dentro da GOLE.

Fazer um ataque mesmo mais resistente é o fato de que alguns bocados da memória são mais vulneráveis atacar do que outro. Pode haver uma causa determinística, tal como a fatura uma área particular de um alvo provável em microplaquetas múltiplas, ou pode haver-lhe algum elemento aleatório. Assim não cada pilha de memória responderá ao rowhammer da mesma forma.

O impacto destes projetos é um reconhecimento que esta é uma ameaça real, não teórico, e é apenas uma questão de tempo antes que alguém crie dano – especialmente com tanto se mover de computação para a nuvem, onde os servidores incontáveis e sua memória podem ser alcançados a partir de qualquer lugar do mundo.

Mitigação e desvios
Até agora, a maioria de esforços visíveis para opor o rowhammer não resolvem a física fundamental do problema; fornecem maneiras de trabalhar em torno da edição. E foram executados a níveis múltiplos.

Por exemplo, usar um navegador para alcançar um servidor remoto fez à indústria do navegador uma parte interessada. Porque um ataque pode envolver medidas cronometrando suteis, os navegadores reduziram a granulosidade de cronometrar disponível. É já não possível obter a precisão do nanossegundo-nível. Em lugar de, pode ser microssegundos – ainda exatos, mas mil vezes menos exato, e bastante restringir uma maneira de ataque.

“Os navegadores principais abrandaram esta edição, ou tentaram-na pelo menos a,” disse Alric Althoff, coordenador superior da segurança do hardware na lógica de Tortuga. “Muitos dos reparos reais software-são baseados e visados muito (por exemplo Google Chrome abrandou o pulso aleatório removendo as extensões de uma aplicação do webGL em 2018). Mas o afastado grande é que as vulnerabilidades do hardware que ‘não pode ser explorado remotamente’ estão esperando somente em uma experiência que mostre que podem, e naquela ‘não podem ser exploradas’ significam realmente que nós apenas não podemos pensar de uma maneira de fazer agora a façanha remota.”

Em um papel retrospectivo, seis soluções idealizadas foram propostas. “As primeiras seis soluções são: 1) melhores microplaquetas de GOLE de fabricação que não são vulneráveis, 2) usando os códigos de correção de erro (fortes) (CCE) para corrigir erros rowhammer-induzidos, 3) aumentar refresca a taxa para toda a memória, 4) pilhas rowhammer-propensas estaticamente remapping/reservadas através de uma único análise da cargo-fabricação, 5) pilhas rowhammer-propensas dinamicamente remapping/reservadas durante a operação de sistema, e 6) exatamente identificando fileiras marteladas durante o tempo de execução e refrescando seus vizinhos.”

A maioria de mitigação centram-se sobre o número 6. número 1 seriam o reparo desejado da causa origem. O número 2 – CCE – pode ser usado, mas tem limitações que nós discutiremos logo. O número 3 pode ser atrativo, mas é uma perseguição constante sem a extremidade. E números 4 e 5 para criar a complexidade significativa do sistema-nível.

Muito do foco da mitigação esteve a nível de uma mais baixa memória – dividido entre a microplaqueta de GOLE e os controladores que estão entre a GOLE e o sistema. “Dentro do refresque o ciclo, há uma janela quando tais ataques excedem um valor dado,” disse Vadhiraj Sankaranarayanan, diretor de marketing técnico superior em Synopsys. “Então as soluções podem ser construídas em qualquer lugar – no controlador ou nas goles. Exige o hardware caro, e está poder-com fome. Mas nós queremos a memória ser segura porque os dados são o rei aqui.”

Uma maneira de impedir ataques é contar o número de acessos em uma fileira dada entre refresca. Se um ponto inicial é excedido, a seguir você impede um acesso mais adicional. Quando isso puder soar simples no conceito, é difícil pôr na prática. Não há uns bons modelos para as memórias que recusam um acesso que pareça de outra maneira ser legítimo. Assim as decisões seriam necessários toda a maneira de novo no sistema para que o que faça se um pedido lido é negado. Faz esse meio que as paradas, as esperas, e as tentativas do controlador outra vez? O sistema operacional obtém involvido? Faz uma aplicação falham finalmente?

Duas capacidades novas adicionaram aos padrões da memória de JEDEC forneceram uma outra resposta. Uma característica nova é chamada alvo-fileira para refrescar, ou TRR. A ideia lá é que, quando as goles estiverem ajustadas para refrescar após lê e de acordo com uma programação, um mecanismo da fino-granulosidade é necessário para executar a único-fileira refresca por encomenda. Se alguém ou algo – na memória ou no controlador – detectam que um ataque pôde ser corrente, pode emitir para refrescar à fileira afetada e para inverter todo o martelamento que possa ter ocorrido até esse ponto.

“O controlador mantém-se monitorar, e, se suspeita que uma fileira ou umas fileiras particulares estão obtendo atacada, o controlador encontra imediatamente para fora o que as vítimas possíveis são,” disse Sankaranarayanan. “Então põe as goles no modo de TRR, e pode enviar dinâmico refresca 2 aquelas fileiras da vítima para impedir que percam seu estado original.”

A monitoração pode alternativamente ser executada nas goles elas mesmas, à custa do tamanho do dado e do poder. As “goles podem igualmente ter contadores,” adicionou Sankaranarayanan. “Está poder-com fome, mas alguns têm os contadores que podem monitorar acessos persistentes.”

Zentel está oferecendo uma solução no que refere como a GOLE “rowhammer-livre”. “Para a GOLE de 2Gb e de 4Gb DDR3 (nó 25nm), Zentel aplica um esquema proprietário da proteção do rowhammer com uma combinação integrada do hardware de contadores múltiplos e de SRAM para monitorar o número de ativações da fileira, e para refrescar a vítima que a fileira assim que uma determinada contagem máxima fosse alcançada,” disse Hans Diesing, diretor das vendas em Zentel. Isto fornece uma resposta que não deva mensuravelmente afetar o desempenho ou ser parte externa visível a GOLE.

Esta solução vem, naturalmente, com um custo. “A estrutura adicional do hardware adiciona para lascar bens imobiliários e, devido a menos rendimento da bolacha, não é tão competitiva no custo e preço comparado ao resto desta indústria,” adicionou. “Mas esta versão rowhammer-livre era por encomenda projetado dos clientes da indústria de HDD.”

TRR não satisfez todos os jogadores, contudo. “Geralmente, os vendedores da GOLE e os vendedores do controlador são secretos sobre TRR,” disse Sankaranarayanan. De fato, um pouco do que sendo simplesmente uma mitigação, TRR parece ser um guarda-chuva para um número de mitigação, muitas de que pode ser contorneado. “Infelizmente, TRR descreve uma coleção dos métodos, muitos de que não faz o trabalho,” disse Althoff. “É consequentemente não uma mitigação por si mesmo, simplesmente uma família das contramedidas.”

Quando TRR puder poder proteger contra unilateral (uma fileira vizinha do ataque) ou frente e verso (ambas as fileiras vizinhas como atacantes), não pode ajudar contra ataques “versáteis” – fileiras múltiplas que estão sendo trabalhadas ao mesmo tempo. Uma ferramenta foi desenvolvida mesmo para ajudar a figurar para fora como alterar ataques na presença de TRR de modo que ainda fossem eficazes.

Os códigos de correção de erros (CCE) são considerados igualmente como uma solução possível. A ideia lá é uma fileira pode ser corrompida, mas essa corrupção será corrigida durante o processo lido-para fora. Aquele pode ser o argumento para as fileiras onde um único bocado ou foi corrompido assim, mas – dado esse martela uma fileira inteira, não apenas partes dela – pode haver mais erros do que a CCE pode corrigir. “Uma das proteções preliminares para este ataque foi a correção do código de erro (CCE), embora mesmo agora os atacantes estão começando a identificar maneiras em torno destas proteções,” notou Hallman.

Além, algumas aplicações da CCE corrigem somente os dados que estão sendo lidos, não os dados originais na fileira. Deixar o bocado incorreto no lugar significa que o futuro refresca reforçará o erro, desde refresca restaurações o que é já lá, um pouco do que restaurando o a algum estado dourado conhecido da referência. Evitar isto significaria usando a CCE para determinar os bocados incorretos e a correção deles na memória.

Há igualmente um controlador que novo o comando chamado refresca a gestão (RFM). “RFM está no padrão de JEDEC para DDR5, mas aquele não foi avaliado pela audiência mais larga da segurança ainda,” disse Althoff. “Assim quando parecer conceptualmente bom, é não experimentada, e assim que não é uma mitigação conhecida, apenas presuntiva.”

O teste padrão foi este e outras mitigação são publicadas, e o mundo acadêmico vai trabalhar para mostrar que podem ainda obter em torno das mitigação. E, geralmente, estiveram corretos.

Um interesse adicional está circulando agora, dado que a maioria de mitigação se centraram sobre sistemas Processador-baseados. GPUs pode fornecer uma maneira alternativa de atacar um sistema, assim que a atenção é precisada lá, também.

“A indústria tem trabalhado para abrandar esta ameaça desde 2012, com técnicas tais como a fileira do alvo refresque a peça (TRR) dos padrões DDR3/4 e LPDDR4 e refresque a gestão (RFM) em DDR5 e as especificações LPDDR5,” disse Wendy Elsasser, distinto coordenador no braço. “Contudo, mesmo com estes e outras técnicas da mitigação, como as disposições internas da GOLE são proprietárias, os ataques do rowhammer são particularmente difíceis de abrandar contra.”

Pode a edição fundamental ser resolvida?
O Santo Graal com esta edição foi uma maneira de parar os elétrons da migração das pilhas de perturbação. Fazer que de um modo isso não erige o processo inteiro da GOLE ou para fazer goles exorbitantes foi o grande desafio. É por isso houve tanto um foco em resolver o problema indiretamente, com as mitigação, um pouco do que resolvendo o diretamente. Mas com mitigação sob o ataque constante, uma solução da causa origem seria bem-vinda.

“Este é um argumento para uma solução do hardware a um problema do hardware,” disse Althoff. “Se o hardware é vulnerável, empurrar a responsabilidade da mitigação para o software – ou algum nível mais alto da abstração – é equivalente a [um meme popular que mostra um escape da água que está sendo obstruído com fita adesiva.]”

Uma empresa reivindica ter encontrado tal reparo – possivelmente acidentalmente. As memórias da rotação (STT anterior, um produtor de MRAM) criaram um seletor novo que ajudasse a reduzir a área exigida para uma pilha mordida da memória. Muitas pilhas mordidas consistem em um único componente (como um resistor, um capacitor, ou um transistor), mas precisam uma maneira de ser cortada assim elas não são perturbadas acidentalmente quando uma outra pilha relacionada é alcançada. Por este motivo, um transistor adicional do “seletor” é adicionado a cada pilha mordida, fazendo a pilha mordida maior.

As memórias da rotação encontraram que poderia tomar uma página do livro de 3D NAND – fazendo um transistor se operar verticalmente com uma porta circunvizinha – e de colocar isso sob a pilha de memória um pouco do que ao lado dele. Este arranjo empilhado comprimiria consequentemente o tamanho da disposição da memória.

“Pode então ser usado para todo o interruptor resistive como ReRAM, CBRAM, CERAM e PCRAM – algum resistor do dois-terminal que exigir atual ou tensão para comutar,” disse o caminhante. “É uma porta vertical toda em torno do transistor baseado na epitaxia seletiva. É um dispositivo de alta tensão em 3D NAND que nós nos adaptamos a nossa aplicação muito de baixa voltagem. Exige a movimentação alta e o baixo escapamento, que o que aquele traduz na ciência de materiais é que o canal do dispositivo tem que ser monocrystalline.” Daqui, epitaxia um pouco do que o depósito.

Isto dá ao transistor duas características críticas que lhe fazem um concorrente para a solução completa do rowhammer. Um é que o silicone usado está crescido epitaxially acima da bolacha um pouco do que sendo gravado na bolacha. Porque gravura a água-forte é a fonte primária das armadilhas que capturam os elétrons no primeiro lugar, eliminar aqueles locais da armadilha reduz-se extremamente, ou mesmo elimina-se, a fonte da edição.

A segunda característica é o n-tipo enterrado camada de que obstrui eficazmente elétrons dispersos, o que fonte, interferindo com a pilha mordida. Se carregado para fora, isto interromperia eficazmente o mecanismo do rowhammer.

últimas notícias da empresa sobre A ameaça persistente da gole a Chip Security  1

Fig. 2: À esquerda, os elétrons prendidos na pilha do agressor podem derivar à pilha vizinha e mudar a carga no capacitor. À direita, os usos recentemente propostos epitaxia da estrutura, criando menos local da armadilha, e uma região n-lubrificada obstruem todos os elétrons errantes de alcançar as pilhas mordidas. Fonte: Memória da rotação.

A rotação, conjuntamente com a NASA e o Imec, está publicando um papel (atrás de um paywall presentemente) que detalhe a solução. Como com uma proposta, deve circular entre a comunidade da segurança, enfrentando desafios e testes antes que se possa aceitar como definitivo.

Provar a eficácia de uma mitigação não é fácil, exigindo a modelagem cuidadosa dos ataques – pelo menos, conhecido. “Utilizando de nossas ferramentas da injeção e da detecção da falha, nós podemos trabalhar com clientes para modelar os ataques e para demonstrar os efeitos na memória,” disse Hallman. “Isto poderia identificar as áreas onde a informação poderia ainda ser escapada.”

Provar a eficácia de um reparo do silicone-nível dos primeiros princípios é igualmente um desafio. A “GOLE é IP duro, e a física das façanhas do ataque, assim que você precisaria algo com precisão na ordem da ESPECIARIA, ou uma alternativa visada, para verificar com confiança o pre-silicone,” disse Althoff.

Mas a prova de ambas as mitigação e os reparos são necessários em uma indústria cuidadosa. A “rotação não é a primeira a tentar produzir a GOLE rowhammer-imune,” notou o Aichinger de FuturePlus. “Diversas estratégias novas da mitigação estão sob a discussão, e você deve ouvir mais sobre este em 2021. ” (de Mark)

Contacto