Сейчас на форуме: _MBK_, Rio (+5 невидимых)

 eXeL@B —› Вопросы новичков —› Динамическая загрузка строк
Посл.ответ Сообщение

Ранг: 10.5 (новичок)
Активность: 0.010
Статус: Участник

Создано: 30 августа 2008 16:50 · Поправил: tekton
· Личное сообщение · #1

Как найти место где сверяется серийник, если сообщение об ошибке ( и вообще все сообщения, надписи, весь интерфейс!) загружаются динамически. Код прорисовки я нащел. Код типа:

Code:
  1. 77D5E176              MOV CL,BYTE PTR DS:[EAX] <<<<АДРЕС С буквенной  СТРОКОЙ
  2. 77D5E178              INC EAX   <<<<<<  УВЕЛИЧИВАЕМ АДРЕС НА 1, чтобы прочитать    следующую букву, символ   
  3. 77D5E179              TEST CL,CL   <<<<<< ПРОВЕРЯЕМ НЕ НОЛЬ ЛИ В CL
  4. 77D5E17B              JNZ SHORT user32.77D5E176  <<<<<<ЕСЛИ НОЛЬ ИДЕМ ДАЛЬШЕ ЕСЛИ НЕТ, ТО ПРЫГА ЕМ НА  77D5E176


Строки сообщений, тоже нашел. Ссылки на адреса передаются не прямые, а типа:

Code:
  1. 005862BB   87B4DD 522320D9  XCHG DWORD PTR SS:[EBP+EBX*8+D9202352],ESI
  2. 005862DB   81FB 94F7FFFF    CMP EBX,-86C
  3. 0058642D   8F041F           POP DWORD PTR DS:[EDI+EBX]
  4. 0058660B   8B5E 08          MOV EBX,DWORD PTR DS:[ESI+8]
  5. 7C915639   3B0A           CMP ECX,DWORD PTR DS:[EDX]

Что делать в подобной ситуации ??? Как считать адреса? Если можно прокомментируйте, ПОЖАЛУЙСТА!

И Вопрос №2. Прога запускается без нагов, но через каждых пять запусков, вылетает наг. Как отловить место откуда он вылезает.

Заранее Спасибо!



Ранг: 2.5 (гость)
Активность: 0=0
Статус: Участник

Создано: 30 августа 2008 18:13 · Поправил: SL7549
· Личное сообщение · #2

дай прогу глянуть
ЗЫ: что-то в первом коде адреса похожи на системную дллку...



Ранг: 10.5 (новичок)
Активность: 0.010
Статус: Участник

Создано: 30 августа 2008 20:14 · Поправил: tekton
· Личное сообщение · #3

Вот прямая ссылка: http://www.intrapdf.com/download/intrapdf_pdf2html_setup.exe http://www.intrapdf.com/download/intrapdf_pdf2html_setup.exe

Размер 2.87 Мб




Ранг: 355.4 (мудрец), 55thx
Активность: 0.320
Статус: Uploader
5KRT

Создано: 31 августа 2008 15:50 · Поправил: coderess
· Личное сообщение · #4

tekton зачем именно строки искать если нужно искать API фунцкии

GetDlgItemText которая раскладывается на две функции: GetDlgItem и GetWindowText.
и GetWindowText ставишь на них бряки и трасируешь. Судя по адресам 77D5E176 ты не там находишся, не в том модуле.

Вопрос №2

Отлов API, DialogBoxParam, MessageBox (опять же может не в том модуле ты ставишь бряки) или зашита находится в dll позже скачаю программу и посмотрю.


ЗЫ, посмотрел файл накрыт
PEiD: ASProtect 1.2x - 1.3x [Registered] -> Alexey Solodovnikov
DiE: ASProtect 2.3 SKE

-----
Gutta cavat lapidem. Feci, quod potui. Faciant meliora potentes




Ранг: 138.7 (ветеран), 135thx
Активность: 0.110
Статус: Участник

Создано: 02 сентября 2008 10:02 · Поправил: crc1
· Личное сообщение · #5

tekton вот по быстрому:
Код отвечающий за вызов NAG'a
Code:
  1. 0044BBB8  83BD ECFDFFFF 00  CMP DWORD PTR SS:[EBP-214], 0        
  2. 0044BBBF  75 43  JNZ SHORT 0044BC04                   ; Поменять на JMP

Убираем надпись на четных страницах типа сделано в демо версии
Code:
  1. 004810F7  837D 38 01        CMP DWORD PTR SS:[EBP+38], 1
  2. 004810FB  74 58  JE SHORT 00481155                           ; Поменять на JMP

Этот код проверяет четность страниц и если четная меняет текст на Demo
Code:
  1. 0047E6F6  837C82 FC 00      CMP DWORD PTR DS:[EDX+EAX*4-4], 0     
  2. 0047E6FB  8B8F 9C000000     MOV ECX, DWORD PTR DS:[EDI+9C]
  3. 0047E701  75 41             JNZ SHORT 0047E744     ; Не прыгать Поменять на 75 00

Убираем ватермарку
Code:
  1. 004F0BE0  44 00 65 00 6D 00 6F 00 20 00 6D 00 6F 00 64 00  D.e.m.o. .m.o.d.    ; Забить нулями
  2. 004F0BF0  65     e

Может чего не увидел
Чтобы это сделать нужно распаковать файл, либо инлайнить. Кстати, для инлайна. В опциях ASProtecta, отключена проверка crc



Ранг: 10.5 (новичок)
Активность: 0.010
Статус: Участник

Создано: 03 сентября 2008 16:13 · Поправил: tekton
· Личное сообщение · #6

crc1 Спасибо буду щас разбираться!


И ещё вопрос: Расскажите как счетаются эти значения? (См. выделеное >>>XXX<<<)

Code:
  1. DWORD PTR SS:    >>>[EBP+EBX*8+D9202352],ESI<<<
  2. CMP                 >>> EBX,-86C<<<
  3. DWORD PTR DS:           >>> [EDI+EBX]<<<
  4. MOV EBX,DWORD PTR DS:           >>>[ESI+8]<<<
  5. CMP       >>>ECX,DWORD PTR DS:[EDX]<<<



Есле можно прокомментируйте. Спасибо!




Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 03 сентября 2008 17:25
· Личное сообщение · #7

Что значит, как они считаются? Бери ман по асму да посмотри, что значат эти строчки. Или что ты хочешь услышать?



Ранг: 10.5 (новичок)
Активность: 0.010
Статус: Участник

Создано: 03 сентября 2008 20:11
· Личное сообщение · #8

Читаю Поснова А. "Реверсинг и защита программ от взлома". Там есть глава "Способы адресации". Есть примеры, но на мой взгляд они очень сухие и там нет примеров как понять вот такое:
Code:
  1. DWORD PTR SS:  [EBP+EBX*8+D9202352],ESI


Поэтому, чтобы разобраться и наконецто "догнать", прошу прокомментировать приведенные примеры. Может есть какой ман в котором по доходчевее эта тема раскрыта? Что можете посоветовать? Спасибо!




Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 03 сентября 2008 22:06
· Личное сообщение · #9

И чо тут непонятного? Кладётся (если там mov) ESI в адрес EBP+EBX*8+D9202352. Короче, учи асм. Книжки почитай или чо-нить такое что ли, навалом туторов по асму для новичков ведь.



Ранг: 10.5 (новичок)
Активность: 0.010
Статус: Участник

Создано: 03 сентября 2008 22:44
· Личное сообщение · #10

Спасибо Всем за помощь!




Ранг: 279.1 (наставник)
Активность: 0.160
Статус: Участник
wizard

Создано: 05 сентября 2008 16:41
· Личное сообщение · #11

tekton пишет:
Прога запускается без нагов, но через каждых пять запусков, вылетает наг. Как отловить место откуда он вылезает.


Значит прога гдето считает количество запусков или в реестре или в файл какой пишет => regmon.exe , filemon.exe.

-----
Что один человек сделал , другой всегда сломать может...



 eXeL@B —› Вопросы новичков —› Динамическая загрузка строк
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати