Março 11, 2022

Os Hacks por trás do Cracking, Parte 1: Como contornar o registro de Software

se você já se perguntou como os piratas do software podem pegar o software e quebrá-lo uma e outra vez, mesmo com a segurança no lugar, esta pequena série é para você. Mesmo com os métodos mais avançados de hoje para derrotar a pirataria no lugar, ainda é relativamente fácil de quebrar quase qualquer programa no mundo. Isso se deve principalmente à capacidade dos processos do computador de serem completamente manipulados por um depurador de montagem. Usando isso, você pode ignorar completamente o processo de registro, fazendo com que ele pule o processo de verificação do código-chave do aplicativo sem usar uma chave válida. Isso funciona porque a montagem permite que você fale diretamente com o processador e force um salto sobre o processo de registro.

neste Byte nulo, vamos ver como o cracking poderia funcionar na prática, olhando para um programa de exemplo (um programa que não serve a nenhum outro propósito além de hackear). Eu não vou guiá-lo através de como realmente quebrar um programa legítimo, porque eu não posso simplesmente quebrar um programa para demonstração, mas as técnicas aplicadas aos meus exemplos devem dar-lhe a base necessária para criar o seu próprio. Nesse ponto, é um teste de sua moral se você quiser usar seu conhecimento para o bem ou para o mal.

requisitos

  • Windows (apenas para exemplos, existem depuradores em todas as plataformas)
  • um depurador instalado: IDA, ollydbg, etc. (ollydbg será usada nos exemplos)

Passo 1 Teste o Programa

Primeiro, execute o programa que está a tentar fazer engenharia reversa e tente ativar-lo com uma chave aleatória para verificar se você precisa de um software válida tecla para continuar. Isso é para verificar se podemos criar as chaves.

Etapa 2 Execute o programa em um depurador

  1. execute ollydbg.
  2. abra o programa que deseja ignorar com ollydbg.
  3. clique no botão Reproduzir para executar o programa com o depurador anexado.
  4. clique com o botão direito na janela da CPU e clique em Pesquisar por > todas as chamadas intermodulares.
  5. pesquise DLLs de alto interesse. GETDLGITEMTEXT, será para caixas de diálogo, que são chamadas quando você tenta inserir uma chave de software. Ao entrar na função com o depurador, podemos examinar o registro especificamente. SENDDLGITEM também pode ser usado.
  6. teste para ver qual funciona para sair do loop de ativação clicando com o botão direito do mouse na chamada DLL e definindo um ponto de interrupção para todas as instâncias dessa chamada.
  7. retome o programa e insira qualquer chave de software que você quiser. Se o depurador quebrar (pausa a execução do programa) depois de inserir sua chave, você sabe que encontrou DLL na Etapa 5.
  8. pressione F8 de volta na janela da CPU para forçar a próxima etapa até chegar ao teste EAX. EAX é o retorno de um valor, o que significa que uma verificação está sendo realizada aqui. Após o exame, podemos ver que o EAX está verificando um número que não é igual a um valor nulo. Isso significa que, se for substituído por algo diferente de null, ele será executado.
  9. clique com o botão direito do mouse no EAX e altere-o no valor hex para 1, em vez de 0.
  10. retomar o programa novamente, e você terá ativado com sucesso o programa.E para prova foi registrado para mim:

isso funciona porque você está fazendo o processo pular de um registro e pular aquele que verifica a chave inserida. Para explorar o algoritmo de registro de chaves, fique de olho na segunda parte deste tutorial sobre como fazer o gerador de chaves. Hooray para montagem!

  • enviar mensagem para os fóruns
  • bate-Papo no IRC
  • Siga no Twitter
  • Círculo no Google+

Imagem via msbyron27

Via Os Hacks Atrás de Quebra, Parte 1: Como Ignorar o Registro de Software no null-byte.wonderhowto.com.

Leia mais posts sobre WonderHowTo “

Deixe uma resposta

O seu endereço de email não será publicado.