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

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

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

Создано: 07 декабря 2009 14:34 · Поправил: deeptrancer
· Личное сообщение · #1

Здравствуйте!
Есть проблема. Не могу доломать прогу.
1. Sticky Password Manager 4.0.0.141
2. The password manager and form filler
3. http://www.stickypassword.com/files/SP40/stpsinst400142.exe
4. 4.6Mb
5. ASProtect 2.5 build 03.31 Release, Borland Delphi 6.0 - 7.0
6. 30 day Trial, Nags
8. 29.99$

Вообщем как делал:

Дано:
1)Олька,
2)Скрипт Volx 1.15E
3)ImpRec
4) Sticky pssword 4.0
Че делеал

1) В ольке, в плагине Olly advanced, поснавил галку IsDebuggerPresent
2) Поставил галки на все ексепшены
3) Загрузил StPass.exe
4) Запустил скрипт Volx'a
Его лог:
Script Log Window
Address Message
F427C3 freeloc: 00390000
F75FA6 AsprAPIloc: 00F856BC
F75FA6 Aspr1stthunk: 006F8BE4
F80310 Total API in this Asprotect = 0000000D
F80310 GetTrialDays 006D3250
F80310 CheckKey 006D3270
F80310 GetRegistrationInformation 006D3280
6D74A8 Address of IAT = 006F7F98
6D74A8 RVA of IAT = 002F7F98
6D74A8 Size of IAT = 00000C64
6D74A8 Address of OEP = 006D74A8
6D74A8 RVA of OEP = 002D74A8


5) После того как скрипт отработал, появился дамп de_stpass.exe
6) Запустил ImpRec, восстановил IAT. Три Функи не опознались.
Они оказались Аспровые.
GetTrialDays 006D3250
CheckKey 006D3270
GetRegistrationInformation 006D3280
И поскольку они в дампе уже замулены - я их удалил.
7) Пофиксил дамп, сохранил в файл de_stpass_.exe
8) Сменил OEP в de_stpass_.exe с 00410000 на 006D74A8 и сохранил
Дамп стал запускацца, но триал наги остались. Счетчик триальных дней не тикает.

Вот на этом я и застрял

Вот архив где все присутствует:

http://rapidshare.com/files/316635558/SP4.7z.html
MD5: C49C48697FA1A4775B4130B8462B2719

Там stpass.exe - это нерапакованный
de_stpass.exe - дамп после работы скрипта
de_stpass_.exe - Восстановленный импорт + исправленная OEP
Может ли кто-нибудь помочь доломать???
Спсибо за помощь!




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

Создано: 07 декабря 2009 18:08
· Личное сообщение · #2

Ты русский человек? Вот и пиши по-русски. Не можешь клаву найти-в инете достаточно сервисов для этого, чтобы не напрягать почтенных людей своими каракулями.



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

Создано: 07 декабря 2009 21:15
· Личное сообщение · #3

Почтенные люди простите....... Была проблема с кодировкой - пришлось в транслите




Ранг: 109.3 (ветеран), 55thx
Активность: 0.060
Статус: Участник
Yes! I_m noob!

Создано: 12 декабря 2009 04:51
· Личное сообщение · #4

Господа, помогите, аналогичная проблема - остаточные наги.
Аналогичная программа...
Кто-нибудь подкинет дельных идей, можно и решение.

-----
z+7v+/Lq4CAtIO/l8OL76SD44OMg6iDv8O7i4OvzLiCpIMPu7OXwINHo7O/x7u0=




Ранг: 281.8 (наставник), 272thx
Активность: 0.250.01
Статус: Участник
Destroyer of protectors

Создано: 12 декабря 2009 12:55
· Личное сообщение · #5

[0utC4St] пишет:
Кто-нибудь подкинет дельных идей, можно и решение.

Ёпта, в чём проблема-то я не пойму, программа распакованна? Дамп запускается? Наги убрать? Ставь бряки в ольке на создание диалоговых окон и т.д. и т.п. иииииии пошёл гулять по F7 и F8. НЕ забывай, что декомпиль, джампы и нопы - твои верные друзья. - Это и есть в вашем случае универсальное решение




Ранг: 106.9 (ветеран), 27thx
Активность: 0.080
Статус: Участник

Создано: 14 декабря 2009 01:26 · Поправил: Oott
· Личное сообщение · #6

До чего дошло, значит аспр мы снимаем, а наг убрать не можем Обленились в конец, я чёта у тс даже не вижу, попытки изучить защиту программы, кроме как заюзать скрипт от Volx'a. печально.
Решил посмотреть, что там такое. Защита привязяна к аспру, если просто снять и сделать небольшой патч, подменяющий аспровую регу на свою, типа mov eax,1, то триал программы снимается, что вобщем-то и делает Volx'a cкриптец, но остаётся дофига нагов. Найти тру решение, а именно флаг, который в ответе за все наги, не удалось. Либо почти на каждый наг, свой чекер, либо это очень глубоко спрятано и после тесного контакта с аспром не достаётся. Потому как, попадалась функция, отвественная за какой-нибудь наг, где функа это выполняется ещё 1000 раз для совершенно других целей, поправив её вся прога загиналась.
Поэтому пришлось воспользоваться не тру решением, это убить всех по одиночке.
Ещё после снятий аспра, под огонь попала функция в программе System info, искать истинную причину было лень, там функа одна чувствовала себе не комфортно без аспра, если не охото напрягаться, то её можно просто закиллить.
Пропатченый stpass



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

Создано: 14 декабря 2009 13:04
· Личное сообщение · #7

2 Oott спасибо!




Ранг: 109.3 (ветеран), 55thx
Активность: 0.060
Статус: Участник
Yes! I_m noob!

Создано: 14 декабря 2009 13:28
· Личное сообщение · #8

Oott, отличий от файла выложенного deeptrancer ппц сколько.
Расспаковывали заново и ручками, а не скриптом Volx'a ?
Оффсетик бы той фунции что так переживала по поводу того что её разлучили с аспром...

-----
z+7v+/Lq4CAtIO/l8OL76SD44OMg6iDv8O7i4OvzLiCpIMPu7OXwINHo7O/x7u0=





Ранг: 106.9 (ветеран), 27thx
Активность: 0.080
Статус: Участник

Создано: 14 декабря 2009 20:16
· Личное сообщение · #9

Товарищь, видимо вы не поняли, что я писал в своем предидущем посту. Если это не запрос на взлом, сделайте сами хоть что-нибудь. Хотите найти оффсет той функи? Хорошо, я скажу как найти, а вы найдете. После снятия аспра, если открыть вкладку в программе system info, программа просто натыкается на исключение, а т.к. в программе свой seh, то мы видим сообщение об ошибке немного не в стандартном виде и еще программа не падает. Твоя задача, найти место падения программы и запатчить его. Дальше сам.
P.s. Жду оффсета... )))




Ранг: 109.3 (ветеран), 55thx
Активность: 0.060
Статус: Участник
Yes! I_m noob!

Создано: 15 декабря 2009 03:46 · Поправил: [0utC4St]
· Личное сообщение · #10

Как я уже упоминал я работаю не совсем со Sticky Password Manager, а с Kaspersky Password Manager 4.0.0.133
(--> ссылка на офсайт <--).
После распаковки его скриптом Aspr2.XX_unpacker_v1.15E в чистой ольке имеем те же проблемы что и со Sticky Password Manager.




--> Распакованный EXEшник (пароль: cracklab.ru) <--

При запуске распакованного файла под олькой с обвесами видим следующее: ничего подозрительного нет, однако при сворачивании окна программы на [X] видим это:


Просмотр цепочек SEH приводит к тому что мы видим несколько собственных SEH программы.




"Exception 0EEDFADE"
адрес 0EEDFADE в десятиричной системе 250.477.278
Смотрим в вкладке [M]emory и видим что ни одна из секций не попадает под этот адрес...
Ближайшие , но это как говорится лирика...

Когда натыкаемся на исключение в EAX содержится адрес памяти по которому содержится как раз наше 0EEDFADE

В исполняемом файле нехорошего не много:
Строки
64581 Trial period has expired.
Click here to purchase %ProductName_Nominative%.
64634 Trial version, %s left from %d
64635 Evaluation period has expired!
64647 The License Key is invalid.
65191 Unregistered version

И в RCData
TFRMABOUTNAG

TFRMABOUTNAG как гооврит нам IDA находится тут:
Code:
  1. seg000:006B1FAE                 align 10h
  2. seg000:006B1FB0 off_6B1FB0      dd offset off_6B1FFC    ; DATA XREF: sub_6C3FD4+13r
  3. seg000:006B1FB4                 align 10h
  4. seg000:006B1FC0                 dd offset dword_6B22AC
  5. seg000:006B1FC4                 dd offset dword_6B2108
  6. seg000:006B1FC8                 dd offset dword_6B2240
  7. seg000:006B1FCC                 align 10h
  8. seg000:006B1FD0                 dd offset aTfrmaboutnag ; "TfrmAboutNAG"
  9. seg000:006B1FD4                 dd 3B0h, 6B1618h, 42CD04h, 47E188h, 47E38Ch, 404560h, 481984h
  10. seg000:006B1FD4                 dd 40429Ch, 4042B8h, 660B84h
  11. seg000:006B1FFC off_6B1FFC      dd offset sub_46EACC    ; DATA XREF: seg000:off_6B1FB0o
  12. seg000:006B2000                 dd offset sub_47EAC0
  13. seg000:006B2004                 dd offset @Classes@TPersistent@Assign$qqrp19Classes@TPersistent ; Classes::TPersistent::Assign(Classes::TPersistent *)
  14. seg000:006B2008                 dd offset sub_47E5EC
  15. seg000:006B200C                 dd offset sub_47E650
  16. seg000:006B2010                 dd offset sub_47E78C
  17. seg000:006B2014                 dd offset @Controls@TControl@SetName$qqrx17System@AnsiString ; Controls::TControl::SetName(System::AnsiString)
  18. seg000:006B2018                 dd offset sub_42CD1C
  19. seg000:006B201C                 dd offset sub_47F364
  20. seg000:006B2020                 dd offset @Classes@TComponent@WriteState$qqrp15Classes@TWriter ; Classes::TComponent::WriteState(Classes::TWriter *)
  21. seg000:006B2024                 dd offset sub_484350
  22. seg000:006B2028                 dd offset sub_660A90
  23. seg000:006B202C                 dd offset loc_46E4F0
  24. seg000:006B2030                 dd offset sub_46EAFC
  25. seg000:006B2034                 dd offset @Controls@TWinControl@ConstrainedResize$qqrrit1t1t1 ; Controls::TWinControl::ConstrainedResize(int &,int &,int &,int &)
  26. seg000:006B2038                 dd offset @Controls@TControl@GetAction$qqrv ; Controls::TControl::GetAction(void)
  27. seg000:006B203C                 dd offset @Controls@TWinControl@GetClientOrigin$qqrv ; Controls::TWinControl::GetClientOrigin(void)
  28. seg000:006B2040                 dd offset sub_47EF98
  29. seg000:006B2044                 dd offset @Controls@TWinControl@GetDeviceContext$qqrrui ; Controls::TWinControl::GetDeviceContext(uint &)
  30. seg000:006B2048                 dd offset loc_464C7C
  31. seg000:006B204C                 dd offset loc_464C80
  32. seg000:006B2050                 dd offset sub_47F08C
  33. seg000:006B2054                 dd offset loc_46862C
  34. seg000:006B2058                 dd offset loc_48401C
  35. seg000:006B205C                 dd offset loc_465A28
  36. seg000:006B2060                 dd offset loc_464EB8
  37. seg000:006B2064                 dd offset @Controls@TControl@SetEnabled$qqro ; Controls::TControl::SetEnabled(bool)
  38. seg000:006B2068                 dd offset sub_47F2A8
  39. seg000:006B206C                 dd offset @Forms@TCustomForm@SetParentBiDiMode$qqro ; Forms::TCustomForm::SetParentBiDiMode(bool)
  40. seg000:006B2070                 dd offset @Controls@TControl@SetBiDiMode$qqr17Classes@TBiDiMode ; Controls::TControl::SetBiDiMode(Classes::TBiDiMode)
  41. seg000:006B2074                 dd offset sub_47F3A4
  42. seg000:006B2078                 dd offset @Controls@TControl@InitiateAction$qqrv ; Controls::TControl::InitiateAction(void)
  43. seg000:006B207C                 dd offset @Controls@TWinControl@Invalidate$qqrv ; Controls::TWinControl::Invalidate(void)
  44. seg000:006B2080                 dd offset sub_46DD0C
  45. seg000:006B2084                 dd offset sub_46D720
  46. seg000:006B2088                 dd offset sub_46DCF0
  47. seg000:006B208C                 dd offset sub_47DB64
  48. seg000:006B2090                 dd offset sub_47FB78
  49. seg000:006B2094                 dd offset sub_46A460
  50. seg000:006B2098                 dd offset sub_660E7C
  51. seg000:006B209C                 dd offset sub_481690
  52. seg000:006B20A0                 dd offset sub_48149C
  53. seg000:006B20A4                 dd offset sub_46A4F8
  54. seg000:006B20A8                 dd offset sub_46A51C
  55. seg000:006B20AC                 dd offset sub_48180C
  56. seg000:006B20B0                 dd offset sub_481940
  57. seg000:006B20B4                 dd offset sub_46A354
  58. seg000:006B20B8                 dd offset unknown_libname_247 ; Borland Visual Component Library & Packages
  59. seg000:006B20BC                 dd offset sub_46DE38
  60. seg000:006B20C0                 dd offset sub_482094
  61. seg000:006B20C4                 dd offset sub_46F250
  62. seg000:006B20C8                 dd offset sub_46DA70
  63. seg000:006B20CC                 dd offset sub_46F3A0
  64. seg000:006B20D0                 dd offset sub_483B14
  65. seg000:006B20D4                 dd offset off_47D544
  66. seg000:006B20D8                 dd offset @Forms@TScrollingWinControl@AutoScrollInView$qqrp17Controls@TControl ; Forms::TScrollingWinControl::AutoScrollInView(Controls::TControl *)
  67. seg000:006B20DC                 dd offset sub_482968
  68. seg000:006B20E0                 dd offset sub_47E510
  69. seg000:006B20E4                 dd offset sub_47E58C
  70. seg000:006B20E8                 dd offset sub_483F60
  71. seg000:006B20EC                 dd offset sub_47E1C0
  72. seg000:006B20F0                 dd offset sub_660ECC
  73. seg000:006B20F4                 dd offset sub_481B30
  74. seg000:006B20F8                 dd offset sub_483BEC
  75. seg000:006B20FC                 dd offset loc_47F2A4
  76. seg000:006B2100                 dd offset sub_660D50
  77. seg000:006B2104                 dd offset sub_6B1920
  78. seg000:006B2108 dword_6B2108    dd 2298000Eh, 378006Bh, 0 ; DATA XREF: seg000:006B1FC4o
  79. seg000:006B2114 aLblevaluatione db 20,'lblEvaluationExpired'
  80. seg000:006B2129                 db 7Ch, 3, 0
  81. seg000:006B212C                 dd 8000000h, 496C626Ch, 316F666Eh, 380h, 6C080000h, 6E496C62h
  82. seg000:006B212C                 dd 84326F66h, 3, 626C1200h, 6363416Ch, 746E756Fh, 65724373h
  83. seg000:006B212C                 dd 64657461h, 388h, 6C140000h, 63416C62h, 6E756F63h, 72437374h
  84. seg000:006B212C                 dd 65746165h, 8C784564h, 3, 626C1500h, 6363416Ch, 746E756Fh
  85. seg000:006B212C                 dd 74754173h, 6C69666Fh, 9064656Ch, 3, 626C1700h, 6363416Ch
  86. seg000:006B212C                 dd 746E756Fh, 74754173h, 6C69666Fh, 4564656Ch, 39478h
  87. seg000:006B212C                 dd 12000000h, 416C626Ch, 6F727070h, 6D695478h, 76615365h
  88. seg000:006B212C                 dd 3986465h, 0
  89. seg000:006B21D4 aLblapproxtimes db 20,'lblApproxTimeSavedEx'
  90. seg000:006B21E9                 db 9Ch, 3, 0
  91. seg000:006B21EC                 dd 9000100h, 426E7462h, 6F4E7975h, 3A077h, 6000000h, 4F6C626Ch
  92. seg000:006B21EC                 dd 3A43172h, 20000h, 6E746217h, 65746E45h, 67655272h, 72747369h
  93. seg000:006B21EC                 dd 6F697461h, 79654B6Eh, 3A8h, 6C060000h, 724F6C62h, 3AC32h
  94. seg000:006B21EC                 dd 8000000h, 496C626Ch, 336F666Eh
  95. seg000:006B2240 dword_6B2240    dd 110003h, 6B2360h, 726F460Ah, 6572436Dh, 23657461h, 6B251800h
  96. seg000:006B2240                                         ; DATA XREF: seg000:006B1FC8o
  97. seg000:006B2240                 dd 74621C00h, 746E456Eh, 65527265h, 74736967h, 69746172h
  98. seg000:006B2240                 dd 654B6E6Fh, 696C4379h, 156B63h, 6B2504h, 6E74620Eh, 4E797542h
  99. seg000:006B2240                 dd 6C43776Fh
  100. seg000:006B2288                 db 69h, 63h, 6Bh
  101. seg000:006B228B aTfrmaboutnag   db 12,'TfrmAboutNAG'    ; DATA XREF: seg000:006B1FD0o
  102. seg000:006B2298                 dd 0DA080003h, 4D00043h, 0C5200054h, 0C08B005Ah, 6B22ACh
  103. seg000:006B22AC dword_6B22AC    dd 66540C07h, 62416D72h, 4E74756Fh, 1FFC4741h, 17FC006Bh
  104. seg000:006B22AC                                         ; DATA XREF: seg000:006B1FC0o
  105. seg000:006B22AC                 dd 68006Bh, 62416609h, 4E74756Fh, 4741h


Тут нам встречается заголовок "триал":
Code:
  1. .rsrc:0089C2A8 aCaption_35     db 7,'Caption'
  2. .rsrc:0089C2B0 aTrial          db 6,0Dh,'Trial'


...
(продолжение следует)

-----
z+7v+/Lq4CAtIO/l8OL76SD44OMg6iDv8O7i4OvzLiCpIMPu7OXwINHo7O/x7u0=





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

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

"Exception 0EEDFADE"
адрес 0EEDFADE в десятиричной системе 250.477.278
Смотрим в вкладке [M]emory и видим что ни одна из секций не попадает под этот адрес...

Это несколько не соответствует действительности. Я настоятельно советую почитать статьи.




Ранг: 109.3 (ветеран), 55thx
Активность: 0.060
Статус: Участник
Yes! I_m noob!

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

Archer, посоветуйте ньюби что читать.

-----
z+7v+/Lq4CAtIO/l8OL76SD44OMg6iDv8O7i4OvzLiCpIMPu7OXwINHo7O/x7u0=





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

Создано: 15 декабря 2009 22:49
· Личное сообщение · #13

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


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


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