Informática
"Segurança na Internet "
É incrível como as pessoas não dão a importância devida aos seus sistemas no quesito "segurança"! Existem muitos responsáveis por sistemas de computação que, quando ouvem falar em segurança, pensam em contratar um negão fortemente armado para tomar conta dos seus computadores. Outros se limitam à backups e sistemas de no-break (não que isso não seja importante, mas não chega nem perto de ser o suficiente). A informação que percorre a empresa pode ser (e geralmente é) tão ou mais importante do que qualquer bem material, e muitas vezes é crucial para as tomadas de decisões em relação à todas as suas atividades, desde o melhor fornecedor para sua matéria-prima, até o método de publicidade mais vantajoso para seu negócio. Isso, caindo nas mãos de outras empresas do mesmo ramo, é como entregar o ouro ao bandido.
Foi estatisticamente provado que a maioria dos "ataques" sofridos pelas empresas que não estão diretamente ligadas à informática são feitos por ex-funcionários; em segundo lugar estão os espiões industriais, ou hackers profissionais. Por isso, relaciono aqui alguns cuidados que você deve tomar ao participar (não somente como responsável, mas principalmente como usuário) de um sistema de computação.
O Problema das Senhas:
Não gosto de dar (nem de receber) opiniões sem justificativas. Portanto, prepare-se para mais uma chata explicação técnica sobre invasão de sistemas. Vamos citar o exemplo dos sistemas Unix: todo usuário deste sistema precisa de uma senha. Alguns usuários possuem níveis maiores, onde podem fazer muitas coisas; outros, níveis menores, onde não podem fazer quase nada. Você sendo o responsável por um sistema desses, jamais daria um tipo de acesso "liberal demais" para um irresponsável (que não tem responsabilidades para com o sistema), mas todos eles possuem acesso ao arquivo de senhas, que é um arquivo geral que contém as senhas de todos os usuários. Então, o fulano irresponsável que possui um nível baixo pode pegar uma cópia deste arquivo e tentar descobrir a senha de usuários com um nível maior. A senha, evidentemente, é codificada e não pode ser lida de forma alguma depois da codificação. Não existe maneira de se recuperar a senha original apenas com o resultado de sua codificação no arquivo de senhas. Então, como o sistema faz para saber se a senha que o usuário digitou está correta? Toda vez em que o usuário tentar entrar no sistema, a senha que ele digitar é codificada, e o resultado comparado com o que consta no arquivo de senhas. Se for igual (o calculo de codificação é sempre o mesmo) então o acesso àquele usuário é liberado. Piorou! Como é então que o fulano vai fazer para descobrir as senhas de outros usuários? Simples: ele codifica uma palavra, se o resultado for igual ao código constante do seu arquivo de senhas, ele sabe, por referência, qual a palavra (senha) que deve ser utilizada. Então ele deve tentar várias palavras até encontrar alguma que se encaixe na codificação? Exatamente! E é aqui que entramos no mérito de "Como escolher sua senha":
Imagine se todas as senhas fossem numéricas, de apenas 4 dígitos? Seria muito simples criar um arquivo que contivesse todas as combinações possíveis dos números em 4 posições diferentes. Pronto o arquivo, codifica-se cada uma delas, depois é só comparar para ver qual a senha de cada usuário e correr para o abraço. Acontece que, nenhum sistema sério utiliza regras tão falhas para as senhas. Muitos, inclusive, proíbem até o uso de palavras que existam no dicionário. Assim se evita que algum fulano codifique um arquivo contendo palavras do dicionário e descubra as senhas. Agora, você já deve concordar comigo que, quando maior em comprimento e mais variados forem os caracteres da senha, melhor. Não?
É uma pena eu ser tão ruim em matemática e análise combinatória, senão lhe mostrava os cálculos na ponta do lápis. Mas imagine só: o que é maior, um arquivo contendo a combinação de todas as letras minúsculas formando palavras de no máximo 6 letras, ou um arquivo contendo a combinação de todas as letras minúsculas, maiúsculas (são diferentes), números, e símbolos (como vírgula, ponto, hífen, asterisco etc.) formando palavras de no máximo 8 letras? Assuma que cada letra deste arquivo ocupará 1 byte, que tamanho ele terá? Sem falar no tempo que se leva na criação, codificação e comparação com o arquivo de senhas. Todo o processo é automatizado, mas mesmo assim leva muito, muito tempo. Outro dia desses, eu estava criando um arquivo (para fins de estudos, evidentemente) com apenas letras minúsculas e números, formando palavras de 4 à 6 letras (experimente você mesmo com o Dict). Deixei o computador ligado e fui dormir. Acordei lá pelas 4:00am para ver à quantas andava o processo e ele tinha sido interrompido. Qual o problema? O espaço do disco tinha acabado. Era só 1Gb que eu tinha disponível, e o arquivo não chegou nem na metade. A documentação do Starcrack (um dos programas mais completos para codificação e comparação de senhas, mas que nem morto eu disponibilizo aqui), feita em 1996, assume uma semana como tempo médio para criação e codificação de senhas de 8 caracteres simples (letras e números) utilizando um Pentium 120MHz, com 16Mb de ram.
A Engenharia Social:
Por mais extraordinário que possa parecer, o método mais simples, mais usado e, infelizmente, mais eficiente de se descobrir uma senha é... adivinha? Perguntando!!! É sério... Basta alguém de boa lábia perguntar a um funcionário despreparado que ele solta a língua. Pode não ser a senha, mas ele vai contar o tipo de sistema, o tipo de computador, e o que mais ele ver pela frente. Tudo vai depender de quão bom é o "Engenheiro Social", e quantos conhecimentos sobre a empresa ele possui.
Se você já ligou para uma central de atendimento de cartão de crédito, já deve ter percebido que o método usado para se certificar de que é você mesmo quem está do outro lado do telefone, e não outra pessoa, é extremamente falho. Uma certa vez consegui minha senha para saques em bancos 24 horas sem precisar dar nenhuma prova concreta de que era realmente eu quem estava recebendo esta informação fundamentalmente sigilosa... Se quiser saber a história completa me mande um e-mail. Ok, ok... Não sou Forrest Gump, mas tenho minhas historinhas... hehehe
Preste atenção no tipo de informação que sai da empresa, nos papéis jogados no lixo e na entrada da pessoas estranhas. Um prato cheio para se praticar a engenharia social é encontrar um organograma da empresa. A partir daí, o intruso vai saber exatamente com quem está falando, podendo se fazer passar, inclusive, por um chefe seu. O legendário hacker Kevin Mitnick aprontava muito das suas desta maneira. Um dos casos mais interessantes foi quando ele e seus amigos resolveram aprontar com uma certa empresa (que não importa o nome). Primeiro eles fizeram um "cavalo de troia" que permitiria entrar do sistema da empresa, o embalaram de forma idêntica aos produtos originais como se fosse um up-grade de software, e entregaram na própria empresa (estavam disfarçados de carteiros, pois se mandassem pelo correio configuraria fraude postal). Só que o pessoal da empresa sequer se preocupou em efetuar o tal "up-grade". O jeito foi voltar à empresa à noite, e após convencer o segurança de que tinham um relatório importantíssimo para terminar, conseguiram entrar e puderam vasculhar tudo, recolher cópias de programas, informações sobre a empresa, e entre outras coisas, implantar algumas informações em cadernos telefônicos de secretárias. Depois disso, era muito fácil, por exemplo, dizer o que estava escrito em certo caderno e pedir para que lessem o resto... Também teve a vez em que Kevin queria saber se sua linha telefônica estava grampeada, e simplesmente ligou para central fingindo ser um técnico de lá (ele sabia os jargões usados na área), perguntou pelo próprio número e foi tiro e queda: a pessoa abriu o jogo para ele...
Fique de Olho nas Novidades:
Se você é o responsável por um sistema de computação, durma de olhos abertos quando o assunto for a segurança dos seus usuários. A toda hora estão descobrindo falhas e remendando buracos, mas para que você se atualize em tempo hábil, é preciso acompanhar sempre as últimas novidades da área, consultando os fornecedores, participando de grupos de discussão e ajudando o próximo. Forme uma comunidade "pró-segurança" e deixe de lado o pensamento de que esses problemas só acontecem com os outros. Afinal de contas, um sistema produtivo não pode ficar vulnerável a nenhum tipo ataque, e se nós batalharmos neste sentido, os computadores vão oferecer cada dia mais soluções seguras e um mundo mais tranqüilo de se viver.
Copyright © 2004 Inc. Todos os direitos
são reservados a Target tecnology.