Oficina
Rebelx crackme três (I-1)
Seg 21 Ago 2006 17:03 |
- Detalhes
- Categoria: Pilotando o rato I-1
- Atualização: Quarta, 15 Abril 2009 12:49
- Autor: vovó Vicki
- Acessos: 18029
GUiPeX - UPX Front-End para Win32
O GUiPeX é um compactador / descompactador para UPX, um algoritmo de compactação de código aberto disponibilizado sob licença GNU General Public License. Como o UPX roda apenas em DOS, a interface gráfica do GUiPeX é muito benvinda. Só tem um porém: o UPX está na versão 2.02 e a versão default do GUiPeX é 1.24. Mas tem uma notícia muito boa. Você pode fazer o download do UPX mais atualizado no site do projeto UPX e configurar o GUiPeX para usar a versão que você deseja. Faça o seguinte:
- Faça o download do UPX atualizado.
- Descompacte o pacote numa pasta própria.
- Rode o GUiPeX.
- Clique no item de menu Tools e escolha Options
- Clique na aba UPX Location e no botão com uma pasta ao lado da caixa de texto identificada por Specify location of UPX.exe.
- Procure e selecione o executável do UPX que você acabou de instalar.
Isto é tudo. Assim que você tiver apontado o upx.exe, os campos abaixo de Installed UPX information serão preenchidos, indicando que o GUiPeX usará o executável desejado. Feche a janela das opções clicando no botão [OK] e o GUiPeX está pronto para compactar ou descompactar executáveis.
Desempacotando o Rebelx - capítulo II
Quando usamos o descompactador genérico do PEid, o Rebelx foi descompactado de uma forma meio estranha: os nomes das seções UPX0, UPX1 e .rsrc não foram alterados e, além disto, foi criada uma nova seção com o nome de .snaker. Será que é assim mesmo, ou será que é possível recuperar a forma original do programa? Esta resposta será dada pela dupla UPX/GUiPeX
- Clique e arraste o programa Rebelx crackme 3.exe para a área identificada por Files to Compress/Decompress da janela principal do GUiPeX.
- Na área UPX Commands, escolha Decompress no caixa de opções identificada por Commands.
- Marque a opção Keep Backup File.
- Clique no botão [Run] na barra de ferramentas.
Na área de texto da parte inferior da janela principal aparece um relatório dizendo que o executável foi descompactado pelo UPX 2.02 em 328 milisegundos etc e tal. Bem, é sinal que funcionou e de que está na hora de ver os resultados. Vá para a pasta onde está o Rebelx e confira: devem existir dois arquivos, o Rebelx crackme 3.exe (que está descompactado) e a cópia que pedimos que fosse feita, cujo nome é Rebelx crackme 3.ex~
Logo de cara a primeira diferença - o tamanho do executável descompactado mostra 394 Kb contra os 448 Kb do arquivo descompactado pelo PEid. Se você tiver a paciência de abrir o novo descompactado com o PEid e der uma olhada nas seções do executável... tchan, tchan, tchan, tchan... as seções originais foram todas recuperadas (CODE, DATA, BSS, .idata, .tls, .rdata, .reloc e .rsrc). Foi isto que eu chamei de uma descompactação mais "limpa" :thumbup:
Tomando contato com o OllyDbg
O OllyDbg é um debugador com o qual podemos acompanhar passo a passo a execução de programas. Além possuir um desassemblador poderoso que nos mostra todas as linhas de comando, podemos observar o conteúdo dos registradores e de posições da memória. É uma delícia para quem está começando e um prato cheio para programadores experientes.
Neste artigo vou dar apenas algumas noções de como se lida com o OllyDbg - o resto vem em outros artigos e com a prática - e mostrar só algumas das muitas capacidades deste debugger.
Imagino que você já tenha instalado o aplicativo e que ele esteja rodando. Clique em File e escolha Open para carregar o Rebelx crackme 3.exe. O OllyDbg processa uma porção de coisas e mostra uma janela com quatro painéis. Clique com o botão direito do mouse na área do código desassemblado (painel superior esquerdo) para obter um menu como mostrado na fig.1:
Neste menu, escolha Search for (procurar por) e depois All referenced text strings. Isto faz com que seja apresentada uma nova janela com todas as strings encontradas no executável.