? Estouros de buffer , também conhecido como buffer overflows, pode causar instabilidade no sistema e pode levar a violações de segurança. Com várias possibilidades e métodos de exploração prejudiciais , os desenvolvedores buscam continuamente maneiras de proteger os sistemas de computador a partir desses excessos . Embora existam opções de proteção, cada um vem com suas vantagens e desvantagens ou fornecer apenas meios limitados de proteção. Tampão
Um buffer representa uma área específica , reservada na memória de um computador. Amortecedores armazenar informações temporariamente para programas e hardware, à espera de um pedido para usar ou transferir essa informação para outro dispositivo. Algumas peças de hardware , como impressoras , normalmente possuem um buffer único para uma operação mais rápida e mais eficiente. Normalmente, buffers armazenar informações que vêm de dispositivos de entrada , como um teclado, e envia a informação para outra peça de hardware no computador, como um monitor.
Superação
uma saturação de buffer ocorre quando um programa tentar gravar dados para o buffer excede os limites do buffer e sobrescreve a memória próxima vez . Como os programas usar vários pedaços de informações armazenadas na memória para executar corretamente , escrevendo sobre os dados necessários podem causar um programa para agir estranhamente ou mesmo acidente . Overruns geralmente ocorrem durante as ações que mudam o funcionamento do programa ou executar código novo.
Riscos
derrapagens buffer pode permitir criminosos para fazer alterações não autorizadas ao seu sistema . Estima-se que são responsáveis por quase 50 por cento das vulnerabilidades informáticas exploradas nos últimos 10 anos, estouros de buffer pode levar a computadores que executam comandos não intencionais , fornecendo privilégios de usuário para hackers e revelando dados sensíveis , tudo através da corrupção de memória perto do buffer. < Br >
idiomas vulneráveis
C e C + + continuam a ser as línguas mais vulneráveis a saturações de buffer , como eles não possuem nenhuma proteção contra a substituição de qualquer parte da memória . Essas línguas também não oferecem qualquer tipo de verificação para garantir que quando se escreve para o buffer que não invadida seus limites. No entanto, como C e C + + permanecem linguagens de programação comuns , o problema permanece. Várias empresas , como a Microsoft , patches de segurança de liberação periodicamente para seus programas para ajudar a evitar que tais violações de segurança.