29 de agosto de 2015

Vídeo sobre segurança e invasão.



Esse vídeo é muito interessante para que uma empresa tenha noção dos riscos que corre. Infelizmente a maioria não tem sequer noção de como uma invasão pode acontecer. Obviamente que a coisa aqui é um pouco fantasiada, mas bem possível de acontecer, como já acontece todos os dias e ninguém fica sabendo ;-)

20 de agosto de 2015

Shellter Project - Ferramenta para bypass de AV

Há tempos ensino em um de meus cursos, como é possível burlar antivírus com binários maliciosos, fazendo o enconding do mesmos, além de também trabalhar com PE's que são aplicações nativas de Windows, portanto consideradas inócuas pelos antivírus, só que payloads maliciosos personalizados embutidos e também encodados.

Todo esse processo, sempre ensino a fazer manualmente, para que o aluno saiba como funciona e o que acontece por debaixo dos panos. Então dá-lhe immunity debugger, LordPE e outras ferramentas para fazer isso, e um pouco de conhecimento e assembly.

Basicamente, para pegarmos um PE válido, standalone, e transformarmos em um binário com payload malicioso embutido e encodado seguimos o seguinte procedimento:
  • criamos um stub, com permissão de execução, dentro do PE, onde injetaremos os códigos (payload e encoder/decoder baseado em XOR por exemplo);
  • injetamos o payload e o encoder/decoder no stub;
  • alteramos o entrypoint do PE para o início o decoder;
  • colocamos um breakpoint no final do payload malicioso e configuramos para que nosso encoder codifique apenas o código do payload;
  • executamos o programa (através de um debugger) e quando a execução para no breakpoint, salvamos o código todo, já encodado, como um novo PE.


Pontos de atenção:
  • o entrypoint do PE deve estar direcionado para o início do encoder/decoder que agora vai decodificar o payload sempre que o mesmo for carregado na memória;
  • após o decoder ser executado, o payload precisa ser executado, e ao final direcionar o fluxo de execução para o entrypoint original;
  • a pilha deve estar organizada, ao final de execução do payload e redirecionamento de fluxo de execução para o entrypoint original, da mesma maneira como estaria se o fluxo de execução normal não houvesse sido alterado.


Resumindo, esse é o trabalho que temos para criar um PE válido, com código malicioso embutido e bypass de antivirus. Um pouco trabalhoso, não?

Como expliquei antes, prefiro ensinar isso aos meus alunos, para que saibam o que acontece quando usamos ferramentas automatizadas, como é o caso do Shellter.

Shellter é uma ferramenta de injeção dinâmica de shellcode em PE's de 32bits, e os shellcodes podem ser tanto personalizados, quanto criados por outras ferramentas como o Metasploit ou Veil Framework (que já utiliza técnicas de evasão de AV muito melhores que o Metasploit).

Alguns tipos de payload que o Shellter já utiliza por padrão:
[1] meterpreter_reverse_tcp
[2] meterpreter_reverse_http
[3] meterpreter_reverse_https
[4] meterpreter_bind_tcp
[5] shell_reverse_tcp
[6] shell_bind_tcp
[7] WinExec

Outra característica interessantíssima dessa ferramenta, é o Stealth Mode feature, que permite infectar o mesmo binário mais de uma vez, e com mais de um payload. Eles chama isso de RedTeam funcionality, pois para quem precisa fazer um pentest físico, com engenharia social, é muito melhor ser capaz de executar vários ataques de uma só vez plugando um pendrive na máquina da vítima ou enviando um binário malicioso.

E uma das coisas mais importantes, para proteger contra a detecção de antivírus, é o código polimórfico, como destacado na documentação do próprio Shellter:

"Shellter will break down a given algorithm or code block and will mix its
effective instructions with dynamically generated polymorphic code that does
not interfere with the logic of the original algorithm."

E ainda possui proteções contra engenharia reversa :-)

Para aprender um pouco mais sobre essas ferramentas (Shellter e Veil Framework), acesse seus sites, pois tem muita coisa interessante lá!


Divirtam-se!

18 de agosto de 2015

As 3 certificações de SI mais difíceis que tirei

Há alguns dias recebi um e-mail perguntando osbre as certificações OSCP e OSCE, e acabou que a resposta que dei ao e-mail ficou interessante como dica e respondi postar aqui no blog.

Abaixo segue o e-mail que enviei, e aproveitem as dicas!

Brother, de todas as certificações que tenho, as 3 mais difíceis foram GXPN, OSCP e OSCE. A primeira a prova é teórica e conto um pouco do processo para tirá-la em meu blog: http://hackproofing.blogspot.com.br/2013/05/gxpn-giac-exploit-researcher-and.html

As outras duas são essencialmente práticas. A OSCP pode-se dizer que é 90% invasão de alvos e 10% desenvolvimento de exploits, e isso se inverte para a OSCE, que fica 90% em desenvolvimento de exploits e 10% em invasão de alvos. A duração da prova da OSCP é de 24h enquanto que da OSCE é de 48h.Para a OSCP as dicas que posso dar são:
  • leia todo o material deles e faça TODOS os labs, sem exceção! A prova tem muito do que vc pratica durante o curso.
  • leia todos o material antes de fazer os labs, isso economizará seu tempo e fará com que aproveite melhor a prática.
  • se vc nunca mexeu com pentest antes, o ideal é estudar sobre pentest antes de fazer o curso edles e a prova para a OSCP.
  • para a prova, o processo de scanning e enumeration é tudo! Foque nesse ponto que vc alcançará o sucesso.
  • resolva os desafios mais fáceis. Se perder muito tempo em um só alvo, sua prova como um todo pode estar perdida por falta de tempo...
  • não se prenda a portas comuns! Muitos dos alvos exploráveis estarão em portas diferentes do padrão.
  • conforme for compromentendo os alvos, tire printscreens, grave logs e salve tudo. Vai economizar seu tempo para fazer o relatório final depois.
  • e acima de tudo: Try Harder!


Minhas dicas para a OSCE são:
  • cara, se vc não é capaz de resolver o desafio fc4.me por conta próprio, nem gaste seu dinheiro se inscrevendo no curso. Aprenda o que precisa antes!
  • é legal ter a OSCE sim, mas faça primeiro a OSCP para ter uma noção de como a coisa funciona, e isso ainda te dará um pouco de confiança.
  • abuse do fórum e do IRC, a galera realmente ajuda. Mas cuidado com os aproveitadores que querem que vc resolva as questões pra eles (até hoje ainda tem gente que me encontra no Linkedin e manda e-mail pedindo a solução de desafios da prova).
  • em todos os momentos lembre-se sempre do lema: Try harder!
  • aprendi que um outro lema também é verdade para quem faz a prova da OSCE: no pain, no gain! O sofrimento é real, e não só mental, mas físico tbm, prq se não se preparou bem para a maratona de 48h, vc vai morrer antes de chegar na praia.
  • para essa prova, muito exercício, principalmente além daquilo que o material oficial lhe dará, é importante. Por isso, seguem alguns links OBRIGATÓRIOS:


Livros importantes:
  • The Shellcoder’s Handbook
  • Bug Hunter’s Diary
  • The Art of Exploitation (2nd Edition)
  • Programming From the Ground Up


E é isso aí!

Como proteger seus dados no computador e smartphone?

Fala pessoal,
Algumas semanas atrás, mais uma vez, participei de um projeto de "security awareness", onde palestrei falando sobre segurança em umambiente altamente crítico do qual sou um dos responsáveis atualmente (não farei exposição nem de onde, nem de qual ambiente, por motivos óbvios). Muitos controles de segurança, bem como riscos aos quais estamos expostos, foram levantados e questionados, então como esse tipo de informação existe em todos os lugares da internet, acredito que não apenas quem participou desse projeto de "security awareness", mas também vocês que acessam meu blog, já devem compreender melhor alguns dos riscos aos quais todos nós estamos expostos.

Pensando no risco de vazamento de dados, uma organização foi criada anos atrás, com o foco de manter nossa privacidade. Seu nome é Eletronic Frountier Foundation (https://www.eff.org/).

Portanto, para continuar esse trabalho de conscientização, decidi publicar aqui um interessante projeto da EFF para auxiliar na privacidade dos usuários, com dicas a serem implementadas em seu computador pessoal e até mesmo em seu smartphone. Portanto, você poderá fazer ainda mais do que já faz (se é que faz algo...rs) para tornar-se mais seguro, usando as dicas, ferramentas e tutoriais do projeto Surveillance Self-Defense - https://ssd.eff.org/

Minha primeira dica é: comece por "Want a security starter pack?" (https://ssd.eff.org/en/playlist/want-security-starter-pack) e fique mais seguro!

11 de agosto de 2015

Curso de Forense Computacional - Set/2015

O curso é altamente prático, com análise de 10 casos diferentes ao longo das aulas, sendo apresentadas situações reais em diversos contextos. Esse treinamento tem por objetivo ambientar o aluno em situações diversas, e como analisá-las utilizando apenas ferramentas livres existentes em distribuições específicas para o trabalho de investigação forense.

O aluno terá contato direto com o instrutor através de uma plataforma de conferência on-line, com slides, voz, e desktop sharing.

O instrutor tem experiência em treinamentos e investigações reais, tendo formado alunos membros da polícia civil, forças armadas, e órgãos de inteligência, bem como de diversas empresas privadas que atuam com segurança da informação e investigação.

Início: 28/09/2015

Horário: 22h às 00h (segunda e quarta-feira, das 22h às 00h)
Local: Internet
Carga horária: 32h
Investimento: R$ 890,00 (10% de desconto para pgto via depósito)

Quem tiver interesse no curso, por favor, acesse o link http://bit.ly/ZkbwEE e faça sua inscrição no curso "Forense Computacional com Software Livre" que em breve enviarei um e-mail para o pgto via PayPal.


Em caso de dúvidas, ou pagamento via depósito, entre em contato por e-mail: luizwt at gmail.com

Conteúdo programático:

Conceitos Iniciais
·         O que é forense
·         Forense digital
·         Forense Computacional
                                  
Investigação Forense
·         Passos da Investigação
·         Coleta de dados: Voláteis e Não-voláteis
·         Análise de memória física
·         Duplicação de dados
·         Recuperação de arquivos e partições deletadas
·         Processo de boot do Linux, Windows e Macintosh
                                     
Resposta à Incidentes
·         Criação de CSIRT's
·         Avaliação de risco
·         Escrita de relatórios forenses
·         Aspectos legais

Ferramentas Livres
·         Distribuições
·         Ferramentas
·         The Coroner's Toolkit (TCT)
·         The Sleuth Kit
·         Recuperaçao de evidências com o TSK
·         Recuperação de dados com Foremost
·         Autopsy Forensic Browser
·         Criação de casos com o Autopsy

Forense em Linux
·         Boot no Linux
·         Sistema de arquivos
·         Ext2 e Ext3
·         Linux Swap
·         Análise do Linux
·         Estudo de caso: Sistema Linux comprometido

Forense em Windows
·         Boot no Windows
·         Sistema de arquivos
·         MBR
·         FAT e NTFS
·         Recuperando arquivos deletados
·         Estudo de caso: Honeypot Windows comprometido

Análise Malware
·         Tipos de Malware
·         Descoberta e coleta de malware
·         Montagem de lab. para análise
·         Análise de arquivos suspeitos
·         Estudo de caso: análise forense de malwares do tipo banking

Investigando tráfego de rede
·         Modelo OSI
·         Endereçamento e NAT
·         Ferramentas de coleta de informações de rede
·         Snort 
·         Análise de tráfego de redes 
·         Estudo de caso: análise de tráfego de rede com strings de ataque
·         Estudo de caso: análise de ataques à browsers
·         Estudo de caso: análise de tráfego de rede com strings de ataque

Forense em VoIP
·         Protocolos
·         Tráfego de rede VoIP
·         Problemas de segurança em redes convergentes
·         Ameaças ao VoIP
·         Estudo de caso: análise forense de tráfego VOIP
             
Dispositivos Móveis
·         PDAs
·         Ipods
·         Iphone
·         Celulares com Android
·         PS3
·         Estudo de caso: análise forense de memória de PS3
·         Estudo de caso: análise de um celular usado em um crime