Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 12 ноября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Исследование ViPNET [TermiNET] 1.81.0.31

Обсудить статью на форуме

Очень удобно, когда все крэкерские инструменты, книги и статьи в одном месте. Используйте сборник от EXELAB - вот тут.

Автор: FEUERRADER <feuerrader@nm.ru>


   Программа: ViPNET [TermiNET] 1.81.0.31
      Размер: 2158592 байт
        Язык: Microsoft Visual C++ 6.0 [Analysed by PeID]
      Защита: файловая лицензия
        Цель: исследование/взлом
 Инструменты: Win32Dasm 9.0, HIEW 6.03
 

Описание: программа ViPNet [TermiNET] – это персональный сетевой экран, предназначенный для защиты компьютера от атак из Интернет. Да, хороший файрволл, иногда срабатывает, когда к тебе лезут непрошенные гости. При запуске выползает наг с напоминанием о том, что наши дни сочтены. Так больше нет ограничений, кроме этого проивнога наг-скрина.
Удалось выяснить следующую информацию:
Ключ с триал информацией: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\SYSTEM
Параметр с паролем: DRUN
Параметр с датой установки: DALARM
Параметр с датой истечения триала: DALERT
Т.е. можно управлять триалом. Но надо избавиться от нага.
Исследование: Дизасмим прогу...теперь откроем SDR (string data reference), ну список с доступными строками. Ищем строку: String Resource ID=40452: "The system time is invalid. Please set the correct time on y". Она встречается в тексте 2 раза. Щелкаем пару раз и останавливаемся на адресе 43572F. Смотрим чуть выше:

 :004531E5 E872E6FAFF              call 0040185C  //проверка на изменение
 :004531EA 85C0                    test eax, eax  //системного времени
 :004531EC 744D                    je 0045323B
 
 * Possible Reference to String Resource ID=40452:
        "The system time is invalid. Please set the correct time on y"
                                   |
 :004531EE 68049E0000              push 00009E04
 :004531F3 8D4C2404                lea ecx, dword ptr [esp+04]
 
 

Что, если сделать прыжок на 45323B?

 :0045323B 8D4C2404                lea ecx, dword ptr [esp+04]
 
 * Reference To: MFC42.MFC42:NoName0536, Ord:09D2h
                                   |
 :0045323F E8A4B90200              Call 0047EBE8     <--Вызывется наг
 :00453244 83F801                  cmp eax, 00000001 <--если в окне нага НЕ нажали
 :00453247 755E                    jne 004532A7      <--OK, то прыгаем на ошибку
 :00453249 8B442464                mov eax, dword ptr [esp+64]
 :0045324D 85C0                    test eax, eax     <--если в окне нага НЕ нажали
 :0045324F 7456                    je 004532A7       <--OK, то прыгаем на ошибку
 :00453251 8D8C24A8000000          lea ecx, dword ptr [esp+000000A8]
 :00453258 C78424B800000004000000  mov dword ptr [esp+000000B8], 00000004
 :00453263 E81EF3FAFF              call 00402586
 :00453268 8D4C2468                lea ecx, dword ptr [esp+68]
 :0045326C C68424B800000003        mov byte ptr [esp+000000B8], 03
 
 * Reference To: MFC42.MFC42:NoName0096, Ord:02FDh
                                   |
 :00453274 E8F5BD0200              Call 0047F06E     <--вызывает саму прогу

Т.е., как Вы понимаете, после того, как нажата кнопка в наге, в еах возвращается 0,1,2 и т.д. Кнопка ОК возвращает 1. Тогда, NOPим CALL 0047EBE8, заменяем прыжок
:00453247 755E jne 004532A7 на
:00453247 7500 jne 00453249
А также заменяем ниже:
:0045324F 7456 je 004532A7 на
:0045324F 7400 je 00453251

Получается, что прога думает, что в наге нажали ОК, хотя мы его вообще не вызывали (заНОПили). В общем всё, но давайте уберем переход, на котором вызывается мессага "The system time is invalid..." (см. выше).
:004531EC 744D je 0045323B
:004531EC EB4D jmp 0045323B

Теперь точно всё, прога взломана, вот кряк:

 Difference(s) between Terminet.exe & cracked.exe
 ==============резать=тут==================
 000531EC: 74 EB
 0005323F: E8 90
 00053240: A4 90
 00053241: B9 90
 00053242: 02 90
 00053243: 00 90
 00053248: 5E 00
 00053250: 56 00
 ==============резать=тут==================

Послесловие: в интернете найден кряк для версии 1.82.0.39 от TSRh Team. Естественно, кряк к версии 1.81.0.31 не подходит. Для интереса я распаковал сам кряк и при помощи отладчика (так как проверяется CRC32) сделал так, чтобы кряк пропатчил прогу. Выяснилось, что также патчатся штук 6 байт (не помню толком) на NOP. Видимо также как я выше описал заNOPивается какой-то CALL и переходы. Похоже, если не сменится регистрация, этот кряк может быть универсальным и в последующих версиях ViPNET [TermiNET].

Спасибо за интерес к этой статье!



Все права защищены ©  2003 



Обсуждение статьи: Исследование ViPNET [TermiNET] 1.81.0.31 >>>


Материалы находятся на сайте https://exelab.ru



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS