invasao kernel.org

18

Click here to load reader

Upload: luiz-arthur

Post on 24-May-2015

865 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 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.

Page 2: Invasao kernel.org

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

Page 3: Invasao kernel.org

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

Page 4: Invasao kernel.org

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

Page 5: Invasao kernel.org

Como a notícia foi recebida?

Pelas pessoas em geral (MEIOBIT, 2012):

5

Page 6: Invasao kernel.org

Qual é a sua opinião sobre esta notícia?

6

Page 7: Invasao kernel.org

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

Page 8: Invasao kernel.org

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

Page 9: Invasao kernel.org

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

Page 10: Invasao kernel.org

“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

Page 11: Invasao kernel.org

“git” e o hash:

$ git ls­tree f48f250100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210    README

$ git ls­tree d963aca100644 blob 601d69be14f58ef949b684ffa2bf399b4f0a23d8     INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210     README

$ git ls­tree ef95a50100644 blob d39b77129f8e45440cbc629761f365705abe63ca     INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210     README

$ git ls­tree 96c62c6100644 blob 48972d085cc410c6a4c03a35d1ff6a137e7f778a    INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210    README100644 blob e69de29bb2d1d6434b8b29ae775ad8c2e48c5391    file1

11

Primeiro commit:● SHA-1 do arquivo criado no

Repositório.

Page 12: Invasao kernel.org

“git” e o hash:

$ git ls­tree f48f250100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210    README

$ git ls­tree d963aca100644 blob 601d69be14f58ef949b684ffa2bf399b4f0a23d8     INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210     README

$ git ls­tree ef95a50100644 blob d39b77129f8e45440cbc629761f365705abe63ca     INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210     README

$ git ls­tree 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.

Page 13: Invasao kernel.org

“git” e o hash:

$ git ls­tree f48f250100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210    README

$ git ls­tree d963aca100644 blob 601d69be14f58ef949b684ffa2bf399b4f0a23d8     INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210     README

$ git ls­tree ef95a50100644 blob d39b77129f8e45440cbc629761f365705abe63ca   INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210     README

$ git ls­tree 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.

Page 14: Invasao kernel.org

“git” e o hash:

$ git ls­tree f48f250100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210    README

$ git ls­tree d963aca100644 blob 601d69be14f58ef949b684ffa2bf399b4f0a23d8     INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210     README

$ git ls­tree ef95a50100644 blob d39b77129f8e45440cbc629761f365705abe63ca   INSTALL100644 blob c1f915c53d33d41188a9539b9bd16ac6046b7210     README

$ git ls­tree 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.

Page 15: Invasao kernel.org

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

Page 16: Invasao kernel.org

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.

Page 17: Invasao kernel.org

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.