Найти в Дзене

GEOstrip Systems v4.0.5.4 (StripLog) экспресс аналитика.

Текущая статья не является практическим руководством или руководством к действию. Представленный материал представлен исключительно в образовательных целях и повышения информационной грамотности и несёт в себе концепцию «пища для размышления» не нарушая авторского и/или смежного права. Повторять описанные процессы не рекомендуется. Часть материала может быть полезна инженерам, которые занимаются различными вопросами и проблемами криптологии. Некоторые материалы, находящиеся в теле статьи, являются собственностью их многоуважаемых авторов, о чем предметно указано. Статья не претендует на полноту. Некоторые значения и параметры были сознательно изменены. Текущая статья является логическим продолжением аналитики GEOstrip Systems v4.0.7.0. Материалы касаются программного обеспечения компании Geological Rentals and Services Inc. ("GRS"), Калгари, Альберта, Канада. Сведения более предметно о назначении программного обеспечения можно посмотреть в статье описывающей версию v4.0.7.0 и версию v4
Текущая статья не является практическим руководством или руководством к действию. Представленный материал представлен исключительно в образовательных целях и повышения информационной грамотности и несёт в себе концепцию «пища для размышления» не нарушая авторского и/или смежного права. Повторять описанные процессы не рекомендуется. Часть материала может быть полезна инженерам, которые занимаются различными вопросами и проблемами криптологии. Некоторые материалы, находящиеся в теле статьи, являются собственностью их многоуважаемых авторов, о чем предметно указано. Статья не претендует на полноту. Некоторые значения и параметры были сознательно изменены.

Текущая статья является логическим продолжением аналитики GEOstrip Systems v4.0.7.0. Материалы касаются программного обеспечения компании Geological Rentals and Services Inc. ("GRS"), Калгари, Альберта, Канада. Сведения более предметно о назначении программного обеспечения можно посмотреть в статье описывающей версию v4.0.7.0 и версию v4.0.8.15. Даунгрейд конечно не предлагается. Исключительно в ознакомительных целях. Версии v4.0.7.0 и v4.0.5.4 конфликтуют между собой, хотя и ставятся в разные каталоги.

Рисунок 1. - Информация о версии программы.
Рисунок 1. - Информация о версии программы.

Указанная версия является самой ранней из изученных версий. Однако не самой первой попавшей в руки. В данной статье ограничусь в основном указанием адресов и их значений. Более полная информация есть в аналитике v4.0.7.0.

Начало, конечно, идёт с блокировки меню, которая начинается в обработчике @Menus@TMenuItem@AppendTo$qqruio обрабатывая двойные слова по адресу 0082002Ch и 00820064h. Фикс двойных слов в нуль отпускает строку меню. Таким образом, переведём значение Enable в состояние True.

Рисунок 2. - Адреса заглушек строки меню.
Рисунок 2. - Адреса заглушек строки меню.

Таблица контроля флагов и адреса их изменения ниже:

Рисунок 3. - Таблица адресов расположения флагов.
Рисунок 3. - Таблица адресов расположения флагов.

По указанным адресам необходимо контролировать наличие "единицы". Сами по себе флаги находятся по адресам:

Рисунок 4. - Адрес и структура расположения флагов.
Рисунок 4. - Адрес и структура расположения флагов.

Значение по умолчанию у флагов нуль. Хорошо бы пофиксить их на значение один. Пример обработки флагов по умолчанию приведён ниже.

Рисунок 5. - Пример обработки флагов.
Рисунок 5. - Пример обработки флагов.

При обработке адреса 006BC032h возникают проблемы коррекции аккумулятора.

Рисунок 6. - Пример коррекции при отсутствии места.
Рисунок 6. - Пример коррекции при отсутствии места.

В этом случае корректируется вызов выше по коду CALL sub_6BD308. В хвосте процедуры корректируется значение аккумулятора.

Рисунок 7. - Коррекция аккумулятора.
Рисунок 7. - Коррекция аккумулятора.

Трёхбайтовый код меняется на MOV al,1 (B001h) и на NOP (90h). В местах, где используется регистр EDX (XOR edx,edx), конструкция меняется на MOV dl,1 (B201h).

Запретить вытягивать донгл можно по адресу 006BC2B9h. Команду TEST необходимо заксорить XOR eax, eax (33C0h).

Рисунок 8. - Проверка вытянутого донгла.
Рисунок 8. - Проверка вытянутого донгла.

Запретить обнуления лицензии можно по адресу 006BC3C0h, требуется наличие единичного значения:

Рисунок 9. - Адрес обнуления лицензии
Рисунок 9. - Адрес обнуления лицензии

Дополнительные сведения можно подчерпнуть в v4.0.7.0 и v4.0.8.15.

Тестируйте и делитесь статистикой.