sexta-feira, 11 de maio de 2012

Recuperar arquivos deletados em Ext4

Olá!

Pessoal, hoje passei por uma experiência ruim e ao mesmo tempo boa.

Estive algumas boas horas trabalhando em um projeto e já nas fases finais, momento em que faria os backups em um repositório oficial, acabei deletando uma pasta em um sistema de arquivos Ext4 da VM que fiz especificamente para esse projeto. Nenhum problema quanto a deletar a pasta, o problema é que passei a pasta errada como parâmetro.

Foi aí que me dei conta do erro que cometi e do problemão que havia criado. : )
Como já trabalho há vários anos com isso, já estou vacinado e tinha uma carta na manga. Antes disso havia feito uma cópia dos principais arquivos em um documento que imprimi para o projeto.

Lição: Mesmo com vários anos de experiência estamos suscetíveis a falhas. A diferença está em quão experientes e preparados nós estamos para lidar com essas questões. A pró-atividade SEMPRE faz a diferença.

De qualquer forma achei interessante prosseguir como se eu não tivesse essa cópia de backup. Aí que veio a vantagem ser especialista em Forense Digital. Se eu realmente precisasse recuperar esses dados e não soubesse como, teria que mandar o disco para uma análise. Gastaria muito tempo e muito dinheiro para isso.

Se passarem por uma situação semelhante, espero que esse post possa auxiliá-los a economizarem tempo e dinheiro.

Cenário:
- Tenho um Linux instalado com um sistema de arquivos Ext4.
- Tenho uma pasta com arquivos importantes salvos em /root/PASTA.
- Acidentalmente executei o comando # rm -Rf /root/PASTA
- Estou desesperado e suando mesmo com uma temperatura de 5º C. hehe

Primeiros Socorros:
- Desligue o disco o mais rápido possível.

- Qualquer alteração que tentar fazer ou tentativa desesperada de recuperar algo com o disco montado em "rw" só vai piorar a situação.

- Monte esse disco em "ro" em um outro Linux. Para esse exemplo, a partição / do disco que quero recuperar está representada por /dev/sdb1 no sistema usado para o recover.

Passos para recover:
Bom, essa é uma situação bem simples e fácil de ser resolvida. Nesse caso, apenas uma ferramenta de forense já vai nos trazer de volta aquele sorriso de alegria. hehe

Para essa situação, indico fortemente a ferramenta extundelete.
É uma ferramenta bem robusta e mais inteligente para trabalhar com restaurações em sistemas ext*

- Download:

# tar -xvjf extundelete-0.2.0.tar.bz2

- Precisamos instalar alguns requisitos para compilação:
# yum install gcc-c++ e2fsprogs e2fsprogs-libs e2fsprogs-devel

- Agora compilamos a ferramenta:
# ./configure
# make
# make install (Isso é opcional. Você pode executar os binários direto da pasta src)

- Vamos para os exemplos de restauração:
Recuperar arquivo:
./extundelete /dev/sdb1 --restore-file root/PASTA/arquivo

Recuperar diretório:
./extundelete /dev/sdb1 --restore-directory root/PASTA

Se não conseguir recuperar por ter feito algo no disco antes de desligá-lo, pode tentar restaurar tudo.
./extundelete /dev/sdb2 --restore-all

Tudo que for encontrado será restaurado em uma pasta chamada RECOVERED_FILES.

Espero que isso ajude.
Agora se o negócio estiver bem feio e em uma situação mais complexa, entre em contato com minha empresa: www.timbs.com.br

Faremos o possível para ajudá-lo.

Abraço!

quinta-feira, 10 de maio de 2012

90% dos sites estão Vulneráveis

No final do mês passado (23/04/12) foi divulgada uma interessante pesquisa feita pela Trustworthy Internet Movement (TIM) à respeito da segurança em diversos sites da Internet.

Foram analisados sites de redes sociais, instituições financeiras, e-commerce, etc. Os testes consistiam basicamente em testar a segurança da criptografia usada nesses sites (SSL e TLS em todas as verões). Foram analisados aproximadamente 200.000 sites e, surpreendentemente, 90% dos sites não foram robustos o suficiente para impedir que informações sensíveis fossem capturadas através de ferramentas de captura de tráfego e quebra de criptografia.


É uma boa pesquisa para ficarmos alertas quanto a segurança dos serviços que usamos ou servimos aos nossos clientes. Obviamente a captura de informações desse tipo é um pouco complexa para uma pessoa normal, porém algo trivial para um especialista em Segurança da Informação.

Recentemente fui contratado para um Pentest e fiz um teste semelhante em uma das redes privadas com cerca de 10 usuários. Estendi o teste durante 1 hora e, surpreendentemente, consegui coletar informações sensíveis de todos os usuários que usaram essa rede durante o período.

As dicas que recomendo para evitarmos a captura das nossas informações sensíveis:
- Evite, ao máximo, usar qualquer rede aberta, pública e compartilhada.

- Se precisar usar uma rede compartilhada, jamais acesse sites com suas informações pessoais. Para ser bem claro, não coloque sua senha em nenhum site ou serviço.

- Aquela rede Wireless aberta do seu visinho pode não ser apenas um Access Point mal configurado. Pode estar aberta de propósito. : )

- Caso precise de Internet para o seu note em "qualquer lugar", compre um modem 3G com um plano que lhe atenda. Existem planos bem acessíveis e certamente mais baratos que o prejuízo possível caso suas informações sejam comprometidas.