Dezasamblarea programele de consola pentru a găsi parola

Principala sarcină, ceea ce duce la dezasamblarea aplicațiilor este necesitatea de a modifica structura și comportamentul executabil finit. Cel mai elocvent exemplu este dezasamblare protecție Hacking, built-in dezvoltatori. Luați în considerare soluția acestei probleme pe un exemplu practic.

Atenție! Acest ghid este destinat numai pentru a asigura cunoștințele de asamblare pentru oamenii care programează electronice în această limbă. În orice caz, nu efectuați pașii din acest ghid cu privire la orice alta decât cea prezentată în exemplul de programe.

Listarea programului de testare pentru a găsi parola labDasm.cpp:

Etapele algoritmului pentru identificarea parolei:

1. Deschideți depanatorul depanatorul Turbo fișier executabil (TD.exe) labDasm.exe;

2. Efectuați programul de urmărire în serie (cerere de introducere a parolei pentru a introduce orice șir cum ar fi în „12345V.“) Pentru a găsi un punct de comparație, strcmp procedura de apel (Figura 1);

Dezasamblarea programele de consola pentru a găsi parola

În acest caz:

Dezasamblarea programele de consola pentru a găsi parola

După cum se poate observa din Figura 3, la 5845h offset este introdus de la linia de tastatură mai devreme în cele din urmă „12345V“ a liniei cu codul 0, iar trecerea de 00AAh să fie parolă în „parola B“.

Algoritmul modifică fișierul executabil pentru răspunsul său pozitiv la parola incorecte:

1. Deschideți depanatorul debugger Turbo (TD. Exe) labDasm fișier executabil. exe;

2. Se efectuează programul de urmărire serial pentru găsirea unei operațiuni de ramură condiționată după apelul strcmp procedura de comparare (Fig. 4). S-au găsit operațiune de salt condiționat are jne cod mașină 7505h;

5. Operare Găsiți cu codul mașinii 7505 h (F 7 Căutare -> Hex intrare shesnadtsaterichnyh caractere);

6. operarea Schimbarea jne la je (F 3 pentru a intra în modul de editare apoi F 2 pentru a schimba comanda curentă) (figura 5).

7. Salvați și s Menenius (F9).

Dezasamblarea programele de consola pentru a găsi parola

Dezasamblarea programele de consola pentru a găsi parola

Acum, că fișierul executabil este modificat atunci când introduceți parola greșită, programul va trata ca fiind corect (fig. 6).

Pentru a efectua Revendicările manuale a durat 30 de minute.