Posts Tagged ‘Segurança’

PostHeaderIcon Como copiar sua chave SSH mais rapidamente.

Resolver problemas remotamente utilizando SSH é um recurso presenta no dia-a-dia dos sysadmins, desenvolvedores e até usuários mais avançados de ambientes Unix/Linux. Aliás, esse é um recurso seguro e muito útil, não é mesmo? Com isso, é comum que, ao longo de suas atividades diárias, um usuário que se vale desse recurso necessite abrir sessões SSH em muitas máquinas. Obviamente que a criptografia inerente ao protolo SSH não evita a existência de um processo de autenticação. São recursos de segurança complementares. Portanto, da maneira tradicional, cada abertura de sessão SSH necessita que o usuário insira uma senha. Com o tempo, principalmente para quem costuma fazer dezenas de sessões SSH diariamente, essa pode ser uma tarefa cansativa, não é mesmo?

Para evitar isso, o protocolo SSH possui um recurso muito interessante: a autenticação por meio de chaves públicas, que evita a necessidade de prover senhas durante a abertura de sessões SSH em máquinas remotas onde a chave pública do usuário já foi previamente copiada. Normalmente, esse processo se dá através da criação de um par de chaves criptográficas por meio do comando ssh-keygen, conforme apresentado no exemplo a seguir:

jansen@scadufax $ ssh-keygen -t dsa

Nesse caso, um par de chaves (pública e privada) está sendo criado usando-se o algorimo DSA. As chaves privada e pública, recém-criadas, são gravadas, nesse caso, nos arquivos id_dsa e id_dsa.pub, respectivamente, e ficam localizadas no diretório .ssh, dentro do home do usuário. Para se valer do recurso de não precisar prover senhas é preciso, então, copiar a chave pública para o arquivo .ssh/authorized_keys nos diretórios home dos usuários remotos, usando-se, por exemplo, o seguinte comando:

jansen@scadufax $ scp ~/.ssh/id_dsa.pub jsena@smeagol:~/.ssh/authorized_keys

Nesse caso, quando o usuário jansen, a partir da máquina scadufax, tentar abrir uma sessão SSH com o usuário jsena na máquina smeagol, nenhuma senha será necessária. O processo de autenticação se dará através das chaves criptográficas. Até nenhuma novidade, certo? Entretanto, imagine que mais de um usuário deseje acessar a conta jsena na máquina smeagol. Pode até ser a mesma pessoa utilizando um par de chaves criptográficas diferentes do anterior, gerado, por exemplo, em outro computador. Nesse caso, se o mesmo procedimento anterior for utilizado, o arquivo authorized_keys, que já contém a chave pública de outro usuário, será sobrescrito, passando a invalidar o acesso cadastrado anteriormente. Para evitar esse problema, a partir do segundo usuário, seria necessário adotar outros procedimentos para a cópia da chave-pública de forma a não sobrescrever o conteúdo já existente no arquivo authorized_keys.

Para facilitar esse processo, existe um utilitário chamado ssh-copy-id que é desconhecido por uma parcela considerável dos usuários de SSH. Essa pequena ferramenta resolve esse problema da cópia de diversas chaves para um mesmo arquivo authorized_keys:

jansen@scadufax $ ssh-copy-id jsena@smeagol

Caso seja necessário copiar outras chaves para acessar a conta jsena na máquina smeagol, basta utilizar o mesmo comando. Caso um mesmo usuário tenha mais de um par de chaves (sim, isso é possível), pode-se indicar quais delas se deseja copiar para a máquina remota:

jansen@gandalf $ ssh-copy-id -i .ssh/id_rsa.pub jansen.sena@boromir

Simples, não? Bem, acho que é isso.

IMPORTANTE: Para que o mecanismo de autenticação através de chaves públicas funcione corretamente, é necessário que o servidor SSH esteja configurado para tal. Mas isso é assunto para outro momento!

PostHeaderIcon Você ainda apaga arquivos com o “rm”? Removendo arquivos de maneira segura com o shred.

Remover arquivos faz parte da rotina diária de qualquer usuário de um sistema operacional, não é mesmo? Provavelmente você deve fazer isso algumas dezenas de vezes ao longo de um dia de trabalho em frente ao computador. Caso um arquivo qualquer (como uma ISO de um sistema operacional, por exemplo) esteja sendo apagado simplesmente para liberar espaço em seus meios de armazenamento, que mal há utilizar o bom e velho “rm”? Por outro lado, tenho a impressão de que você não gostaria de saber que aquele script que contém todas as suas regras de firewall, por exemplo, ou qualquer outro arquivo com alguma informação sensível pode cair em mãos erradas se você confiar no apenas no “rm”.

Bem, primeiramente, permita que eu me desculpe por ‘descortinar’ essa verdade caso você ainda achasse, até o parágrafo anterior, que um “rm -f” era um comando forte e com tanta ‘personalidade’ ao ponto de mandar pro espaço qualquer arquivo ou diretório. O fato é que ao remover um arquivo com esse comando o sistema operacional, em poucas palavras, simplesmente retira os “ponteiros” para os blocos de dados que formavam o arquivo. Por outro lado, esses blocos estão lá em seu HD e podem, com a ajuda de algumas ferramentas, ser recuperados. Provavelmente esses blocos irão ser sobrescritos apenas quando novos arquivos forem utilizando aqueles mesmos espaços e isso pode demorar um tempo bastante considerável principalmente se o computador em questão não tiver operações um fluxo de gravação de arquivos muito intenso.

E, antes que você se pergunte, mas quem pode ter acesso ao meu HD? Bem, fácil. Seu computador pode ser invadido através da Internet, você pode perdê-lo, você pode ser roubado, você pode vendê-lo ou você pode mandá-lo para uma assistência técnica para consertar um problema, por exemplo. Enfim, são muitas as possibilidade, não é verdade? Pior ainda quando se está falando dos pequenos e portáteis pen drives que carregamos conosco o tempo todo para todo lugar. Quando é possível, pode-se utilizar os sistemas de arquivos criptografados. Entretanto, em situações onde não é possível utilizar essas soluções, é preciso tomar cuidado para garantir que arquivos sensíveis foram, de fato, removidos.

Read the rest of this entry »

PostHeaderIcon Criando um sistema de arquivos criptografado no GNU/Linux.

O aumento da capacidade de armazenamento dos meios de armazenamento (HDs, pen drives, cartões de memória, etc) e a redução drástica nos preços desses equipamentos mantém uma relação proporcional ao nível de dependência, cada vez maior, diga-se de passagem, que os usuários (e suas corporações) possuem com relação às informações preservadas nesses dispositivos. Hoje, pequenos pen drives possuem muito mais espaço de armazenamento do que servidores inteiros de alguns anos atrás. Discos com terabytes de capacidade podem ser adquiridos na maioria das lojas de informática a preços bem acessíveis. Some-se a isso o fato desses meios de armazenamento estarem menores e , portanto, “perambulando” em bolsas, bolsos, mochilas, pastas, dentre outros.

Essas facilidades, entretanto, aumentam em muito a possibilidade de se perder esses equipamentos ou mesmo tê-los furtados por outra pessoa. Ainda que sejam arquivos de natureza pessoal, tais como fotos, e-mails e outros documentos, a maioria das pessoas não gostaria de ver esses arquivos em mãos erradas, não é mesmo? Trocando o contexto para o meio corporativo, o comprometimento de informações pode inviabilizar projetos, negócios, estratégias e até a própria sobrevivência da instituição. Por outro lado, são poucas as pessoas e as instituições que têm implementados mecanismos que possam proteger as informações contra a perda ou o roubo dos meios de armazenamento. A grande maioria prefere sofrer com o arrependimento e com as lamentações quando perdem seus dados e os deixam expostos sem qualquer proteção para evitar que os mesmos sejam acessados (e explorados) livremente.

A boa notícia é que existem recursos muito simples para instalar e configurar alguns mecanismos e ferramentas para melhorar a confidencialidade de suas informações. Dentre os diversos recursos e ferramentas disponíveis, uma das mais eficazes são os sistemas de arquivos criptografados e, em ambientes GNU/Linux é algo simples de fazer. A seguir, compartilho uma das maneiras que costumo utilizar para criar, rapidamente, sistemas de arquivos criptografados. Vamos lá?

Read the rest of this entry »

PostHeaderIcon Mantendo a privacidade no Firefox.

Essa é uma dica rápida. A grande maioria dos browsers de Internet costuma salvar muitas informações dos usuários tais como histórico de navegação, usuários, senhas, palavras utilizadas em buscas e outros arquivos temporários. Se por um lado esse recurso é útil para facilitar a navegação na Internet, por outro ele pode expor algumas informações que você gostaria de manter privadas.

Pois bem, para os usuários do Mozilla Firefox, existe um recurso bem simples que pode lhe ajudar a manter a privacidade. Ao abrir o browser basta selecionar a opção “Ferramentas –> Iniciar Navegação Privada” (ou “Tools –> Start Private Browsing“) e pronto. A partir desse momento, nenhuma das informações costumeiramente registradas pelo browser serão armazenadas. Para retornar ao modo de navegação normal, basta selecionar a opção “Ferramentas –> Navegação Privada” (ou “Tools –> Stop Private Browsing“). É possível ainda manter informações protegidas apenas para sites específicos.

Esse recurso pode ser útil também quando, por exemplo, se está utilizando um computador que não seja o seu, por exemplo, em Lan Houses. Lembre-se, entretanto, que, apesar do Firefox não armazenar suas informações, algumas delas podem estar sendo registradas pelos proxies ou ainda por outros recursos do seu provedor de acessos à Internet, por exemplo.

É preciso tomar apenas um pouco de cuidado caso você utilize as extensões (add-ons) para o Firefox. Até pouco tempo atrás, eles poderiam salvar informações mesmo quando o browser estava em modo de navegação privada. Bem, mas isso é assunto para um outro momento.

PostHeaderIcon Revista PC&CIA disponibiliza, gratuitamente, edição 88 em seu site.

A Revista PC&CIA está disponibilizando em seu site, de maneira completamente gratuita, o download da edição no. 88. O arquivo traz parte do conteúdo da revista e dois artigos completos, além das colunas e notícias.

Especialmente nessa edição, tratei, na Coluna Segurança High-Tech, da associação inevitável que existe entre os acontecimentos do mundo real e a vida dos administradores de sistemas e profissionais da área de segurança da informação. É uma continuação do texto "Michael Jackson e a Internet", publicado aqui em meu site.

PostHeaderIcon Palestra de segurança no Latinoware 2009.

Infelizmente, por motivos profissionais, não tive como participar da memorável décima edição do FISL (Fórum Internacional de Software Livre) em Porto Alegre. Entretanto, mesmo não tendo estado presente, por todos os relatos que recebi e por ter conhecimento a respeito da competência dos organizadores, tenho certeza que foi um grande evento e uma conquista para o movimento de software livre no Brasil por ter um fórum desse porte chegando em sua décima edição.

Entretanto, se por um lado não foi possível participar do FISL, evento que já frequento há vários anos,  por outro, irei ter a oportunidade de conhecer um evento de software livre que ainda não havia participado mas que sempre tive vontade de colaborar e conhecer: o Latinoware. O evento acontece entre os dias 22 e 24 de outubro no Parque Tecnológico Itaipu (PTI) em Foz do Iguaçu e, até o momento, dia 09 de outubro, já conta com 3348 inscritos.

A convite de meu grande amigo Júlio Neves, minha participação no Latinoware 2009 será por meio da palestra de segurança "Port Knocking? Esqueça. Abrindo as portas remotamente no iptables com o Single Packet Authorization" que será apresentada na sala Florestan Fernandes (Bloco 13, Sala 1) no dia 23/10/2009 às 13:00. Na palestra será realizada, inicialmente, uma discussão a respeito do Port Knocking, uma técnica utilizada por administradores de sistemas para abrir, por demanda, as portas bloqueadas de um firewall, suas vantagens, suas desvantagens e vulnerabilidades. Com base nesses aspectos é que o Single Packet Authorization (SPA) será apresentado como uma alternativa mais segura, eficiente, robusta e de fácil implementação. Esse é um recurso bem simples e eficiente para ajudar administradores de sistemas a evitar a exposição desnecessária de portas de serviços cujo acesso é restrito, como por exemplo, um servidor SSH de um servidor púbilico utilizado apenas por um conjunto reduzido de usuários para fins de manutenção e monitoria.

Outras palestras bem interessantes estão publicadas na grade de programação do Latinoware. Para verificar, basta clicar AQUI.

Abaixo segue o resumo da palestra. Nos vemos por lá!

Port Knocking? Esqueça. Abrindo as portas remotamente no iptables com Single Packet Authorization

Uma forma de impedir que atacantes explorem servidores remotamente consiste em bloquear o acesso às suas portas, liberando-as por demanda conforme a necessidade de acessá-las. Essa técnica, quando utilizada, costuma ser implementada por meio do mecanismo de port knocking. Entretanto, essa técnica contém um conjunto de limitações que podem torná-la pouco eficiente e ainda sujeita a ataques. A palestra apresenta o SPA (Single Packet Authorization) e sua implementação em ambientes GNU/Linux com alternativa ao port knocking.

 

PostHeaderIcon Michael Jackson e a Internet.

A Internet é, atualmente, o termômetro mais importante e instantâneo da sociedade da informação. Em outras palavras, análises da rede mundial de computadores podem refletir, com uma razoável margem de certeza, os próprios interesses, as opiniões, os questionamentos e as ações de muitos segmentos sociais. Nesse contexto, quanto mais amplo for o nível de certos acontecimetnos, maior deve ser o impacto na Internet. Caso contrário, o falecimento de Michael Jackson, no último dia 25 de junho, não teria provocado tantas consequências quase que instantâneas na grande rede.

Tão logo começaram a ser publicadas as suspeitas de que o astro do pop havia falecido, o tráfego na rede mundial aumentou de maneira considerável chegando, em alguns momentos, a derrubar diversos sites de notícias e buscas ao redor do mundo , reflexo de quão grande era o interesse coletivo em torno dos acontecimentos envolvendo Michael Jackson. O mesmo aconteceu em outras oportunidades em acontecimentos como os atentados de 11 de setembro, por exemplo.

Ao mesmo tempo em que as notícias se alastravam, atacantes passaram a disseminar e distribuir milhões (bilhões, talvez) de emails na Internet contendo vírus, worms e SPAMs, aproveitando-se do interesse coletivo pelo tema. Não demorou muito para que isso provocasse muita dor de cabeça para administradores de sistemas que precisaram ajustar, de imediato, seus servidores e sistemas para tentar criar medidas eficazes de reter esse tráfego poderia provocar problemas bem mais sérios para os seus usuários.

Do ponto de vista da segurança de redes e administração de sistemas, que lição é possível tirar desse processo? Simples. A conexão indissociável que existe entre a Internet e a sociedade não permite, em nenhum momento, que um administrador de sistemas  ou qualquer outro tipo de profissional que execute tarefas semelhantes, se dê ao luxo de permanecer desconectado das notícias e dos acontecimentos atuais, fundamentalmente aqueles que são de interesse de grandes grupos sociais.  Em outras palavras, um acontecimento de alcance global pode provocar impactos quase que imediatos sobre sistemas conectados à Internet. Estar alheio aos fatos, portanto, é um passo significativo para encerrar a carreira de um profissional responsável pelas administração e segurança de sistemas e redes de computadores. Infelizmente, essa não é uma diretiva discutida e amplamente enfatizada pela literura especializada e pelos cursos, acadêmicos ou técnicos. No entanto, deveria ser já que afeta diretamente os profissionais dessa área.

Devo tratar melhor sobre esse assunto na próxima edição da coluna "Securança High-Tech", na Revista PC&CIA, da qual sou colaborador.

 

PostHeaderIcon Site de Rubens Barrichello foi invadido e pichado!

Acabei de ver essa notícia no site da Globo.com. Tão logo terminado o Grande Prêmio do Bahrein, hoje, 26 de abril, o  foi invadido por crackers. Após ter sido retirado do ar, o site original foi substituído por outro com a figura aí ao lado fazendo alusão ao tempo em que Rubinho corria na Ferrari e foi alvo de uma brincadeira de um programa humorístico de televisão que o assoaciava a uma tartaruga.

Do ponto de vista de segurança, é importante tomar esse como mais um, dentre tantos outros, exemplo de que é necessário sempre, dedicar atenção à segurança de sistemas que costumam ficar expostos 24 horas por dia na Internet.

Nesse caso, por se tratar de um site pessoal e pelas próprias características do ataque, o objetivo parece ter sido, simplesmente, denegrir a imagem do piloto brasileiro que, diga-se de passagem, nunca conseguiu alcançar posições de liderança que o fizessem disputar um título mundial, mesmo quando estava em uma equipe de ponta. Opiniões esportivas à parte, em se tratando de um site corporativo, invasões como essa tomam proporções ainda mais sérias, uma vez que  colocam a credibilidade da instituição em "xeque" perante seus clientes e parceiros,  podendo prejudicar significativamente o próprio negócio da corporação.

 

PostHeaderIcon Criptografia rápida com o GPG.

Muitos sabem da importância de se utilizar dos recursos criptográficos para proteger informações críticas, entretanto, são poucos os que utilizam em suas rotinas diárias esses artifícios. Ferramentas (livres) existem muitas e um dos maiores exemplos é o próprio GPG (GNU’s PGP), presente, por padrão, na maioria das distribuições GNU/Linux.

Obviamente que, criptografia não se resume apenas a confidencialidade, que corresponde ao mecanismo de tornar restrito o acesso à alguma informação contida em um arquivo, por exemplo. Entretanto, esse é um dos seus serviços mais populares. Partindo de um exemplo muito simples e didático. Suponha que, em um arquivo texto, você guarde algumas senhas importantes para acesso a sistemas sobre sua administração. É mais do que prudente evitar que o conteúdo desse arquivo seja exposto facilmente e, nesse caso, confiar apenas nos recursos de controle de acesso do sistema de arquivo não é, certamente, uma prática muito segura.

Para essa finalidade é possível "criptografar" esse arquivo utilizando-se uma senha, simplesmente por meio do seguinte comando:

myhost$ gpg -c /home/user/passwords.txt

Em seguida, será solicitada uma senha e sua posterior confirmação. A proteção do conteúdo do seu arquivo será proporcional à complexidade da senha utilizada em seu processo de cifragem. Portanto, não escolha senhas fracas e fáceis de serem exploradas. O resultado da execução do comando anterior é a geração de um arquivo com mesmo nome daquele informado como parâmetro acrescido da extensão ".gpg". O arquivo original, a partir desse momento, pode ser descartado:

myhost$ rm /home/user/passwords.txt

Para obter o arquivo original novamente, deve-se "descriptografar" o conteúdo do arquivo /home/user/passwords.txt.gpg. Para isso, basta utilizar o seguinte comando:

myhost$ gpg -d /home/user/passwords.txt.gpg > /home/user/passwords.txt

Tão logo a senha utilizada no processo de cifragem seja inserida, o arquivo original será recuperado imediatamente. Esse mesmo recurso pode ser utilizado para "criptografar" arquivos de quaisquer formatos. Suficientemente simples para não deixar mais arquivos críticos desprotegidos em seu sistema de arquivos, não?

Vale lembrar que no exemplo apresentado utiliza-se criptografia simétrica, ou seja, tudo que é feito com uma chave (senha) é desfeito com a mesma chave. Portanto, é importante saber que se você esquecer a senha utilizada para criptografar um arquivo não será mais possível recuperar seu conteúdo.

O GPG tem muitos outros recursos interessantes, tais como a utilização de criptografia assimétrica, assinatura digital, dentre outros. Vale a pena conhecer!

PostHeaderIcon Conficker: a praga digital da vez do Microsoft Windows!

É rotina: de tempos em tempos surge um novo vilão para os usuários e, principalmente, administradores de sistemas Microsoft Windows, que costumam perder horas de sono reinstalando seus sistemas afetados e tomando providências, muitas vezes inúteis, para que os sistemas intactos não sejam afetados.

Nesse caso, como vilão, entenda-se como sendo qualquer praga virtual (vírus e worms, por exemplo) capaz de expor os problemas de segurança dos sistemas produzidos pela gigante do software proprietário. Nesse contexto, a bola da vez é o Conficker, uma praga que tem uma arquitetura bem interessante de ser discutida e que, pelo seu impacto, tem provocado bastante dor de cabeça. Exatamente por isso, esse será o tema do texto da coluna  "Segurança High-tech" na Edição No. 86 da Revista PC&CIA, publicação nacional da qual sou colaborador há alguns anos.

Interessado em acompanhar essa discussão? Basta aguardar um pouco a Revista chegar às bancas…