Сейчас на форуме: zds, -Sanchez- (+9 невидимых)

 eXeL@B —› Протекторы —› HTML Executable (RLPack 1.20)
. 1 . 2 . >>
Посл.ответ Сообщение

Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

Создано: 17 октября 2008 21:03 · Поправил: Djeck
· Личное сообщение · #1

привет всем.Понадобилась помощь.
Гулял как-то на руборде и заметил одну очень не плохую прогу на котору крека лет пять наверное нету.Решил посмотреть.О проге:
HTML Executable- Создаeт exe. файл из нескольких HTML страниц. Программа необходима для разработки и распространения презентаций, документов, учебных пособий и т.п. В формате HTML.
Скачать: files.htmlexe.com/heinst.exe
Размер 12 метров
Мой дамп: rapidshare.de/files/40700304/dump_.rar
Размер: 3.7 метров
Теперь о самой защите.Файл упакован RLPack 1.20.По ходу с максимальными опциями.Скажу честно прот в глаза вижу в первый раз,поэтому при распаковке мог где и накосячить,т.к. распаковал всего то за 20 минут и с первого раза.
немного подробнее о том,что делал:
Антиотладка:
Code:
  1. 00C0ACC3    FFD3            CALL EBX
  2. 00C0ACC5    61              POPAD
  3. <b>00C0ACC6    E8 DF450000     CALL 00C0F2AA</b>   <-----нопим
  4. 00C0ACCB    E8 983B0000     CALL 00C0E868
  5. 00C0ACD0    83BD B2570000 0>CMP DWORD PTR SS:[EBP+57B2],0
  6. 00C0ACD7    74 13           JE SHORT 00C0ACEC

По адресу 00C0ACC6 можно посмотреть,как происходит обнаружение и подправить джампы,но разницу нету,так что легче занопить.Дальше:
Code:
  1. 00C0AE29    68 00200C00     PUSH 0C2000
  2. 00C0AE2E    FFB5 A44E0000   PUSH DWORD PTR SS:[EBP+4EA4]
  3. 00C0AE34    FF95 310B0000   CALL DWORD PTR SS:[EBP+B31]              ; HEBuild.00C0F67B
  4. <b>00C0AE3A    E8 C1290000     CALL 00C0D800    <------нопим
  5. 00C0AE3F    E8 BD3B0000     CALL 00C0EA01    <------нопим</b>
  6. 00C0AE44    E8 DC120000     CALL 00C0C125
  7. 00C0AE49    E8 7C110000     CALL 00C0BFCA
  8. 00C0AE4E    83BD 3B550000 0>CMP DWORD PTR SS:[EBP+553B],0
  9. 00C0AE55    74 07           JE SHORT 00C0AE5E
  10. 00C0AE57    E9 01170000     JMP 00C0C55D
  11. 00C0AE5C    EB 01           JMP SHORT 00C0AE5F
  12. 00C0AE5E    61              POPAD
  13. 00C0AE5F  - E9 24C4B9FF     JMP 007A7288     <---------прыжок на оеп
  14. 00C0AE64    90              NOP

По адресам 00C0AE3A и 00C0AE3F идёт "включение" андидампа и защиты таблицы импорта.Можно так же потрейсить и разобраться,что тут происходит,но проще занопить и эти две защитные функции идут лесом.

Code:
  1. 007A7288    90              NOP    <-------- ОЕП</b>
  2. 007A7289    90              NOP
  3. 007A728A    90              NOP
  4. 007A728B    B9 28000000     MOV ECX,28
  5. 007A7290    6A 00           PUSH 0
  6. 007A7292    6A 00           PUSH 0
  7. 007A7294    49              DEC ECX
  8. 007A7295  ^ 75 F9           JNZ SHORT 007A7290
  9. 007A7297    51              PUSH ECX
  10. 007A7298    53              PUSH EBX
  11. 007A7299    56              PUSH ESI
  12. 007A729A    57              PUSH EDI
  13. 007A729B    B8 68427A00     MOV EAX,007A4268
  14. 007A72A0    E8 5B0CC6FF     CALL 00407F00
  15. 007A72A5    33C0            XOR EAX,EAX
  16. 007A72A7    55              PUSH EBP
  17. 007A72A8    68 73787A00     PUSH 007A7873

С краденными байтами не разбирался,т.к. тут всего то 3 байта (кстати кто знает рад бы услышать как здесь найти пизженные байты).
С антидампом вопрос тоже решил быстро.Просто пристегнул кусок памяти (JMP 014E0119) к экзешнику.Вот собственно распаковка на этом и завершена.А вот дальше хрен знает чё делать.
При загрузке строк появляется ошибка:
00407D8B /74 3D JE SHORT 00407DCA
00407D8D |817B 04 0000010>CMP DWORD PTR DS:[EBX+4],10000 ; UNICODE "=::=::"
00407D94 |7D 2A JGE SHORT 00407DC0
00407D96 |68 00100000 PUSH 1000
00407D9B |8D4424 04 LEA EAX,DWORD PTR SS:[ESP+4]
В строке подсказки олли:
DS:[558BFFCD]=???
Пытался трейсить поочерёдно запакованный файл и дамп,но чё-то не получается.Был бы рад если кто с этим поможет.




Ранг: 533.6 (!), 232thx
Активность: 0.450
Статус: Uploader
retired

Создано: 17 октября 2008 21:55
· Личное сообщение · #2

т.е. файл распакован, но не работает? типа распакован нeправильно.

-----
Лучше быть одиноким, но свободным © $me




Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

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

borov пишет:
т.е. файл распакован, но не работает? типа распакован нeправильно.

распакован то он скорее всего правильно,но почему при загрузке строки идёт ошибка мне не понятно.
00407D8D |817B 04 0000010>CMP DWORD PTR DS:[EBX+4],10000 ; UNICODE "=::=::"
Если посмотреть чуть выше,то видно как формируется адрес EBX.Этот код отрабатывает много раз.Сначала адреса в ebx идут как в оригинале,а потом на тебе и другой адрес (DS:[558BFFCD]=???),а в оригинале он 4XXXXXX и естественно прога не может считать оттуда значение.




Ранг: 533.6 (!), 232thx
Активность: 0.450
Статус: Uploader
retired

Создано: 17 октября 2008 22:32
· Личное сообщение · #4

я в свое время тоже напарился с RLPack'ом, потом нашел на тутс4ю скрипт, он мне и помог, на смотри может чем то поможет

a60e_17.10.2008_CRACKLAB.rU.tgz - RLPack 1.0b - 1.17 (Basic Edition) + 1.16 - 1.17 (Full Edition) OEP Finder.rar

-----
Лучше быть одиноким, но свободным © $me




Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

Создано: 17 октября 2008 23:06
· Личное сообщение · #5

Во первых версии в скрипте старые.Во вторых я же сказал,что сам файл распаковал.ОЕП точно правильный,импорт вроде оригинальный с антидампом тоже вопрос решил.Нахрена мне скрипт?Мне бы узнатьиз-за чего такая ошибка и чё с ней делать




Ранг: 533.6 (!), 232thx
Активность: 0.450
Статус: Uploader
retired

Создано: 18 октября 2008 00:00
· Личное сообщение · #6

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

-----
Лучше быть одиноким, но свободным © $me




Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

Создано: 18 октября 2008 00:08 · Поправил: Djeck
· Личное сообщение · #7

У меня тоже два раза на оеп заходит.Сначало тут:
xor eax,eax
retn
А второй раз как раз тот код который я показал выше.Скорее всего первый раз мутки с ворованным оеп (скажу честно не знаю как искать эти байты,примерный смысл работы понял,но на практике восстановить не получается:s1
З.Ы. Скрипт попробывал не помогает.Пишет-Error!Dont Find




Ранг: 533.6 (!), 232thx
Активность: 0.450
Статус: Uploader
retired

Создано: 18 октября 2008 00:16
· Личное сообщение · #8

Djeck пишет:
Скрипт попробывал не помогает.Пишет-Error!Dont Find

тогда извини, нeправ

-----
Лучше быть одиноким, но свободным © $me




Ранг: 116.5 (ветеран), 3thx
Активность: 0.070
Статус: Участник

Создано: 18 октября 2008 01:46 · Поправил: Valemox
· Личное сообщение · #9

С етим протом не все так просто и ОЕП даж накрыта 13 байтами ВМ. При желании глянь сам - один файл истинный, другой накрыт протом со всеми опциями (для примера взят калькулятор).
Здесь: _http://rapidshare.com/files/155032060/rlp_calc.rar(уже помер)
Архивчег маленький всего 67кб.



Ранг: 1045.7 (!!!!), 31thx
Активность: 0.570
Статус: Участник

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

Valemox пишет:
протом не все так просто и ОЕП даж накрыта 13 байтами ВМ

С этим протом все просто ;) там псевдо ВМ все опкоды в табличке ;) Основная фишка в проте кодесплайсинг и в последних версия кусок памяти пристегнуть не удасться так как указатели в другом регионе памяти ;) и к тому же константы для каждой машины будут разные Хотя в общем пропатчить до оеп и убрать сплайсинг не составлет ни каких сложностей как впрочем и скриптом с оеп ...
Ну и по импорту ;) все что выше сказано просто смешно. так как с 1.9 он хоть и не сложно восстанавливается но юзается и эламинейшн и эмуляция ) при этом чекается црц блоков )



Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

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

pavka пишет:
Основная фишка в проте кодесплайсинг и в последних версия кусок памяти пристегнуть не удасться

в последних это каких?
pavka пишет:
Хотя в общем пропатчить до оеп и убрать сплайсинг не составлет ни каких сложностей как впрочем и скриптом с оеп

пример можно,если Вас не затруднит



Ранг: 116.5 (ветеран), 3thx
Активность: 0.070
Статус: Участник

Создано: 18 октября 2008 10:13 · Поправил: Valemox
· Личное сообщение · #12

Djeck пишет:
в последних это каких?

Я знаю последнюю 1.20.1 тока
пример можно,если Вас не затруднит
Я б тоже с удовольствием на пример глянул бы



Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

Создано: 18 октября 2008 11:01
· Личное сообщение · #13

Valemox пишет:
Я знаю последнюю 1.20.1 тока

Я тоже.
Valemox пишет:
Я б тоже с удовольствием на пример глянул бы

Боюсь не увидим мы примера



Ранг: 1045.7 (!!!!), 31thx
Активность: 0.570
Статус: Участник

Создано: 18 октября 2008 11:48
· Личное сообщение · #14

Djeck пишет:
Боюсь не увидим мы примера

Ну если только вы слепой ;)) За примером иди в проты я выкладвал там распакованый RLPack 1.20
Ни чего личного но напрасно вы постите подобные вещи Djeck пишет:
,как происходит обнаружение и подправить джампы,но разницу нету,так что легче занопить

Djeck пишет:
включение" андидампа и защиты таблицы импорта.Можно так же потрейсить и разобраться,что тут происходит,но проще занопить и эти две защитные функции идут лесом.

Потом будете обвинять меня что я вас высмеиваю ;) , хотя вы и сами делаете это великолепно Прежде чем постить разные глупости не лучше ли разобрать протектор и не выставлять себя на всеобщее посмешище ...



Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

Создано: 18 октября 2008 12:38
· Личное сообщение · #15

pavka не надо придераться к каждому моему слову[b][/b]Я же написал:
Djeck пишет:
Скажу честно прот в глаза вижу в первый раз,поэтому при распаковке мог где и накосячить,т.к. распаковал всего то за 20 минут и с первого раза

pavka пишет:
как происходит обнаружение и подправить джампы,но разницу нету,так что легче занопить

здесь немного не понял,тебя смутил ламерский метод нопа или это не антиотладка?
Крэкми без антиотладки
0040CCCF FFD3 CALL EBX ; crackme1.0040CEDC
0040CCD1 83C4 08 ADD ESP,8
0040CCD4 EB 03 JMP SHORT 0040CCD9
0040CCD6 3D 0000E808 CMP EAX,8E80000
0040CCDB 34 00 XOR AL,0
0040CCDD 0083 BD7E4F00 ADD BYTE PTR DS:[EBX+4F7EBD],AL
0040CCE3 0000 ADD BYTE PTR DS:[EAX],AL

Тот же крекми с антиотладкой
0040CCCF FFD3 CALL EBX ; crackme.0040CEDC
0040CCD1 83C4 08 ADD ESP,8
0040CCD4 E8 EB3D0000 CALL 00410AC4
0040CCD9 E8 08340000 CALL 004100E6
0040CCDE 83BD 7E4F0000 0>CMP DWORD PTR SS:[EBP+4F7E],0
0040CCE5 74 13 JE SHORT 0040CCFA
0040CCE7 83BD 9E4D0000 0>CMP DWORD PTR SS:[EBP+4D9E],0
0040CCEE 74 0A JE SHORT 0040CCFA
0040CCF0 E8 AF320000 CALL 0040FFA4
Здесь же даже помойму слепой увидит разницу

Тоже самое с Antidumping:
00C0AE3A E8 C1290000 CALL 00C0D800 <------нопим
00C0AE3F E8 BD3B0000 CALL 00C0EA01 <------нопим
00C0AE44 E8 DC120000 CALL 00C0C125
00C0AE49 E8 7C110000 CALL 00C0BFCA
00C0AE4E 83BD 3B550000 0>CMP DWORD PTR SS:[EBP+553B],0
00C0AE55 74 07 JE SHORT 00C0AE5E
00C0AE57 E9 01170000 JMP 00C0C55D
00C0AE5C EB 01 JMP SHORT 00C0AE5F
00C0AE5E 61 POPAD
00C0AE5F - E9 24C4B9FF JMP 007A7288 <---------прыжок на оеп

Без Antidumping
00C0AE44 E8 DC120000 CALL 00C0C125
00C0AE49 E8 7C110000 CALL 00C0BFCA
00C0AE4E 83BD 3B550000 0>CMP DWORD PTR SS:[EBP+553B],0
00C0AE55 74 07 JE SHORT 00C0AE5E
00C0AE57 E9 01170000 JMP 00C0C55D
00C0AE5C EB 01 JMP SHORT 00C0AE5F
00C0AE5E 61 POPAD
00C0AE5F - E9 24C4B9FF JMP 007A7288 <---------прыжок на оеп

pavka пишет:
Ни чего личного

Я понимаю,что ничего личного,но объясни мне одно.Здесь на форуме есть такие люди,которые спрашивают:что такое отладчик,где найти ускоритель интернета и что такое гавнопроты.Но им ты ничего не говоришь.Стоит мне запостить что то,так ты сразу находишь в моих словах глупости.Собственно вопрос почему?

Что касается по сабжу.Я был бы очень признателен если бы ты посмотрел мой дамп и сказал конкретно где я лоханулся.Для тебя же делов-то на пять минут



Ранг: 49.6 (посетитель), 9thx
Активность: 0.030
Статус: Участник

Создано: 18 октября 2008 14:25 · Поправил: huckfuck
· Личное сообщение · #16

Djeck
в твоем дампе в секции .spliced осталось 9 штук непофиксенных CALL 7FFA0014
а также сделай поиск всех MOV EAX,DWORD PTR DS:[7FFA0000] и PUSH DWORD PTR DS:[7FFA0010]

кстати, в дампе дохрена вызовов ВМ, в том числе с проверкой целостности файла HEBuild.exe, я патчил дамп, чтобы он проверял оригинальный HEBuild.exe, переименованный в HEBuild.bak



Ранг: 49.6 (посетитель), 9thx
Активность: 0.030
Статус: Участник

Создано: 18 октября 2008 15:12 · Поправил: huckfuck
· Личное сообщение · #17

Djeck
то, что написано выше, тоже важно, но самое главное, у тебя в дампе не хватает данных для правильной работы, которые должны лежать в области памяти 014D0000

014E001A 8B1D 00004D01 MOV EBX,DWORD PTR DS:[14D0000]

и далее вниз

из-за этого твой дамп и валится

я тут сварганил патчик для твоего дампа, после патча получишь мой дамп
по крайней мере у меня он запустился



Ранг: 49.6 (посетитель), 9thx
Активность: 0.030
Статус: Участник

Создано: 18 октября 2008 15:34
· Личное сообщение · #18

не приаттачился


9b01_18.10.2008_CRACKLAB.rU.tgz - HEBuild_Patch_for_Djeck_dump.rar



Ранг: 1045.7 (!!!!), 31thx
Активность: 0.570
Статус: Участник

Создано: 18 октября 2008 17:17
· Личное сообщение · #19

Djeck пишет:
Я был бы очень признателен если бы ты посмотрел мой дамп и сказал конкретно где я лоханулся

выложи основной екзешник и необходимые для запуска библы а то чет 12 мег качать в напряг



Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

Создано: 18 октября 2008 18:58
· Личное сообщение · #20

huckfuck пишет:
в твоем дампе в секции .spliced осталось 9 штук непофиксенных CALL 7FFA0014

huckfuck пишет:
014E001A 8B1D 00004D01 MOV EBX,DWORD PTR DS:[14D0000]

Да не досмотрел-ровно 9 штук
huckfuck пишет:
а также сделай поиск всех MOV EAX,DWORD PTR DS:[7FFA0000] и PUSH DWORD PTR DS:[7FFA0010]

а вот этого у меня чё-то нету
huckfuck пишет:
кстати, в дампе дохрена вызовов ВМ, в том числе с проверкой целостности файла HEBuild.exe, я патчил дамп, чтобы он проверял оригинальный HEBuild.exe, переименованный в HEBuild.bak

А зачем ты так сделал?Для разнообразия?.Я кстати посмотрел это место,немного подправил и теперь .bak и иже с ним не нужны.Хотя это только верхушка айсберга,при беглом просмотре проверок дохрена.
huckfuck,а как ты собственно нашёл адресс 014E001A?
Спасибо за конструктивный ответ и помощь.Молодец,я в долгу
pavka вот exe+выдранные файлы.Если нужен будет ещё какой-нибудь файл,скажешь.
rapidshare.com/files/155235083/HTML_Executable.rar.html
Ещё раз как я распаковывал:
Антиотладка:
00C0ACC6 E8 DF450000 CALL 00C0F2AA</b> <-----нопим
Антидампинг
CALL 00C0D800 - nop и возможно сдампить
антидамп,как уже говорил прикручивал к проге
pavka хотелось бы прям вкратце услышать основные ошибки и может быть есть какой нибудь способ быстрее и проще.А да самое главное,насчёт оеп:
Как понял мутки идут непосредственно перед прыжком на оеп,но не понял как можно восстановить ориг.байты.Если не тяжело это тоже объясни в двух словах.



Ранг: 49.6 (посетитель), 9thx
Активность: 0.030
Статус: Участник

Создано: 18 октября 2008 19:10
· Личное сообщение · #21

Djeck
MOV EAX,DWORD PTR DS:[7FFA0000] и PUSH DWORD PTR DS:[7FFA0010] находятся в твоем дампе в секции .spliced - она же и начинается с 014E0000
Djeck пишет:
А зачем ты так сделал?Для разнообразия?.Я кстати посмотрел это место,немного подправил и теперь .bak и иже с ним не нужны.

честно говоря, че-то я не вкурил, где там пропатчить, там же вроде проверка цифровой подписи ? подскажи адресок, где патчил ?



Ранг: 1045.7 (!!!!), 31thx
Активность: 0.570
Статус: Участник

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

Djeck пишет:
вот exe+выдранные файлы.Если нужен будет ещё какой-нибудь файл,скажешь.

Не запускаеться но в принципе для распаковки хватит
1. импорт:
в сабже импорт не защищен т.е оригинальная табличка запускаешь тормозишь на оеп
007FBD0C 77114850 oleaut32.SysFreeString
007FBD10 7713C99D oleaut32.SysReAllocStringLen
007FBD14 77114B59 oleaut32.SysAllocStringLen
007FBD18 00000000
007FBD1C 77DC7883 ADVAPI32.RegQueryValueExA
007FBD20 77DC761B ADVAPI32.RegOpenKeyExA
007FBD24 77DC6BF0 ADVAPI32.RegCloseKey
007FBD28 00000000
007FBD2C 77D5FA46 USER32.GetKeyboardType
007FBD30 77D3E666 USER32.DestroyWindow
007FBD34 77D5EC98 USER32.LoadStringA
007FBD38 77D7050B USER32.MessageBoxA
007FBD3C 77D5EC40 USER32.CharNextA
007FBD40 00000000
007FBD44 7C809943 kernel32.GetACP
007FBD48 7C802442 kernel32.Sleep
007FBD4C 7C809B14 kernel32.VirtualFree
007FBD50 7C809A81 kernel32.VirtualAlloc
007FBD54 7C8092AC kernel32.GetTickCount
007FBD58 7C80A417 kernel32.QueryPerformanceCounter
007FBD5C 7C809737 kernel32.GetCurrentThreadId
007FBD60 7C809794 kernel32.InterlockedDecrement
007FBD64 7C80977B kernel32.InterlockedIncrement
007FBD68 7C80B859 kernel32.VirtualQuery
007FBD6C 7C80A0C7 kernel32.WideCharToMul
табличка заполнена патчить ни чего не нужно
ВМ нет из защиты только спласинг

014A0000 60 PUSHAD <--------- считает константу
014A0001 B8 02000080 MOV EAX,80000002
014A0006 0FA2 CPUID
014A0008 33C3 XOR EAX,EBX
014A000A 33C1 XOR EAX,ECX
014A000C 33C2 XOR EAX,EDX
014A000E 314424 24 XOR DWORD PTR SS:[ESP+24],EAX
014A0012 61 POPAD
014A0013 C3 RETN
если хочешь пристегивать то замени на mov eax,konst
ret
014A0014 9C PUSHFD
014A0015 68 E5D6FFFF PUSH -291B
014A001A 8B1D 00003C00 MOV EBX,DWORD PTR DS:[3C0000] <--- если хочешь "Просто пристегнул кусок памяти" то пристегивай и этот кусок ;) и выноси call 7FFA0014 в дамп и перебивай ссылки
014A0020 011C24 ADD DWORD PTR SS:[ESP],EBX
014A0023 5B POP EBX
014A0024 9D POPFD
014A0025 - E9 F728F6FE JMP HEBuild.00402921
014A002A 9C PUSHFD
014A002B 68 DFD6FFFF PUSH -2921
014A0030 8B1D 0C003C00 MOV EBX,DWORD PTR DS:[3C000C]
014A0036 011C24 ADD DWORD PTR SS:[ESP],EBX
014A0039 5B POP EBX
014A003A 9D POPFD

проще вообще удалить спласинг
вот дамп без спласинга
slil.ru/26250245
Djeck пишет:
А да самое главное,насчёт оеп:
Как понял мутки идут непосредственно перед прыжком на оеп,но не понял как можно восстановить ориг.байты.Если не тяжело это тоже объясни в двух словах.

Вм как я уже сказал здесь нет
.007A7288: 55 push ebp <---прот тырит первые три байта пройди JMP 00C0C55D и увидишь
.007A7289: 8BEC mov ebp,esp
.007A728B: B928000000 mov ecx,000000028 ;' ('
.007A7290: 6A00 push 0
.007A7292: 6A00 push 0
.007A7294: 49 dec ecx
.007A7295: 75F9 jnz .0007A7290 -- 1
.007A7297: 51 push ecx
.007A7298: 53 push ebx
.007A7299: 56 push esi
.007A729A: 57 push edi



Ранг: 159.1 (ветеран), 7thx
Активность: 0.130
Статус: Участник

Создано: 19 октября 2008 19:08 · Поправил: tempread
· Личное сообщение · #23

pavka
в сабже импорт не защищен т.е оригинальная табличка

Разве импорт бывает такой в обычных програмах? Как по мне,то импорт видоизменен относительно оригинальной таблички.
Code:
  1. 007FBDCC  7C810DA6  kernel32.SetFilePointer
  2. 007FBDD0  7C81F850  kernel32.SetEndOfFile
  3. 007FBDD4  7C937A40  ntdll.RtlUnwind
  4. 007FBDD8  7C80180E  kernel32.ReadFile
  5. 007FBDDC  7C81EAE1  kernel32.RaiseException
  6. 007FBDE0  7C812CA9  kernel32.GetStdHandle
  7. 007FBDE4  7C810C8F  kernel32.GetFileSize
  8. 007FBDE8  7C811069  kernel32.GetFileType
  9. 007FBDEC  7C801A24  kernel32.CreateFileA
  10. 007FBDF0  7C809B77  kernel32.CloseHandle
  11. 007FBDF4  00000000
  12. 007FBDF8  7C809BF5  kernel32.TlsSetValue
  13. 007FBDFC  7C809750  kernel32.TlsGetValue
  14. 007FBE00  7C8099BD  kernel32.LocalAlloc
  15. 007FBE04  7C80B529  kernel32.GetModuleHandleA
  16. 007FBE08  00000000
  17. 007FBE0C  77D4190B  USER32.CreateWindowExA
  18. 007FBE10  77D3C57E  USER32.WindowFromPoint




Ранг: 1045.7 (!!!!), 31thx
Активность: 0.570
Статус: Участник

Создано: 19 октября 2008 19:36
· Личное сообщение · #24

tempread пишет:
Разве импорт бывает такой в обычных програмах?

А какой он бывает? обычная табличка для делфи в принципе даже импрек не нуженtempread пишет:
Как по мне,то импорт видоизменен относительно оригинальной таблички.

Чем?



Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

Создано: 19 октября 2008 19:59
· Личное сообщение · #25

pavka пишет:
ВМ нет из защиты только спласинг

А антидампинг или как он у него там называется.Я не смог сдампить прогу на диск без поправки:
[i]Djeck пишет:
00C0AE3A E8 C1290000 CALL 00C0D800
С табличкой я лоханулся.Она и вправду была нормальная.В остальном тоже всё впринципе понятно.Спасибо за объяснения
Кстати ты сплайсинг скриптом убирал или как?



Ранг: 1045.7 (!!!!), 31thx
Активность: 0.570
Статус: Участник

Создано: 19 октября 2008 20:06
· Личное сообщение · #26

Djeck пишет:
Кстати ты сплайсинг скриптом убирал или как?

Скриптом ;) хотя можно пропатчить до оеп



Ранг: 196.0 (ветеран), 72thx
Активность: 0.140.02
Статус: Участник

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

pavka не покажешь где пропатчить можно?



Ранг: 617.3 (!), 677thx
Активность: 0.540
Статус: Участник

Создано: 19 октября 2008 20:35
· Личное сообщение · #28

Code:
  1. 00C0F530    MOV DWORD PTR DS:[ESI],2B860 <--- В ESI пишешь адрес в свободное место в ехе


И тогда сплисинг будет внутри ехе и не надо будет ничего пристегивать и править джампы.

Я думаю pavka что-то типа этого имел ввиду.



Ранг: 159.1 (ветеран), 7thx
Активность: 0.130
Статус: Участник

Создано: 19 октября 2008 21:38
· Личное сообщение · #29

pavka
А какой он бывает? обычная табличка для делфи

Ну, для меня необычно то,что функции в пределах одной библиотеки разделены нулями(007FBDF4), а также то, что среди функций одной библиотеки встречаются функции другой библиотеки(007FBDD4)
Честно говоря, никогда не рассматривал импорт незащищенной програмы на Делфи,может там и такая табличка



Ранг: 1045.7 (!!!!), 31thx
Активность: 0.570
Статус: Участник

Создано: 20 октября 2008 04:29
· Личное сообщение · #30

Djeck пишет:
не покажешь где пропатчить можно?

00C0B772 61 POPAD
00C0B773 8B85 07550000 MOV EAX,DWORD PTR SS:[EBP+5507]
00C0B779 6BC0 32 IMUL EAX,EAX,32
00C0B77C 6A 40 PUSH 40
00C0B77E 68 00100000 PUSH 1000
00C0B783 50 PUSH EAX
00C0B784 6A 00 PUSH 0
00C0B786 FF95 290B0000 CALL DWORD PTR SS:[EBP+B29]
00C0B78C 8BF0 MOV ESI,EAX
00C0B78E E8 A53C0000 CALL HEBuild.00C0F438
00C0B793 E8 7F3D0000 CALL HEBuild.00C0F517
00C0B798 8B8D 07550000 MOV ECX,DWORD PTR SS:[EBP+5507]
00C0B79E E9 BB060000 JMP HEBuild.00C0BE5E
00C0B7A3 8B07 MOV EAX,DWORD PTR DS:[EDI]
00C0B7A5 0385 AC4E0000 ADD EAX,DWORD PTR SS:[EBP+4EAC]
00C0B7AB 50 PUSH EAX
00C0B7AC 8B47 08 MOV EAX,DWORD PTR DS:[EDI+8]
00C0B7AF 0385 AC4E0000 ADD EAX,DWORD PTR SS:[EBP+4EAC]
00C0B7B5 C606 9C MOV BYTE PTR DS:[ESI],9C
00C0B7B8 46 INC ESI
00C0B7B9 837F 04 01 CMP DWORD PTR DS:[EDI+4],1
00C0B7BD 75 30 JNZ SHORT HEBuild.00C0B7EF
00C0B7BF 3385 02560000 XOR EAX,DWORD PTR SS:[EBP+5602]
00C0B7C5 C706 83EC04C7 MOV DWORD PTR DS:[ESI],C704EC83
00C0B7CB 66:C746 04 0424 MOV WORD PTR DS:[ESI+4],2404
00C0B7D1 8946 06 MOV DWORD PTR DS:[ESI+6],EAX
00C0B7D4 C646 0A E8 MOV BYTE PTR DS:[ESI+A],0E8
00C0B7D8 8D5E 0A LEA EBX,DWORD PTR DS:[ESI+A]
00C0B7DB 8BC2 MOV EAX,EDX
00C0B7DD 2BC3 SUB EAX,EBX
00C0B7DF 83E8 05 SUB EAX,5
00C0B7E2 8946 0B MOV DWORD PTR DS:[ESI+B],EAX
00C0B7E5 8BDE MOV EBX,ESI
00C0B7E7 83C6 0F ADD ESI,0F
00C0B7EA E9 AE050000 JMP HEBuild.00C0BD9D
00C0B7EF 837F 04 02 CMP DWORD PTR DS:[EDI+4],2
00C0B7F3 75 40 JNZ SHORT HEBuild.00C0B835
00C0B7F5 4E DEC ESI
00C0B7F6 C706 83EC04C7 MOV DWORD PTR DS:[ESI],C704EC83
00C0B7FC 66:C746 04 0424 MOV WORD PTR DS:[ESI+4],2404
00C0B802 8946 06 MOV DWORD PTR DS:[ESI+6],EAX
00C0B805 C646 0A 50 MOV BYTE PTR DS:[ESI+A],50
00C0B809 C746 0B 8B44240>MOV DWORD PTR DS:[ESI+B],424448B
00C0B810 C746 0F 8B00894>MOV DWORD PTR DS:[ESI+F],4489008B
00C0B817 C746 13 2404588>MOV DWORD PTR DS:[ESI+13],83580424
00C0B81E C746 17 C404FF5>MOV DWORD PTR DS:[ESI+17],54FF04C4
00C0B825 66:C746 1B 24FC MOV WORD PTR DS:[ESI+1B],0FC24
00C0B82B 8BDE MOV EBX,ESI
00C0B82D 83C6 1D ADD ESI,1D
00C0B830 E9 68050000 JMP HEBuild.00C0BD9D
00C0B835 837F 04 03 CMP DWORD PTR DS:[EDI+4],3
00C0B839 72 68 JB SHORT HEBuild.00C0B8A3
00C0B83B 837F 04 06 CMP DWORD PTR DS:[EDI+4],6
00C0B83F 77 62 JA SHORT HEBuild.00C0B8A3
00C0B841 50 PUSH EAX
00C0B842 8B9D 02560000 MOV EBX,DWORD PTR SS:[EBP+5602]
00C0B848 33C3 XOR EAX,EBX
00C0B84A 837F 04 03 CMP DWORD PTR DS:[EDI+4],3
00C0B84E 75 05 JNZ SHORT HEBuild.00C0B855
00C0B850 C606 50 MOV BYTE PTR DS:[ESI],50
00C0B853 EB 1F JMP SHORT HEBuild.00C0B874
00C0B855 837F 04 04 CMP DWORD PTR DS:[EDI+4],4
00C0B859 75 05 JNZ SHORT HEBuild.00C0B860
00C0B85B C606 51 MOV BYTE PTR DS:[ESI],51
00C0B85E EB 14 JMP SHORT HEBuild.00C0B874
00C0B860 837F 04 05 CMP DWORD PTR DS:[EDI+4],5
00C0B864 75 05 JNZ SHORT HEBuild.00C0B86B
00C0B866 C606 52 MOV BYTE PTR DS:[ESI],52
00C0B869 EB 09 JMP SHORT HEBuild.00C0B874
00C0B86B 837F 04 06 CMP DWORD PTR DS:[EDI+4],6
00C0B86F 75 03 JNZ SHORT HEBuild.00C0B874
00C0B871 C606 57 MOV BYTE PTR DS:[ESI],57
00C0B874 C746 01 8134240>MOV DWORD PTR DS:[ESI+1],243481
00C0B87B 895E 04 MOV DWORD PTR DS:[ESI+4],EBX
00C0B87E C646 08 E8 MOV BYTE PTR DS:[ESI+8],0E8
00C0B882 8D5E 08 LEA EBX,DWORD PTR DS:[ESI+8]
00C0B885 8BC2 MOV EAX,EDX
00C0B887 2BC3 SUB EAX,EBX
00C0B889 83E8 05 SUB EAX,5
00C0B88C 8946 09 MOV DWORD PTR DS:[ESI+9],EAX
00C0B88F 66:C746 0D 8F05 MOV WORD PTR DS:[ESI+D],58F
00C0B895 58 POP EAX
00C0B896 8946 0F MOV DWORD PTR DS:[ESI+F],EAX
00C0B899 8BDE MOV EBX,ESI
00C0B89B 83C6 13 ADD ESI,13
00C0B89E E9 FA040000 JMP HEBuild.00C0BD9D
00C0B8A3 837F 04 07 CMP DWORD PTR DS:[EDI+4],7
00C0B8A7 74 12 JE SHORT HEBuild.00C0B8BB
00C0B8A9 837F 04 10 CMP DWORD PTR DS:[EDI+4],10
00C0B8AD 74 0C JE SHORT HEBuild.00C0B8BB
00C0B8AF 837F 04 16 CMP DWORD PTR DS:[EDI+4],16
00C0B8B3 72 7F JB SHORT HEBuild.00C0B934
00C0B8B5 837F 04 19 CMP DWORD PTR DS:[EDI+4],19
00C0B8B9 77 79 JA SHORT HEBuild.00C0B934
00C0B8BB 8B9D 02560000 MOV EBX,DWORD PTR SS:[EBP+5602]
00C0B8C1 66:C706 FF35 MOV WORD PTR DS:[ESI],35FF
00C0B8C6 8946 02 MOV DWORD PTR DS:[ESI+2],EAX
00C0B8C9 C746 06 8134240>MOV DWORD PTR DS:[ESI+6],243481
00C0B8D0 895E 09 MOV DWORD PTR DS:[ESI+9],EBX
00C0B8D3 C646 0D E8 MOV BYTE PTR DS:[ESI+D],0E8
00C0B8D7 8D5E 0D LEA EBX,DWORD PTR DS:[ESI+D]
00C0B8DA 8BC2 MOV EAX,EDX
00C0B8DC 2BC3 SUB EAX,EBX
00C0B8DE 83E8 05 SUB EAX,5
00C0B8E1 8946 0E MOV DWORD PTR DS:[ESI+E],EAX
00C0B8E4 837F 04 07 CMP DWORD PTR DS:[EDI+4],7
00C0B8E8 75 06 JNZ SHORT HEBuild.00C0B8F0
00C0B8EA C646 12 59 MOV BYTE PTR DS:[ESI+12],59
00C0B8EE EB 3A JMP SHORT HEBuild.00C0B92A
00C0B8F0 837F 04 10 CMP DWORD PTR DS:[EDI+4],10
00C0B8F4 75 06 JNZ SHORT HEBuild.00C0B8FC
00C0B8F6 C646 12 58 MOV BYTE PTR DS:[ESI+12],58
00C0B8FA EB 2E JMP SHORT HEBuild.00C0B92A
00C0B8FC 837F 04 16 CMP DWORD PTR DS:[EDI+4],16
00C0B900 75 06 JNZ SHORT HEBuild.00C0B908
00C0B902 C646 12 5B MOV BYTE PTR DS:[ESI+12],5B
00C0B906 EB 22 JMP SHORT HEBuild.00C0B92A
00C0B908 837F 04 17 CMP DWORD PTR DS:[EDI+4],17
00C0B90C 75 06 JNZ SHORT HEBuild.00C0B914
00C0B90E C646 12 5A MOV BYTE PTR DS:[ESI+12],5A
00C0B912 EB 16 JMP SHORT HEBuild.00C0B92A
00C0B914 837F 04 18 CMP DWORD PTR DS:[EDI+4],18
00C0B918 75 06 JNZ SHORT HEBuild.00C0B920
00C0B91A C646 12 5E MOV BYTE PTR DS:[ESI+12],5E
00C0B91E EB 0A JMP SHORT HEBuild.00C0B92A
00C0B920 837F 04 19 CMP DWORD PTR DS:[EDI+4],19
00C0B924 75 04 JNZ SHORT HEBuild.00C0B92A
00C0B926 C646 12 5F MOV BYTE PTR DS:[ESI+12],5F
00C0B92A 8BDE MOV EBX,ESI
00C0B92C 83C6 13 ADD ESI,13
00C0B92F E9 69040000 JMP HEBuild.00C0BD9D
00C0B934 837F 04 08 CMP DWORD PTR DS:[EDI+4],8
00C0B938 75 55 JNZ SHORT HEBuild.00C0B98F
00C0B93A C706 83EC0450 MOV DWORD PTR DS:[ESI],5004EC83
00C0B940 C646 04 A1 MOV BYTE PTR DS:[ESI+4],0A1
00C0B944 8946 05 MOV DWORD PTR DS:[ESI+5],EAX
00C0B947 66:C746 09 60B8 MOV WORD PTR DS:[ESI+9],0B860
00C0B94D 8956 0B MOV DWORD PTR DS:[ESI+B],EDX
00C0B950 C746 0F B913000>MOV DWORD PTR DS:[ESI+F],13B9
00C0B957 C746 14 9902140>MOV DWORD PTR DS:[ESI+14],8140299
00C0B95E C746 18 C1CA08E>MOV DWORD PTR DS:[ESI+18],E208CAC1
00C0B965 C746 1C F801542>MOV DWORD PTR DS:[ESI+1C],245401F8
00C0B96C C746 20 1C612D0>MOV DWORD PTR DS:[ESI+20],2D611C ; UNICODE "32"
00C0B973 C746 23 8A6AD6E>MOV DWORD PTR DS:[ESI+23],E1D66A8A
00C0B97A C746 27 8944240>MOV DWORD PTR DS:[ESI+27],4244489
00C0B981 C646 2B 58 MOV BYTE PTR DS:[ESI+2B],58
00C0B985 8BDE MOV EBX,ESI
00C0B987 83C6 2C ADD ESI,2C
00C0B98A E9 0E040000 JMP HEBuild.00C0BD9D
00C0B98F 837F 04 09 CMP DWORD PTR DS:[EDI+4],9
00C0B993 75 72 JNZ SHORT HEBuild.00C0BA07
00C0B995 50 PUSH EAX
00C0B996 8B9D 02560000 MOV EBX,DWORD PTR SS:[EBP+5602]
00C0B99C 33C3 XOR EAX,EBX
00C0B99E C606 56 MOV BYTE PTR DS:[ESI],56
00C0B9A1 C746 01 8134240>MOV DWORD PTR DS:[ESI+1],243481
00C0B9A8 895E 04 MOV DWORD PTR DS:[ESI+4],EBX
00C0B9AB C646 08 E8 MOV BYTE PTR DS:[ESI+8],0E8
00C0B9AF 8D5E 08 LEA EBX,DWORD PTR DS:[ESI+8]
00C0B9B2 8BC2 MOV EAX,EDX
00C0B9B4 2BC3 SUB EAX,EBX
00C0B9B6 83E8 05 SUB EAX,5
00C0B9B9 8946 09 MOV DWORD PTR DS:[ESI+9],EAX
00C0B9BC 66:C746 0D 60B8 MOV WORD PTR DS:[ESI+D],0B860
00C0B9C2 8956 0F MOV DWORD PTR DS:[ESI+F],EDX
00C0B9C5 C746 13 B913000>MOV DWORD PTR DS:[ESI+13],13B9
00C0B9CC C746 18 9902140>MOV DWORD PTR DS:[ESI+18],8140299
00C0B9D3 C746 1C C1CA08E>MOV DWORD PTR DS:[ESI+1C],E208CAC1
00C0B9DA C746 20 F801542>MOV DWORD PTR DS:[ESI+20],245401F8
00C0B9E1 C746 24 2061812>MOV DWORD PTR DS:[ESI+24],2C816120
00C0B9E8 C646 28 24 MOV BYTE PTR DS:[ESI+28],24
00C0B9EC C746 29 8A6AD6E>MOV DWORD PTR DS:[ESI+29],E1D66A8A
00C0B9F3 66:C746 2D 8F05 MOV WORD PTR DS:[ESI+2D],58F
00C0B9F9 58 POP EAX
00C0B9FA 8946 2F MOV DWORD PTR DS:[ESI+2F],EAX
00C0B9FD 8BDE MOV EBX,ESI
00C0B9FF 83C6 33 ADD ESI,33
00C0BA02 E9 96030000 JMP HEBuild.00C0BD9D
00C0BA07 837F 04 0A CMP DWORD PTR DS:[EDI+4],0A
00C0BA0B 0F82 E4000000 JB HEBuild.00C0BAF5
00C0BA11 837F 04 0F CMP DWORD PTR DS:[EDI+4],0F
00C0BA15 0F87 DA000000 JA HEBuild.00C0BAF5
00C0BA1B 4E DEC ESI
00C0BA1C 8B9D 02560000 MOV EBX,DWORD PTR SS:[EBP+5602]
00C0BA22 C706 83EC0450 MOV DWORD PTR DS:[ESI],5004EC83
00C0BA28 C646 04 A1 MOV BYTE PTR DS:[ESI+4],0A1
00C0BA2C 8946 05 MOV DWORD PTR DS:[ESI+5],EAX
00C0BA2F C746 09 8944240>MOV DWORD PTR DS:[ESI+9],4244489
00C0BA36 C646 0D 58


. 1 . 2 . >>
 eXeL@B —› Протекторы —› HTML Executable (RLPack 1.20)
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


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