Разглобяване програми за конзолата, за да намерите паролата

Основната задача, която води до демонтажа на заявления е необходимостта да се промени структурата и поведението на крайния изпълнимия файл. Най-ярък пример е демонтаж Hacking защита, вградени разработчици. Помислете за решаването на този проблем на един практически пример.

Внимание! Това ръководство е предназначено само за осигуряване на знания монтаж на хора, които програмират електрониката на този език. Във всеки случай, не се изпълнят стъпките в това ръководство по всички програми, различни от този, показан в примера.

Обява на програмата за тест, за да се намери labDasm.cpp парола:

Стъпки алгоритъм за намиране на паролата:

1. Отворете дебъгер Turbo дебъгер (TD.exe) labDasm.exe изпълним файл;

2. Извършване на сериен програма проследяване (искане въвеждане на паролата да въведете низ като В "12345V.") За да намерите точка за сравнение, strcmp на извикване на процедура (Фигура 1.);

Разглобяване програми за конзолата, за да намерите паролата

В този случай:

Разглобяване програми за конзолата, за да намерите паролата

Както се вижда от фигура 3, при офсет 5845h се въвежда от клавиатурата линия по-рано в "12345V" край на линията с кода 0, и преминаването на 00AAh бъде парола в "парола Б".

Алгоритъмът променя изпълнимия файл за положителния й отговор на неправилна парола:

1. Отворете дебъгер Turbo дебъгер (TD. Exe) изпълним файл labDasm. Търсейки;

2. Извършване на сериен програма за проследяване на намиране на работа условно разклонение след обаждането strcmp процедура сравнение (фиг. 4). Намерени операция условно скок има JNE машинен код 7505h;

5. операция Find с машинен код 7505 ч (F 7 от търсенето -> Hex входни shesnadtsaterichnyh знака);

6. Промяна на работа на JNE да JE (F 3, за да влезете в режим на редактиране след това F 2 за промяна на текущата команда) (Фигура 5).

7. С изключение и е Menenius (F9).

Разглобяване програми за конзолата, за да намерите паролата

Разглобяване програми за конзолата, за да намерите паролата

Сега, след като изпълним файл се променя, когато въведете грешна парола, програмата ще го разглежда като правилна (фиг. 6).

За да изпълните инструкциите претенции отне 30 минути.