A Aldeia Numaboa ancestral ainda está disponível para visitação. É a versão mais antiga da Aldeia que eu não quis simplesmente descartar depois de mais de 10 milhões de pageviews. Como diz a Sirley, nossa cozinheira e filósofa de plantão: "Misericórdia, ai que dó!"

Se você tiver curiosidade, o endereço é numaboa.net.br.

Leia mais...

Oficina

Rebelx crackme três (I-1)

Seg

21

Ago

2006


17:03

(31 votos, média 4.77 de 5) 


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:

  1. Faça o download do UPX atualizado.
  2. Descompacte o pacote numa pasta própria.
  3. Rode o GUiPeX.
  4. Clique no item de menu Tools e escolha Options
  5. 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.
  6. 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 smile

  1. Clique e arraste o programa Rebelx crackme 3.exe para a área identificada por Files to Compress/Decompress da janela principal do GUiPeX.
  2. Na área UPX Commands, escolha Decompress no caixa de opções identificada por Commands.
  3. Marque a opção Keep Backup File.
  4. 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:

OllyDbg
Fig.1 - OllyDbg com menu adicional

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.

Informações adicionais