pt.phhsnews.com


pt.phhsnews.com / O que é o ASLR e como ele mantém seu computador seguro?

O que é o ASLR e como ele mantém seu computador seguro?


ASLR (Address Space Layout Randomization) é uma técnica de segurança usada em sistemas operacionais, implementada pela primeira vez em 2001. As versões atuais de Todos os principais sistemas operacionais (iOS, Android, Windows, macOS e Linux) apresentam proteção ASLR. Mas na semana passada, um novo método de contornar o ASLR foi encontrado. Então, você deveria estar preocupado?

Para aqueles sem um histórico de programação de baixo nível, o ASLR pode ser confuso. Para entender, você deve primeiro entender a memória virtual.

O que é memória virtual?

A memória virtual é uma técnica de gerenciamento de memória com muitos benefícios, mas foi criada principalmente para facilitar a programação. Imagine que você tenha o Google Chrome, o Microsoft Word e vários outros programas abertos em um computador com 4 GB de RAM. Como um todo, os programas neste computador usam muito mais que 4 GB de RAM. No entanto, nem todos os programas estarão ativos o tempo todo ou precisarão de acesso simultâneo a essa RAM.

O sistema operacional aloca blocos de memória a programas chamados páginas . Se não houver RAM suficiente para armazenar todas as páginas de uma vez, as páginas com menor probabilidade de serem necessárias serão armazenadas no disco rígido mais lento (mas mais espaçoso). Quando as páginas armazenadas forem necessárias, elas trocarão espaços com menos páginas necessárias atualmente na RAM. Esse processo é chamado de paginação e empresta seu nome ao arquivo pagefile.sys no Windows.

A memória virtual facilita para os programas gerenciar sua própria memória e também os torna mais seguros. Os programas não precisam se preocupar com o local onde outros programas armazenam dados ou com quanta memória RAM resta. Eles podem apenas solicitar ao sistema operacional memória adicional (ou retornar memória não usada) conforme necessário. Tudo o que o programa vê é um único bloco contínuo de endereços de memória para uso exclusivo, chamado de endereços virtuais. O programa não pode examinar a memória de outro programa.

Quando um programa precisa acessar a memória, ele fornece ao sistema operacional um endereço virtual. O sistema operacional entra em contato com a unidade de gerenciamento de memória da CPU (MMU). A MMU traduz entre endereços virtuais e físicos, retornando essas informações ao sistema operacional. Em nenhum momento o programa interage diretamente com a RAM.

O que é ASLR?

O ASLR (Address Space Layout Randomization) é usado principalmente para proteger contra ataques de estouro de buffer. Em um estouro de buffer, os atacantes alimentam uma função com o máximo de dados indesejados que podem manipular, seguidos por uma carga maliciosa. A carga irá sobrescrever os dados que o programa pretende acessar. Instruções para pular para outro ponto no código são uma carga útil comum. O famoso método JailbreakMe de jailbreak do iOS 4, por exemplo, usou um ataque de estouro de buffer, levando a Apple a adicionar o ASLR ao iOS 4.3.

Estouros de buffer exigem que um invasor saiba onde cada parte do programa está localizada na memória. Descobrir isso geralmente é um processo difícil de tentativa e erro. Depois de determinar isso, eles devem criar uma carga útil e encontrar um local adequado para injetá-la. Se o invasor não souber onde seu código de destino está localizado, pode ser difícil ou impossível explorá-lo.

O ASLR trabalha junto com o gerenciamento de memória virtual para randomizar os locais de diferentes partes do programa na memória. Toda vez que o programa é executado, componentes (incluindo pilha, heap e bibliotecas) são movidos para um endereço diferente na memória virtual. Os invasores não podem mais saber onde o alvo está por tentativa e erro, porque o endereço será diferente a cada vez. Geralmente, os aplicativos precisam ser compilados com suporte a ASLR, mas isso está se tornando o padrão, e é até necessário no Android 5.0 e posterior.

Assim ASLR ainda protege você?

Na última terça-feira, pesquisadores da SUNY Binghamton and University da Califórnia, Riverside, apresentou um artigo chamado Jump Over ASLR: Preditores de Filiais Atacantes para Ultrapassar ASLR. O documento detalha uma maneira de atacar o Branch Target Buffer (BTB). O BTB é parte do processador que acelera as declarações, prevendo o resultado. Usando o método dos autores, é possível determinar os locais das instruções de ramificação conhecidas em um programa em execução. O ataque em questão foi realizado em uma máquina Linux com um processador Intel Haswell (lançado pela primeira vez em 2013), mas provavelmente poderia ser aplicado a qualquer sistema operacional e processador moderno.

Dito isto, você não deve necessariamente se desesperar. O artigo ofereceu algumas maneiras que os desenvolvedores de hardware e sistemas operacionais podem atenuar essa ameaça. Novas técnicas de ASLR de grão fino exigiriam mais esforço do invasor, e aumentar a quantidade de entropia (aleatoriedade) pode inviabilizar o ataque Jump Over. Provavelmente, os sistemas operacionais e processadores mais recentes estarão imunes a esse ataque.

Então, o que resta para você fazer? O desvio de Jump Over é novo e ainda não foi visto na natureza. Quando os invasores exploram, a falha aumenta o dano em potencial que um atacante pode causar em seu dispositivo. Esse nível de acesso não é sem precedentes; A Microsoft e a Apple implementaram apenas o ASLR em seus sistemas operacionais lançados em 2007 e posteriormente. Mesmo se esse estilo de ataque se tornar comum, você não ficará pior do que estava nos dias de Windows XP.

Lembre-se de que os invasores ainda precisam fazer com que o código deles no seu dispositivo cause algum dano. Essa falha não fornece nenhuma maneira adicional de infectar você. Como sempre, você deve seguir as práticas recomendadas de segurança. Use antivírus, fique longe de sites e programas esboçados e mantenha seu software atualizado. Ao seguir estas etapas e manter os agentes maliciosos fora do seu computador, você estará tão seguro quanto nunca esteve.

Crédito de imagem: Steve / Flickr


Como enviar mensagens de texto de seu PC com seu telefone Android

Como enviar mensagens de texto de seu PC com seu telefone Android

Você está sentado em seu PC e recebe uma mensagem de texto, então você pega seu telefone, desbloqueia, lê mensagem, e digite um de volta usando o minúsculo teclado touch screen. Por que não usar o seu PC? Se você já está sentado em seu computador, pode tirar proveito do teclado do seu computador para enviar e receber mensagens de texto.

(how-to)

5 gadgets impressionantes do Kickstarter vale a pena comprar

5 gadgets impressionantes do Kickstarter vale a pena comprar

Eu sou um grande fã do Kickstarter e agora é o lugar perfeito para eu ir ao comprar novos e inovadores gadgets tecnológicos. Já respaldoi mais de 60 projetos e, apesar de não ter amado ou usado tudo o que recebi do site, os gadgets que uso costumam usar o tempo todo agora. Se você é um geek ou técnico, o Kickstarter é um lugar incrível para encontrar algumas idéias interessantes que o tornam realidade em um período relativamente curto de tempo.Neste artig

(How-to)