Friday, April 23, 2010

Código Aberto, Segurança e o Google

Pois bem, aparentemente está compreendido como as contas dos ativitistas políticos chineses puderam ser invadidas. Os detalhes ainda não foram reconhecidos oficialmente pelo Google, mas vazaram no NYT. Um funcionário com acesso ao repositório das aplicações de core teria tido sua estação de trabalho infectada por um cavalo de Tróia, e o vetor propagador teria sido o MSN messenger. É o velho golpe do link contaminado, manjado há tempos mas ainda muito eficaz por fazer uso de técnicas psicológicas que apelam para um traço essencial da natureza humana, a curiosidade. Neste caso, bastou mirar no alvo certo.

Como o(s) cracker(s) tiveram acesso ao programa que controla o login simultâneo à diversos serviços do Google, puderam destrinchá-lo e descobrir falhas que não eram conhecidas nem pelos próprios arquitetos/programadores do Google. Esse é precisamente o ponto que vou explorar neste artigo: os invasores descobriram as falhas antes da corporação.

O Google é declaradamente uma empresa que fomenta as soluções baseadas em tecnologia de código aberto, basta constatar que baseia suas maiores apostas para o futuro (Android e ChromeOS) nos kernels do Linux.

Contudo, a "jóia da coroa", que foi roubada no incidente citado aqui, não é uma solução de código aberto. Ela pode até se basear em plataformas e linguagens abertas, mas a solução em sí é proprietária, tanto que o Google declarou que "houve roubo de propriedade intelectual" no incidente com os crackers chineses. O que é absolutamente compreensível do ponto de vista corporativo, afinal, quem em sã consciência tornaria público os detalhes da arquitetura do sistema que abriga a senha de seus usuários?

Meus caros, pois estamos diante de mais um paradigma à ser quebrado por esses novos tempos de tecnologia colaborativa. A principal vantagem das soluções abertas é dispor da maior estrutura de testes e validação de que se tem notícia na história da tecnologia. Qualquer um que conheça o processo de desenvolvimento de software sabe da importância desta etapa no ciclo. A imensa maioria dos membros de uma comunidade de desenvolvimento aberta não deseja fazer uso irresponsável da informação quando descobre uma falha, ao contrário, normalmente o que se observa é um esforço enorme para alertar os responsáveis e precipitar a solução do problema. Isso obriga os programadores e mantenedores da solução à remediá-las o mais rapidadamente possível, ao mesmo tempo em que informa os administradores do risco potencial à que estão expostos para que possam adotar soluções de contorno até que se tenha uma correção definitiva. Entenda-se que não existe realmente uma "solução definitiva" em termos de segurança em TI - existe na verdade um processo de evolução constante. Tampouco é correto afirmar que conhecendo-se os detalhes de uma arquitetura de segurança seja possível quebrá-la. O "elo fraco" desta corrente será sempre muito mais provavelmente o caráter humano, como nos mostra o incidente em questão.

Ainda que seja uma das empresas mais inovadoras do mundo, neste caso, o Google fez o que o senso comum esperava, e adotou uma solução proprietária de controle de acesso. Não se pode dizer que foi um erro estratégico, afinal seus próprios arquitetos/programadores poderiam ter identificado préviamente as falhas que foram identificadas pelos invasores. Mas haja recurso para simular internamente o poder de teste das comunidades de desenvolvimento abertas.

No comments:

Post a Comment

deixe sua opinião