Treinamentos em Segurança da Informação

Olá pessoal tudo bem?

Sei que treinamentos de segurança em um formato diferenciado e que realmente tragam conteúdo de alto nível tanto para iniciantes quanto profissionais da área são algo difícil de encontrar.

Pensando nisto estou com planos para um projeto em 2014 voltado exclusivamente para treinamentos técnicos de alto nível que possam abranger tanto os que pretendem ingressar na área de segurança quanto profissionais de nível Sênior que desejam consolidar seus conhecimentos em áreas que talvez não sejam sua principal.

Disto isto gostaria de ouvir a opinião dos senhores, irei iniciar as rodadas de cursos com 3 principais categorias e que gostaria de saber entre estas quais vocês gostariam de participar caso houvesse esta turma:

– Malware Analysis: Analisando a fundo funcionalidades de malwares

– Penetration Testing:  Curso voltando a demonstrar técnicas e conceitos envolvidos em testes de penetração em ambientes corporativos tendo cenários realísticos e utilizando ferramental que irá ajudar você a criar seu próprio framework de trabalho.

– Web Application Hacking: Curso voltado a mostrar as principais falhas de segurança existentes em aplicações web, como por exemplo SQL Injection, XSS, entre outros. Curso totalmente hands-on onde o aluno irá aprender como funcionam as vulnerabilidades explorando-as e entendendo como auditar e corrigir.

Caso tenham alguma outra ideia de curso, também gostaria de saber. Enviem uma mensagem para  y2h4ck[at] gmail [dot] com com o subject [CURSO] e diga oque acha interessante.  Sua colaboração será muito bem vinda e será recompensada :D

Grande abraço! Enviem sua mensagem!

 

Análise de Malware: Win32 ProxyChanger

Este malware foi obtido em um ataque de Phishing Scam. O atacante encaminhou um link contendo um executável se passando por um arquivo compactado que faz referência a um boleto de cobrança vencido em nome da vítima. Ataques de engenharia social deste tipo visam fazer com que o usuário sinta-se atraido por visualizar seu conteúdo, sendo assim,  boletos de cobrança, faturas e chamarizes que façam alusão a dados pessoais sempre acabam sendo empregados.

Segue abaixo o e-mail recebido na íntegra:

phishing01

É possível visualizar na imagem acima que o campo de destinatário consta o valor “Recipientes”. Isso nos diz duas coisas:

1 Este ataque não foi o que chamamos de Spear Phishing Attack, ou seja, não foi uma mensagem criada especificamente para um ataque direcionado e sim um Phishing em massa.

2 A mensagem não tem nenhum resquicio de técnica avançada para disparo da mensagem. Foi utilizado apenas um e-mail em HTML com um Hyperlink no corpo da mensagem, nenhum tipo de payload malicioso (ex. Drive-by Exploit).

O host responsável pelo disparo da campanha de Phishing pertence a empresa Dytech.

É muito comum que criminosos que utilizam este tipo de abordagem procurem por contas de e-mail hospedadas em domínios .COM.BR.  Isto faz com que diversos filtros de conteúdo de e-mail, reputação e antispam sejam contornados. Geralmente domínios corporativos por padrão tem reputação elevada nos Scores de análise.

Abaixo o whois do domínio utilizado como difusor da Campanha:

whois01

Efetuando uma rápida checagem através do site http://mxtoolbox.com  é possível identificar falhas na configuração que permitiriam utilizar o servidor MX do domínio de forma maliciosa (relay aberto):

whois04

A credencial utilizada pelo criminoso pode ter sido comprometida através de algum phishing diretamente na rede corporativa. Outras possibilidades são de que o usuário possua uma senha muito simples que pode ser facilmente descoberta utilizando algum tipo de Brute-Force, ou então alguma aplicação web vulnerável que permita o envio indiscriminado de mensagens.

Ao clicar no link anexado no corpo do e-mail o usuário é direcionado para o download de um binário com nome de “cobranca.docx.exe” a partir do seguinte link:

http ://nwgawomensexpo  com/modules/ mod_finder/ cobranca.doc/ 

host01

Abaixo segue o Whois do domínio que hospeda o artefato:

whois03

Criminosos procuram por aplicações web vulneráveis para efetuar Upload de seus artefatos e hospeda-los de forma não rastreável.

Vamos agora analisar o artefato coletado e verificar o seu comportamento e que tipo de dano ele causa na máquina infectada.

ANÁLISE HEURÍSTICA

File name: COBRAN~1.EXE
File size: 93184 bytes
File type: PE32 executable for MS Windows (console) Intel 80386 32-bit
MD5: 47b405e428b345fcb4b23ac73bb24031

Sections

Name Virtual Address Virtual Size Size of Raw Data Entropy
UPX0 0x1000 0x2d000 0x0 0.0
UPX1 0x2e000 0x17000 0x16200 7.8974382553
.rsrc 0x45000 0x1000 0x600 2.89353823492

Como pode ser observado nas Sections acima, o artefato está compactado utilizando o UPX. Logo mais iremos efetuar o unpacking para poder analisa-lo de forma mais completa.

Após submete-lo ao VirusTotal obtivemos o seguinte resultado:

Antivirus Assinatura
McAfee Generic-FRAX!0958FA229CEB
TheHacker Posible_Worm32
Norman Sample.G.dropper
TrendMicro-HouseCall PAK_Generic.001
Kaspersky Trojan-Banker.Win32.Banbra.axlz
AntiVir TR/ATRAPS.Gen
TrendMicro PAK_Generic.001
McAfee-GW-Edition Generic-FRAX!0958FA229CEB
Emsisoft Gen:Trojan.Heur.GZ.fmGfbOVgePi (B)
Jiangmin Backdoor/Delf.hux
SUPERAntiSpyware Trojan.Agent/Gen-Autorun[Swisyn]
AhnLab-V3 Trojan/Win32.Banker
ESET-NOD32 Win32/ProxyChanger.HG
Ikarus Trojan-Dropper.Delf

Taxa de Detecção:  14 / 45

Este artefato já havia sido submetido para o VirusTotal no dia 15/02. Em sua primeira análise contava com uma taxa de detecção de 6 Engines.

Vamos verificar algumas informações do binário:

pefile

Temos então que este artefato foi criado utilizando Delphi e compactado com o UPX.

O UPX é um packer muito conhecido.  É utilizado também por atacantes para tentar obsfuscar o seu binário e dependendo de como é feita a detecção do binário por parte do antivirus, o simples fato dele estar packed é suficiente para que passe batido pela detecção Heurística.

Para poder efetuar o disassembly do artefato de forma mais completa iremos primeiramente remover a compactação pelo UPX:

reverse_upx

Agora vamos efetuar o disassembly do artefato:

reverse01_jpg

Ao ser executado ele carrega o componente TRegistry. Este componente é nativo do Delphi e permite ao artefato manipular chaves de registro.  Após carregar o objeto  ele determina que o valor para o TRegistry.SetRootKey  será  “Software\Microsoft\Windows\CurrentVersion\Internet Settings”.

Após definir a chave a ser modificada ele efetua um TRegistry.OpenKey e carrega  a chave “ProxyEnable” modificando o valor dela para “1”.  Ou seja, o artefato modificou o comportamento do sistema operacional dizendo que a partir de agora ele deve utilizar um endereço Proxy para navegar.

Em seguida ele chama o componente com a instrução TRegistry.WriteInteger  e escreve o valor “http:// lashlerouxsafaris co.za/components/com_jce/js/in.jsp”  na chave “AutoConfigUrl”.

Esta chave é responsável por configurar a URL com script para Auto Configuração de proxy.  Setando esta URL o browser irá buscar pela configuração do proxy que irá utilizar neste endereço a cada vez que for carregado. Assim o atacante pode manter o endereço IP do servidor de Proxy sempre atualizado caso migre para outro host.

Abrindo a configuração do Internet Options do  IExplorer conseguimos visualizar na íntegra a configuração que o malware realizou.

proxy02

Após efetuar a configuração do proxy no Internet Explorer o malware chama o browser padrão e direciona ele para a url “http://palhacopeteleco.com/res/ws/jjjjjjj/su.php” através da instrução Shell32.ShellExecuteA.

reverse02_jpg

Esta URL redireciona o acesso para o Google. Acredito que este PHP armazena informações do Client como por exemplo, ip, browser e afins. Muito provavelmente serve para que o criminoso tenha algum tipo de controle da quantidade de Hosts infectados.

reverse03_jpg

Como processo final de sua execução o executável cria um .bat  com o nome de cobranca.docx.bat. Este batch entra em loop para apagar o executável original, e após isso o Executável finaliza sua execução e o artefato é eliminado da máquina.

Aproveitei e submeti  o  artefato sem estar protegido pelo UPX. Ninguem havia submetido ainda esta amostra sem a proteção e o resultado foi o seguinte:

AntiVir TR/ATRAPS.Gen 20130218
AVG Proxy.AZEZ 20130218
ESET-NOD32 Win32/ProxyChanger.HG 20130218
Ikarus Trojan-Dropper.Delf 20130218
Kaspersky Trojan-Banker.Win32.Banbra.axma 20130218
Malwarebytes Trojan.Agent.DF 20130218
McAfee Generic-FRAX!60A450670696 20130218
McAfee-GW-Edition Generic-FRAX!60A450670696 20130218

Taxa de Detecção:  8/46

Abaixo segue o Whois do domínio que hospedava o script “su.php”

whois02

Screenshot do momento em que o malware foi executado

sandbox01

Script de Configuração de Proxy

Como vimos acima o nosso artefato não se tratava de um Trojan ou Backdoor.  Após ser executado ele modifica a configuração padrão do proxy do sistema e depois se auto-remove da máquina infectada.

Acessando a URL adicionada no AutoConfigUrl do Browser podemos ver o seguinte script:

script01

Este JavaScript efetua uma checagem de alguns itens para validar se a conexão irá ou não ser redirecionara através do Proxy.  Podemos ver na linha 23 que ele inicia o FOR para efetuar o decrypt do ArrayList utilizando um XOR. Após efetuar o decrypt da linha ele faz uma comparação na linha 32. Caso a variavel “Host” esteja contida no shExpMatch da variável “the_res” ele faz o return na linha 33. Este  está fragmentado para evitar algum tipo de identificação por assinatura de antivirus ou HIDS.

script02

Basta efetuar uma organização manual baseada nos valores demonstrados no script e temos que quando o Match da expressão ocorre ele retorna para o Browser  “PROXY 178.33.168.31”.  A partir daí o browser irá direcionar aquele acesso por dentro do proxy e interceptar a comunicação.

whois05

Uma vez que identificamos o comportamento vem a pergunta:

– Para que hosts este proxy irá fazer o direcionamento da conexão ?

Como vimos acima os itens do ArrayList são muito provavelmente os domínios que ele irá interceptar. Como estão encriptados pelo XOR não conseguimos identificar a olho nú. Para poder termos a lista de quais são os dominios visados pelo criminoso iremos criar um HTML e carregar o JavaScript de configuração do Proxy.

decrypt

Colocamos o Action do JavaScript em um Botão no HTML e ao invés de chamar o Return com o valor do endereço do Proxy iremos fazer um Print dos valores decriptados em nosso form HTML. Com isso teremos uma lista completa dos hosts que estão sendo monitorados.

Domínios interceptados pelo Proxy:

Agora que conhecemos o comportamento e a finalidade do malware, vamos efetuar um laboratório para ver como o ataque é de fato executado na máquina de um usuário comprometido. Para isto irei executar o artefato em uma Máquina Virtual e navegar para algum dos sites listados acima. Por ter experiência com o BankLine do Itaú resolvi elege-lo como portal alvo.

Uma vez que a máquina foi comprometida pelo  malware e a configuração do proxy foi adicionada no browser basta navegar para o endereço http://www.bancoitau.com.br

itau01

A primeira vista o portal do Banco Itaú e carregado para visualização. Foi feito um clone idêntico ao site original para que a vítima não perceba que está acessando na verdade um site falso.

itau02

Uma vez que o usuário coloca a Agência e Conta é direcionada a uma próxima página onde deve confirmar o número da conta. No caso coloquei como dados Agência: 1337 e Conta: 31337-0.

É possível logo de cara identificar que o site não possui Certificado Digital o que por sí só ja iria mostrar que o site é falso. Infelizmente este detalhe ainda é pouco identificado por usuários. Em verdade a grande maioria nem sabe de sua existência ou funcionalidade.

itau03

Na próxima tela o usuário é conduzido a colocar sua senha numérica utilizando o Teclado Virtual fornecido pelo site.  Colocarei um sequência qualquer.

itau04

Independente do valor digitado na tela anterior o portal irá direcionar o usuário para esta tela que diz que a senha está errada e obrigando o usuário a digita-la novamente. Com esta tática o criminoso pode evitar que o usuário digite uma senha errada na primeira tentativa e ele perca então uma Conta devido o descuido da vítima.  Digito qualquer outra senha e o acesso prossegue.

itau05

Na próxima tela o usuário se depara com a Página inicial de seu Home Bank. É possível ver no cabeçalho o número da agência e conta que usamos, um relógio marcando horário da sessão e tudo mais.  Não existe nenhum dado como Nome do titular.  É uma tela totalmente Inóqua e a partir de agora qualquer link que o usuário clicar irá direciona-lo para o roubo dos próximos dados e prover as informações finais que o criminoso necessita para efetuar fraudes em nome da vítima.

itau06

Após clicar no link de “Transferência, DOC e TED” o portal me direciona para uma tela onde sou solicitado a escolher qual o mecanismo de segurança utilizo para o acesso.  Iremos clicar no “Cartão de Segurança Itaú”. Este cartão é um método de segurança utilizando OTP (One-Time Passwords) e é um método muito comum entre usuários bancários para validar e proteger transações em sessões online e em Caixas Eletrônicos.

itau07

Nesta tela totalmente desconexa do contexto da nossa transação atual é pedido ao usuário que ele digite no template o número do cartão de crédito e a validade para “confirmação”.  Um detalhe interessante a ver é a falha no caracter no Title da Janela.

itau08

itau09

Após preencher os dados referentes ao cartão de crédito, a próxima tela irá pedir para o usuário preencher o template do cartão de senhas com o número de referência e os números de cada posição.

Caso o usuário preencha estes campos corretamente e envie o criminoso irá ter acesso total aos dados necessários para efetuar transações compras e tudo mais.

itau10

Após clicar em  Continuar é exibida uma tela dizendo que o acesso foi finalizado e a sessão foi encerrada. Após isso o usuário é direcionado para a sessão HTTPS original do banco do cliente.

Para usuários leigos que não tem conhecimento deste tipo de fraude é muito difícil identificar que o site do banco é falso e que os dados que ele está digitando serão utilizados para fraudes. Imagino que devido ao grande número de sites que o criminoso clonou, deve estar coletando muitas credenciais.

Todos os responsáveis  pelos hosts envolvidos neste ataque foram notificados para que possam tomar alguma providência e remover do ar os acessos responsáveis pelo ataque. Foi efetuada também uma denúncia em Blacklists diversas, como por exemplo PhishingTank.org.

Malzilla: Malware hunting tool

Infecções de malwares causadas por Drive-By Applets tem feito cada vez mais vitimas. Muitas vezes é dificil perceber que o website foi modificado. Muitas vulnerabilidades permitem que o atacante modifique o conteúdo da aplicação que o usuário visualiza, fazendo com que se torne cada vez mais dificil identificar possíveis ataques.
Uma tecnica utilizada por atacantes, que torna seus scripts maliciosos dificeis de serem detectados por engines de IDS, antivirus e afins, é a criptografia e ofuscamento do source, utilizando-se de multiplas camadas de javascript, e codificações como por exemplo Base64Encode, HTMLencode, entre outros.
Páginas que contem exploits geralmente usam uma série de redirecionamentos e códigos ofuscados para torna-la mais dificil para alguem identificar. Malzilla é um programa muito útil para explorar páginas maliciosas. Ele permite que você escolha seu próprio “user agent” e “referrer”, e tem a habilidade de usar inclusive proxies (webscarab, paros proxy, zap).
Através do Malzilla você pode visualizar o source da página e todos os headers HTTP. Além disso a ferramenta fornece diversos decodificadores e também possui a opção para Deobfuscate javascript.

Na imagem abaixo temos um exemplo de código ofuscado utilizado em um Phishing Scam, enviado por e-mail para usuários. A utilização do código ofuscado, faz com que filtros de conteúdo, falhem em identificar tags maliciosas que podem estar previamente cadastrada em alguma blacklist.

01

Este é o conteúdo de um link que recebemos por e-mail em um eCard Spam.

Para conseguir o link direto do malware, teremos que trabalhar com a função JavaScript unescape.  Vamos clicar em “Send Script to Decoder” e “Run Script” na aba do decoder, assim conseguiriamos os seguintes resultados:

02

Na janela abaixo, podemos ver decodificado um VBScript utilizado para fazer o download  de um arquivo malicioso.

Outro exemplo muito comum, durante um ataque de Drive-by Download, é o uso de scripts que tentam escrever diretamente o Binário através de um script no disco.

03

Com o Malzilla podemos trabalhar os diversos filtros para gerar uma cadeia de identificação que pode ajudar muitos especialistas de segurança a identificar ameaças que chegam por links de Spam.

A ferramenta é disponibilizada para Windows, assim como você baixar o Source dela para compilar  e utilizar em plataformas Unix.

Para maiores informações:

http://malzilla.sourceforge.net/documents.html

Book of Month: November

Book Description

“This is a must-have work for anybody in information security, digital forensics, or involved with incident handling. As we move away from traditional disk-based analysis into the interconnectivity of the cloud, Sherri and Jonathan have created a framework and roadmap that will act as a seminal work in this developing field.”
– Dr. Craig S. Wright (GSE), Asia Pacific Director at Global Institute for Cyber Security + Research.

“It’s like a symphony meeting an encyclopedia meeting a spy novel.”
–Michael Ford, Corero Network Security

On the Internet, every action leaves a mark–in routers, firewalls, web proxies, and within network traffic itself. When a hacker breaks into a bank, or an insider smuggles secrets to a competitor, evidence of the crime is always left behind.

Learn to recognize hackers’ tracks and uncover network-based evidence in Network Forensics: Tracking Hackers through Cyberspace.Carve suspicious email attachments from packet captures. Use flow records to track an intruder as he pivots through the network. Analyze a real-world wireless encryption-cracking attack (and then crack the key yourself). Reconstruct a suspect’s web surfing history–and cached web pages, too–from a web proxy. Uncover DNS-tunneled traffic. Dissect the Operation Aurora exploit, caught on the wire.

Throughout the text, step-by-step case studies guide you through the analysis of network-based evidence. You can download the evidence files from the authors’ web site (lmgsecurity.com)

Paper: Locating Stateless Firewalls

Neste texto, escrito pelo pessoal do sock-raw,  temos algumas metodologias para exploitação de falhas de configuração em Firewalls Stateless, assim como formas de analisar se um firewall é Stateless ou Statefull.  O texto também trata como algumas ambiguidades na RFC  causam diversas vulnerabilidades que podem ser utilizadas de diversas maneiras, tanto facilitando na intrusão, quanto na extrusão de dados.

Link:  http://sock-raw.homeunix.org/papers/firewalls

Boa leitura.

Curso: Web Application Hacking 29/11

Pessoal, estou fechando uma turma agora dia 29/11. Convido a todos que tenham interesse de participar. Me enviem um email para maiores informações ou então acesssem a parte “Academy”.

Preço especial para quem citar este link.

Aguardo a todos.

Good Hacking 4 All.

Revealed: The Internet’s Biggest Security Hole

Two security researchers have demonstrated a new technique to stealthily intercept internet traffic on a scale previously presumed to be unavailable to anyone outside of intelligence agencies like the National Security Agency. The tactic exploits the internet routing protocol BGP (Border Gateway Protocol) to let an attacker surreptitiously monitor unencrypted internet traffic anywhere in the world, and even modify it before it reaches its destination. Find out about a new exploit that uses a weakness in the design of the internet’s Border Gateway Protocol (BGP) to re-direct traffic to an eavesdropper. How do you think ISPs will respond to defending against this new technique? Check it out in the article below.

http://blog.wired.com/27bstroke6/2008/08/revealed-the-in.html