Download - Invasao kernel.org
Invasão aokernel.org
Luiz Arthur
1
O trabalho “Invasão ao kernel.org” de Luiz Arthur F. dos Santos foi licenciado com uma Licença Creative Commons - Atribuição - NãoComercial 3.0 Não Adaptada.
Agenda:
- A invasão do kernel.org.
- Como a notícia foi recebida?
- Detalhes sobre a invasão.
- Como isto afetou a comunidade de software livre?
- Git.
- Conclusão.
2
A invasão do kernel.org:
- A Linux Foundation anunciou oficialmente, que em 28 de agosto de 2011, foi descoberta uma invasão ao sítio www.kernel.org (H-ONLINE, 2012).
- O ataque ocasionou (LINUXMAGAZINE, 2012):● Servidor com comportamento estranho, desde o inicio de
agosto de 2011;
● Reinicialização das máquinas;
● Panes no núcleo do Linux - “Kernel panics”;
- O sítio www.kernel.org ficou indisponível por vários dias.
3
Como a notícia foi recebida?
Pela imprensa:
“...o site Kernel.org, que é responsável pela infraestrutura de desenvolvimento do kernel do Linux...sofreu uma invasão em seus sistemas...pessoas da comunidade Linux classificaram como “embaraçosa”” (ROHR, 2012).
4
Como a notícia foi recebida?
Pelas pessoas em geral (MEIOBIT, 2012):
5
Qual é a sua opinião sobre esta notícia?
6
Detalhes sobre a invasão:
Como ocorreu realmente?
- Acesso a uma conta de usuário comum;
- Uso de algum exploit para escalar o usuário para root;
- Modificação de configurações do OpenSSH para acesso remoto irrestrito, ao servidor;
- Alteração dos arquivos de inicialização do Servidor (RIGA, 2012; PRINCE, 2012);
7
Detalhes sobre a invasão:
O que foi feito para corrigir o problema?
- O servidor passou por uma reinstalação completa;
- Cópias de segurança foram restauradas;
- Tentaram corrigir as falhas que levaram a invasão;
- Foi realizado uma análise para ver se o código fonte do Linux não foi comprometido;
- As autoridades competentes foram avisadas (RIGA, 2012; PRINCE, 2012).
8
Como isto afetou a comunidade de software livre?
Não houveram prejuízos relevantes a imagem do Linux.
A Linux Foundation comentou (CORBET, 2012):
● A invasão foi bem embaraçosa;
● O servidor www.kernel.org só disponibiliza o Linux, não é usado para desenvolvimento;
● Não existe necessidade de preocupação quanto ao fonte do Linux, o git garante isto!
9
“git” o salvador da pátria!
O git é um sistema de controle de versões/revisões distribuído (GITHUB, 2012).
Segundo Jonathan Corbet (Linux Foundation), graças a forma de controle do git é possível provar que o código do fonte Linux não foi alterado devido ao algoritmo hash SHA-1 utilizado.
Exemplo:
$ git log stat
commit 96c62c66b1e21b1f1033b2873255b95d4cc9205dAuthor: luizsantos <[email protected]>Date: Sat Feb 4 01:38:43 2012 0200
nova alteracao
INSTALL | 2 + 1 files changed, 1 insertions(+), 1 deletions()
10
“git” e o hash:
$ git lstree f48f250100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210 README
$ git lstree d963aca100644 blob 601d69be14f58ef949b684ffa2bf399b4f0a23d8 INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210 README
$ git lstree ef95a50100644 blob d39b77129f8e45440cbc629761f365705abe63ca INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210 README
$ git lstree 96c62c6100644 blob 48972d085cc410c6a4c03a35d1ff6a137e7f778a INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210 README100644 blob e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 file1
11
Primeiro commit:● SHA-1 do arquivo criado no
Repositório.
“git” e o hash:
$ git lstree f48f250100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210 README
$ git lstree d963aca100644 blob 601d69be14f58ef949b684ffa2bf399b4f0a23d8 INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210 README
$ git lstree ef95a50100644 blob d39b77129f8e45440cbc629761f365705abe63ca INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210 README
$ git lstree 96c62c6100644 blob 48972d085cc410c6a4c03a35d1ff6a137e7f778a INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210 README100644 blob e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 file1
12
Segundo commit:● criado o arquivo INSTALL;
● SHA-1 do README permanece igual, ou seja, o arquivo não foi alterado.
“git” e o hash:
$ git lstree f48f250100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210 README
$ git lstree d963aca100644 blob 601d69be14f58ef949b684ffa2bf399b4f0a23d8 INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210 README
$ git lstree ef95a50100644 blob d39b77129f8e45440cbc629761f365705abe63ca INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210 README
$ git lstree 96c62c6100644 blob 48972d085cc410c6a4c03a35d1ff6a137e7f778a INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210 README100644 blob e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 file1
13
Terceiro commit:● README continua inalterado (ver SHA-1);
● INSTALL foi alterado, pois o número SHA-1é diferente do commit anterior.
“git” e o hash:
$ git lstree f48f250100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210 README
$ git lstree d963aca100644 blob 601d69be14f58ef949b684ffa2bf399b4f0a23d8 INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210 README
$ git lstree ef95a50100644 blob d39b77129f8e45440cbc629761f365705abe63ca INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210 README
$ git lstree 96c62c6100644 blob 48972d085cc410c6a4c03a35d1ff6a137e7f778a INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210 README100644 blob e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 file1
14
Quarto commit:● INSTALL mudou mais uma vez;
● Foi incluído file1;● README continua intacto.
Conclusão:
- O ataque atingiu apenas o site que hospeda o núcleo do Linux e não os fonte do núcleo! (LEEMHUIS, 2012)
- Inicialmente o atacante utilizou engenharia social, escalada de privilégios e por fim deixou o servidor a merce dos crackers;
- Ao contrário de algumas notícias, não foram alterados o OpenSSH e os scripts de inicialização nos códigos fonte do núcleo Linux;
- O git mostrou-se uma excelente ferramenta para identificação de alterações não autorizadas em códigos (CORBET, 2011);
- O ocorrido mostra que não existem sistema 100% seguro! A segurança depende de fatores educacionais e humanos...
15
16
Referências:
H-ONLINE. Security breach at kernel.org. Disponível em: http://www.h-online.com/open/news/item/Security-breach-at-kernel-org-1334642.html Acessado em: Fevereiro de 2012.
LINUXMAGAZINE. Invasão no kernel.org. Disponível em: http://www.linuxmagazine.com.br/lm/noticia/invasaeo_no_kernelorg Acessado em: Fevereiro de 2012.
TORVALDS, Linus. Linux 3.1-rc5. Disponível em: https://lkml.org/lkml/2011/9/4/92 Acessado em: Fevereiro de 2012.
ROHR, Altieres. Ao completar 20 anos, Linux sofre ataque em site de desenvolvimento. Disponível em: http://g1.globo.com/tecnologia/noticia/2011/09/ao-completar-20-anos-linux-sofre-ataque-em-site-de-desenvolvimento.html Acessado em Fevereiro de 2012.
MEIOBIT. Servidores do Kernel do Linux hackeados, Repositórios Android fora do ar e isso nem é o pior. Disponível em: http://meiobit.com/91020/servidores-do-kernel-do-linux-hackeados-repositrios-android-fora-do-ar-e-isso-nem-o-pior/ Acessado em Fevereiro de 2012.
17
Referências:
HIGA, Paulo. Site do Kernel Linux é invadido por crackers. Disponível em:http://www.gemind.com.br/1509/site-kernel-linux-invadido/ Acessado em: Fevereiro de 2012.
PRINCE, Brian.Linux Souce Code Repository Kernel.Org Gets Hacked. Disponível em: http://www.securityweek.com/linux-source-code-repository-kernelorg-gets-hacked Acessado em: Fevereiro de 2012.
CORBET. The craking of kernel.org. Disponível em:http://www.linuxfoundation.org/news-media/blogs/browse/2011/08/cracking-kernelorg Acessado em: Fevereiro de 2012.
LEEMHUIS, Thorsten. Kernel Log: more detail on the kernel.org hack. Disponível em:http://www.h-online.com/open/features/Kernel-Log-more-details-on-the-kernel-org-hack-1371641.html Acessado em: Fevereiro de 2012.
GITHUB. Git Use's Manual (version 1.5.3 or newer). Disponível em: http://schacon.github.com/git/user-manual.html#git-concepts Acessado em: Acessado em: Fevereiro de 2012.