Cenário Atual
Você, CSO da empresa XYZ, está em casa. Foi dormir às duas da manhã vendo UFC, é sábado e está o maior frio lá fora. Às 3 em ponto, alguém do seu SOC liga e diz que está monitorando atividade intensa e anormal na sua rede, tem certeza absoluta que aconteceu um outbreak de malware e que provavelmente há vários servidores afetados. Vc pensa: "PUTZ, não tinha outra hora para acontecer ?". É hora de chamar o CSIRT. Todos te xingam, mas chegam à empresa conforme o marcado e a batalha começa.
Primeiro passo: Entender o que está acontecendo para planejar a CONTENÇÃO. Sua equipe precisa coletar dados voláteis de várias máquinas e analisá-los a fim de traçar estratégias. As máquinas afetadas estão ligadas e não podem ser desligadas (os dados são voláteis). O que a sua equipe tem na mão para fazer isso ? Um CD do Helix e um pendrive do CAINE, todos em várias cópias, cada um tem uma. Você orienta o time e eles partem para a batalha, iniciando pelas máquinas mais indicadas, dado o report do SOC. Nisso já são 7h e o CIO, que quase nunca apoia suas orientações, começa a ligar com o famoso "E aí ?". Sua equipe precisa coletar os dados e analisá-los o mais rapidamente.
- Em uma das máquinas, ao colocar o CD com o Helix, ela imediatamente reinicializa;
- Outra máquina tem uma versão mais antiga do SO, não roda diversos utilitários e toda a coleta fica comprometida;
- A maioria da equipe não lembra de cabeça os comandos e options necessários. Vários esquecem de capturar a memória por primeiro e muitos sequer trazem o resultado do netstat;
- Você ouve um barulho, foi um dos analistas socando a mesa porque o Antivirus não deixa de jeito nenhum ele rodar algumas ferramentas;
- Uma das máquinas tem a famosa tela azul depois da tentativa de rodar um dos programas do toolkit;
- quase todo o trabalho de coleta vai por água abaixo porque um dos pendrives retornou infectado. Como o analista estava usando Linux, não houve infecção na sua máquina, mas os resultados coletados seriam confiáveis ?
Vocês já viveram isso ??? É o que acontece na prática.
Os problemas acima acontecem, todos ou em parte, com cada um dos toolkits atualmente disponíveis como ferramenta de software livre. Dos que eu já pesquisei, o CAINE, o DEFT e o HELIX passam por essas ou outras situações onde ficam devendo. Até mesmo o COFEE, que não se encaixa na definição de software livre (apesar de ser livremente licenciado para polícias) passa por diversos problemas dos narrados acima. É exatamente nesse contexto que o projeto MUFFIN quer entrar: ser uma toolkit voltada para resposta a incidentes e que não tenha as mesmas fraquezas e os mesmos problemas desses que analisamos.
Para atingir isso, o MUFFIN será composto por 3 módulos:
- O pendrive MUFFIN, que é a toolkit propriamente dita;
- O MUFFIN Baker, uma ferramenta que permite configurar e gerar o pendrive MUFFIN;
- O MUFFIN Report, que vai acessar os dados gerados/coletados pelo pendrive MUFFIN.
O projeto já tem roadmap e escopo bem definido. Sua versão 0.1, marcada para ser apresentada no formato de procedimento, vai ao ar em breve. Em paralelo, a equipe do projeto trabalha na versão 0.2, primeira versão que vai trazer o Baker, automatizando a geração do pendrive MUFFIN.
Estamos desenvolvendo-o em Lazarus com SQLite. O Lazarus é um compilador Pascal com um ambiente muito parecido com Delphi, trazendo o beneficio de compilar o mesmo fonte em vários sistemas operacionais, incluindo Linux e o Mac OS.
Estamos precisando de colaboradores. Se você conhece de programação e pode nos ajudar, entre em contato. Se você não conhece, mas ainda assim quer ajudar no projeto, excelente. Há muito trabalho e todos são bem vindos.
Ate o proximo post !
12 comentários:
Boa sorte com o projeto MUFFIN, prezado Tony Rodrigues.
Excelente iniciativa!
Abraço,
Higor Vinicius Nogueira Jorge
www.higorjorge.com.br
Boa noite Tony, nos conheçemos no Web Security Fórum em Sampa, sou estudante de Segurança da Informação da FATEC SCS, temos muita gente lá de desenvolvimento de software, nós da segurança podemos ajudar também interessante saber que o lazarus é usado no projeto, tivemos programação em PASCAL e gostei mjito se pudermos ajudar me contate , já te enviei um email a uns meses atrás, parabéns pelo projeto.!!
Acho maneiro o projeto mas Pascal/Delphi já tá meio outdated. Se você procura a feature de portabilidade pode utilizar uma linguagem interpretada pré-compilada como Python, ruby ou até mesmo Java que é 100% agnóstico (com o preço de ser pesado a rodo)
Até cogitei Python e Java, Jan, mas não havia, no grupo de developers que estava formado, conhecimento suficiente. O Lazarus é um projeto Open Source muito bom, o compilador é extremamente eficiente, o ambiente muito produtivo, e Delphi é bastante difundido no Brasil, principalmente nas faculdades. Foi uma escolha muito boa, e isso vem se provando na prática, agora que já temos resultados e alguns módulos prontos.
[]ao !
como eu faço pra ter um muffin pra mim?
Me passa o link brow ara download do moffin
Tony, estou interessado em ajudar no Projeto Muffin, tenho um pouco de conhecimento em programação, não conheço o Lazarus, mas estou disposto a aprender, com um pouco de ajuda dos mais experientes.
Mauricio, me mande o seu email !
Desculpe a demora, andei meio enrolado no trabalho.
meu email é mcosta.df@gmail.com
Bom dia Tony, também estou interessado, tenho pouca vivência com programação mas uma enorme vontade de aprender mais, gostaria de ajudar meu e-mail é eduardo_schmidt@live.com
Olá Tony Rodrigues
Estou fazendo meu TCC, e gostaria de descrever e utilizar o Projeto MUFFIN. Todavia estava pesquisando para comprar um Pen Drive com Tecnologia U3, e em sua descrição de funcionamento diz-se que suporta Windows 200 até o XP, e que esta tecnologia U3 foi descontinuada pela Sandisk, como meu TCC envolve o Windows 7. Gostaria de saber se já foi feito algum teste no Windows 7 utilizando o MUFFIN.
aguardo resposta
Fernandes Macedo
masedos@gmail.com
Postar um comentário