Os programas no Ubuntu Software Center são livres de spyware?


35

No Ubuntu Software center, existem seções diferentes para programas

  • Fornecido pelo Ubuntu
  • Parceiros canônicos
  • Para compra

Eu sei que todos esses são de código aberto; mas existe algum processo de validação feito pela Canonical para garantir que eles estejam livres de spyware ou malware ?

Gostaria de saber se alguém terá tempo para olhar para todos esses (2355 programas ou mais a partir de agora), código de software que também para cada versão!

Estou preocupado porque eu instalo rotineiramente um software pouco popular do centro de software :)


1
O software "For Purchase" não é de código aberto, caso contrário, as pessoas não precisariam comprá-lo. E o Partner Software nem sempre é de código aberto, o Skype não é aberto, por exemplo,
Martin Ueding

8
@queueoverflow é possível cobrar pelo software de código aberto.
dv3500ea

3
@queueoverflow: qtiplot seria um exemplo, cobranças por binários e contratos de suporte, você pode compilar-se gratuitamente. :-)
Christoph

2
Bem, acho que não há atualmente nenhum software de código aberto na seção Para compra, mas pode haver no futuro.
dv3500ea

1
@christoph: Presumo que a maioria das pessoas não sabe compilá-lo, por isso faz sentido lidar com isso dessa maneira.
Martin Ueding 19/06/11

Respostas:


27

Existe um processo para garantir que não haja malware? Não . Não há garantias.

Existem, no entanto, vários mecanismos para tentar detectá-lo, mas embora eu não queira ficar muito triste, se formos honestos, você provavelmente não é tão seguro quanto gostaria de ser.

  1. Um projeto primeiro precisa ser adicionado ao Ubuntu. Como Rinzwind diz, as verificações são feitas nesta fase, mas essa é realmente apenas a ponta do iceberg que é a vida de um pacote no Ubuntu.

  2. A primeira linha de defesa real para pacotes de longo prazo são os mantenedores do projeto. Essas pessoas cuidam de seus projetos e aceitam patches para melhorá-los. Eles são humanos. Eles cometem erros e perdem as coisas. E alguns podem ser preguiçosos.

    É possível que uma pessoa má possa roubar algum malware, incluindo melhorias genuínas junto com o malware.

    Se algo ruim for admitido em um projeto pelo mantenedor, salve uma auditoria bem-sucedida, as chances são de que o código acabe nas máquinas dos usuários do Ubuntu.

  3. As auditorias de segurança são o segundo passo. Isso está examinando o código e executando-o em monitores para detectar coisas ruins. Até onde eu sei, não há uma equipe oficial da Canonical dedicada à segurança, mas existem duas equipes da comunidade (Ubuntu Security e MOTU SWAT) que lidam com todos os pacotes entre elas.

    A auditoria realmente funciona se todas as linhas de código forem verificadas corretamente antes de serem enviadas aos usuários. Isso não é realmente prático para a quantidade de código e o número de atualizações sobre as quais estamos falando. Levaria uma quantidade enorme de tempo e dinheiro para fazer dessa maneira.

    Há uma suposição no mundo do código aberto que apenas porque alguém pode ver a fonte, eles têm. Este é um ethos muito perigoso de manter.

    As correções de segurança são amplamente reacionárias às pessoas que encontram e divulgam falhas. O que acontece se alguém revela um buraco que encontra?

  4. Outros "usuários finais" que relatam problemas é o mecanismo final de detecção real e, para ser sincero, um bom malware não permitirá que o usuário saiba que há um problema até que seja tarde demais para fazer a diferença. Malwares bem escritos não vão virar a tela ou roubar toda a sua largura de banda, ficam no fundo, registrando todos os seus dados bancários antes de publicá-los em algum lugar anônimo.

Todo o processo depende de projetos upstream para manter seus próprios níveis de segurança. Se alguém passou por cima do mantenedor da calculadora Gnome, as chances são de que ele seja esquecido por todo mundo na fila. Uma equipe de segurança também nunca suspeitará disso.

Felizmente, a maioria dos mantenedores é boa no que faz. Eles conhecem sua base de código e, se não entenderem os patches, os rejeitarão com base em que não estão suficientemente claros.

Em termos de avaliação de risco, usando algo muito menos popular, provavelmente há menos olhos verificando o código. Mas, da mesma forma, provavelmente há menos confirmações, portanto, enquanto o mantenedor não for preguiçoso (ou mau), eles poderão ter mais tempo para lidar com cada confirmação. É difícil dizer exatamente quanto risco você tem. A segurança do software de código aberto depende de pessoas capazes olhando o código.

Por outro lado, os itens de código-fonte fechado (no parceiro e nos acordos de compra) são completamente não auditados pela comunidade. A Canonical pode ter algum acesso à fonte, mas, sinceramente, duvido que eles tenham os recursos para realizar auditorias completas, mesmo que tivessem acesso à fonte e quisessem.

Da mesma forma com os PPAs, você recebe muito pouca proteção, a menos que queira mergulhar na fonte. Os usuários podem adicionar o que quiserem ao código-fonte e, a menos que você mesmo verifique (e seja capaz de detectar malware), você é uma ovelha cercada por lobos. As pessoas podem relatar PPAs ruins, mas algo está acontecendo depende de outras pessoas verificarem e confirmarem o problema. Se um site grande (por exemplo, OMGUbuntu) recomendou um PPA (como costumam fazer), muitos usuários podem ter problemas na linha.

Para agravar o problema, a menor participação de mercado do usuário do Linux significa que há apenas menos software disponível para caçar códigos incorretos. Eu odeio dizer isso, mas pelo menos no Windows, você tem dezenas de empresas gastando todos os dias úteis, descobrindo como um software ruim funciona, como detectá-lo e como removê-lo. Esse era um mercado nascido da necessidade e, embora eu odeie dizer isso também, as coisas provavelmente vão piorar aqui antes de melhorarem.

Para os paranóicos de segurança, escrevi um pequeno artigo há pouco: o Linux não é invulnerável. Não diga que é. . A entrada de objetos no repositório provavelmente não será o principal vetor de ataque dos grupos que distribuem malware. É muito mais provável (IMO) que eles usem a ganância e a estupidez dos usuários para fazê-los instalar os .debs infectados.


3
O bom dos repositórios examinados é que eles geralmente são ordens de magnitude mais seguras do que a instalação de software em um modelo que não é de repositório, como instalar qualquer coisa de um exe. Então, sim, você nunca está seguro. Mas geralmente você provavelmente está mais seguro.
Kzqai

Você quis escrever O que acontece se alguém revelar um buraco que encontrou ?
tshepang

25

Sim. Os pacotes são verificados pela comunidade (portanto, pode-se instalar algum malware, mas essas notícias se espalharão rapidamente entre todos os usuários).

Os aplicativos precisam obedecer a regras muito rígidas descritas no licenciamento .

A página wiki para novos pacotes tem um pouco mais de informação:

Passando pelo MOTU

Pacotes que ainda não estão no Ubuntu exigem um exame extra e passam por um processo de revisão especial, antes de serem carregados e receber uma revisão final pelos administradores do arquivo . Mais informações sobre o processo de revisão, incluindo os critérios que serão aplicados, podem ser encontradas na página Revisores de Código . Os desenvolvedores são incentivados a examinar seus próprios pacotes usando essas diretrizes antes de enviá-los para revisão.

Para receber relatórios de erros de alta qualidade, escreva um gancho apport para o seu pacote.

Dito isto: a ideia geral é. Se você achar algo suspeito, denuncie-o na barra de lançamento, askubuntu, ubuntuforums e alguém irá buscá-lo.

O que poderia acontecer é que um criador de malware cria um pacote válido, aceita e depois faz uma atualização que adiciona o malware. Pelo menos um dos muitos sempre pega isso e ele / ela relatará isso em algum lugar. Não vai entrar em muitas máquinas dessa maneira. (o esforço de colocá-lo em nossas máquinas é demais para a recompensa em potencial: segmentar máquinas Windows é muito mais fácil).

Exemplo de coisas terrivelmente erradas com o zangão . Alguém perdeu um espaço e / usr foi excluído ... algumas pessoas foram afetadas, 1 posta um aviso com bandeiras vermelhas e agora todos sabemos. O criador corrige (mais rápido que a velocidade da luz), mas o dano foi causado a vários sistemas. E isso foi um erro e não deliberado para que isso aconteça;)


4
Deve-se notar que há algum risco envolvido com outras fontes que se integram ao Ubuntu Software Center, como Getdeb ou vários PPAs. No entanto, se você não os usar, deve estar seguro.
perfil completo de jnv

@jnv boa chamada :) eu mudei a 1ª linha e isso inclui agora APPs também;)
Rinzwind

O seu exemplo é inválido. zangão não está presente nos repositórios.
Lincity

Discordo. Qualquer coisa que seja instalada é avaliada igualmente: os usuários fazem a verificação para que seja um exemplo válido de algo acidentalmente errado! Portanto, fazê-lo de propósito também é possível, mas o foco é nos usuários dizerem aos outros que há uma falha. Não a própria falha;)
Rinzwind

a pergunta era sobre o centro de software.
Lincity

5

Presumo que ninguém possa lhe garantir isso. Você teria que verificar o que tem que acontecer para que um pacote seja adicionado ao índice de pacotes Debian, mas acho que você deve ser capaz de inserir algo ruim nele.

Você pode configurar uma máquina virtual e experimentar o software lá; depois, pode examinar o tráfego da rede com algo parecido iftopcom o de ver se esses aplicativos conversam com a residência. As chances são de que você nunca verá nada porque está oculto demais.

Código aberto não significa segurança, apenas porque você pode ver o código não significa que alguém o fez.


2

Para publicar o código em um PPA na barra de ativação, você precisa configurar o openPGP e criar uma chave anexada a um endereço de email. Para assinar um pacote, você precisa de uma cópia da chave privada na máquina local e da senha (que não está armazenada em nenhum lugar). Se um pacote tiver problemas de segurança, deve ser relativamente fácil rastrear o autor. Estou assumindo que os principais repositórios do Ubuntu e Debian são pelo menos tão seguros.

A maioria dos projetos de código aberto possui um repositório central com pelo menos proteção no nível ssh (senha e / ou par de chaves pública / privada). Obter acesso não autorizado aqui é um pouco mais fácil que o ppa, mas não é trivial. Os sistemas de controle de versão geralmente registram o usuário que faz cada confirmação e facilita bastante descobrir exatamente o que uma confirmação faz.

Pode-se sempre tentar colocar algo em um patch, mas essa é uma proposta arriscada. A maioria dos codificadores não aceita um patch grande demais para ser facilmente lido. Se você for pego, é praticamente isso.

Ainda há uma certa quantia que resta para confiar, portanto é possível que alguém possa colocar spywares no Ubuntu. Talvez seja algo que tenhamos que nos preocupar se a participação de mercado do Ubuntu aumentar significativamente.


Uma chave GPG pode ser composta por qualquer pessoa. Eu poderia configurar uma máquina virtual, gerar uma chave com um nome falso e ninguém seria o mais sábio. Você precisa procurar a rede de confiança para realmente julgar o GPG, e mesmo isso não é canônico.
Martin Ueding
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.