[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

As distro sao inseguras



Pessoal,

Há uma vulnerabilidade de segurança grave na Debian, a qual já deveria
estar solucionada há tempos. Qualquer um de nós, até mesmo os
principais mantenedores, podem estar usando um pacote adulterado. A
situação é grave, merece uma força-tarefa para solucionar.

A atenção para o problema parece ter começado com este artigo:

http://slashdot.org/comments.pl?sid=24834&cid=2697504

Este artigo apresenta o problema do ponto-de-vista de uma prova
conceitual, no entanto pela gravidade acho que vale a pena analisar
o problema com pouco mais de profundidade.

Sendo mais claro, imaginemos o seguinte cenário:

1. Seu apt-get (ou dpkg, ...) está fazendo o download de um pacote.
   Este pacote pode já estar vindo adulterado do mirror, ou algum
   proxy no meio do caminho pode estar redirecionando URLs de .deb
   Um exemplo simples disto foi citado naquele artigo utilizando o
   Squirm, um redirecionador de páginas para Squid (Web proxy).
   http://squirm.foote.com.au/

2. O apt-get (assim como o dselect) é um front-end para o dpkg. O
   arquivo /etc/dpkg/dpkg.cfg não existe ainda no stable; e mesmo
   que existisse, ele atualmente inclui por default a opção
   no-debsig.  Isto significa que as assinaturas PGP dos pacotes não
   serão verificadas, ou seja, até o presente momento os pacotes são
   instalados sem verificação de autenticidade da assinatura PGP, e
   sem verificação de integridade do pacote assinado. Mas a situação
   está tão ruim neste aspecto, que a maioria dos pacotes atuais
   não são sequer assinados (por isto a opção no-debsig é default!).

Quem já trabalhou com PGP sabe que qualquer um pode criar um par de
chaves que supostamente seriam, por exemplo, as chaves de um
conhecido desenvolvedor. Aí vêm a maioria dos desenvolvedores
e diz: você pode instalar o pacote debian-keyring e terá as chaves
públicas dos principais mantenedores, os quais podem ir assinando
alterações dos pacotes com o aplicativo debsign (do devscripts.deb).
Mas próprio pacote debian-keyring pode estar adulterado, e deixar para
o usuário checar todas aquelas chaves uma-por-uma *não* é solução
mesmo!

A meu ver, uma solução razoável passaria pela uso da Web of Trusting
das chaves (tipo assim, a sua chave é assinada por estes fulanos em
que eu confio, logo vou confiar na sua chave também). Daí é que vem
a importância de se aproveitar eventos para se criar uma sessão de
assinatura de chaves públicas entre os participantes (análogo ao que
fizemos na última reunião do GT-ER: http://registro.br/gter13/). Aliás,
dentre muitos outros assuntos interessantes, na última reunião da
Debian-SP foi bem-vinda a sugestão de criarmos uma sessão de
assinaturas para a nossa próxima reunião.

Algumas sugestões têm aparecido na debian-security, inclusive com
referências à Conectiva, única distribuição que tentou fazer algo
no sentido de assinar seus pacotes, mas que a meu ver ainda não é
ainda uma solução para o problema (pelo menos rendeu alguns elogios à
nossa conterrânea), pois, apenas garante integridade dos pacotes sem
garantir a autenticidade de quem gerou a assinatura.

Proposta: poderíamos trabalhar em conjunto numa solução, testar
entre nós, e exportar a sugestão para debian-security. Podemos
não resolver todos os problemas, mas acho que é hora de uma
força-tarefa.

Até mais,

Antonio Augusto de Cintra Batista <antonio@CintraBatista.net>
ISO - Security Officer
Diveo



Reply to: