![]() |
eXeL@B —› Вопросы новичков —› ASProtect Version: [ Unknown! ] |
Посл.ответ | Сообщение |
|
Создано: 13 мая 2007 00:24 · Поправил: Sturgeon · Личное сообщение · #1 Привет всем! Вот попалась мне свежая версия Lingobit Localizer. Решил поковырять, а на ней аспр. Ну, вроде хотел ручками распаковать. А не получилось ни хрена ![]() PeId выдал следующее: ASProtect 1.2x - 1.3x [Registered] -> Alexey Solodovnikov а известный плагин к нему: Version: [ Unknown! ], Signature: [ BD23B2BC ], E-Mail: [ ********* ]. Вот такое кино. В принципе стриппер распаковал на ура. Только хотелось бы понять где я ошибся и чем аспр на этой проге отличается от других. Подскажите, пожалуйста. Внизу ссылка на экзешник (700 кб) http://webfile.ru/1405623 http://webfile.ru/1405623 ![]() |
|
Создано: 13 мая 2007 08:00 · Личное сообщение · #2 Sturgeon Или давай ссылку откуда брал всю прогу, или бросай kernel.dll из папки с этой прогой. Так как VerA 0.15-плагин из DiE 0.63(которая обычно в таких случаях даёт более точную информацию о версии ASPra не фурычет без этой библиотеки) Да и в Олю погрузить для просмотра что там, да как нужно её же.(kernel.dll) ![]() |
|
Создано: 13 мая 2007 10:07 · Поправил: Sturgeon · Личное сообщение · #3 Да, чего-то я поспешил выкладывать один екзешник. А дллок к нему надо далеко не одну, чтобы запустить. Ниже ссылка на архив. Весит все это 1,7 Мб ![]() webfile.ru/1405744 Распакованный стриперром файл сунул в ту же Ольку. Вот это карта памяти. Офигеть. Memory map
Ломается заменой одного байта. А распаковать, такая задница. ![]() |
|
Создано: 13 мая 2007 20:47 · Личное сообщение · #4 Sturgeon Уже определил сам или нет? Если нет, вот что говорит VerA 0.15 из DiE 0.63 - ASProtect 2.2 or 2.3 SKE build > 3.19 и я склонен верить. Даже скорее что то ближе к 2.3 так как у PE-kill-ла было написано, что 2.2 не имеет исключений, а тут их 43 до запуска и перед запуском такой фарш в памяти. Причём какая то бурда у меня начинается с адресов 00340000, т. е задолго до нормального размещения файлов (00400000) Видимо там не зря столько диллок. К сожалению я ещё сам не занимался такими высокими версиями ASP-ra. И тем не менее фенкс тебе за прогу -это 3-я версии 2.2 и выше у меня в коллекции. Когда прийдёт время и закончу с 2.1x SKE. Именно по этим вариантам и пойдёт исследование. ![]() |
|
Создано: 13 мая 2007 21:10 · Поправил: Small_S · Личное сообщение · #5 У меня такое чувство, что VOEP(если она конечно здесь вообще не размазана о чём приходилось слышать не раз для старших версий аспра) находится в этой части выделенной памяти Address=016D0000 Size=00003000 (12288.) Owner= 016D0000 (itself) Section= Type=Priv 00021040 Access=RWE Initial access=RWE (т.е.с адреса 016D0000): 016D06AA 393D C0805500 CMP DWORD PTR DS:[5580C0],EDI----------Вот тут мы стоим после 016D06B0 0F85 7D010000 JNZ 016D0833------------------------------------после прыжка из первой 016D06B6 FF7424 0C PUSH DWORD PTR SS:[ESP+C]-------------------секции кода проги 016D06BA 66:9C PUSHFW 016D06BC 50 PUSH EAX 016D06BD 36:EB 01 JMP SHORT 016D06C1 ; Superfluous prefix 016D06C0 9A 2B442400 F3EB CALL FAR EBF3:0024442B ; Far call 016D06C7 02CD ADD CL,CH 016D06C9 2081 E0E1D39C AND BYTE PTR DS:[ECX+9CD3E1E0],AL 016D06CF D6 SALC 016D06D0 334424 08 XOR EAX,DWORD PTR SS:[ESP+8] 016D06D4 334424 28 XOR EAX,DWORD PTR SS:[ESP+28] 016D06D8 8D4424 17 LEA EAX,DWORD PTR SS:[ESP+17] 016D06DC 52 PUSH EDX 016D06DD 53 PUSH EBX 016D06DE 56 PUSH ESI 016D06DF C1D6 F3 RCL ESI,0F3 ; Shift constant out of range 1..31 016D06E2 83DE 4F SBB ESI,4F 016D06E5 2BF7 SUB ESI,EDI Приэтом видны признаки наличия VM, если мы посмотрим какие каллы вызываются из этой области, то увидим: Found intermodular calls Address Disassembly Destination 016D0260 CALL 39917E68 016D03F1 CALL 01C10000-------------------------------ВОТ и погнали 016D03FB CALL 01C10000------------------------- 016D0465 CALL 01C10000-----------------------------тут их довольно много 28 016D0499 CALL 01C10000 016D04B8 CALL 01C10000 016D0543 CALL 44DDF000 016D05AE CALL C3F0D73E 016D05D3 CALL 5B2F30E4 016D05F9 CALL 09914A31 016D0637 CALL DWORD PTR DS:[5108CC] MSVCR71.exit 016D063D CALL DWORD PTR DS:[5108C8] MSVCR71._cexit 016D0682 CALL 01C10000 016D0687 CALL 01C10000 016D0691 CALL 01C10000 016D06AA CMP DWORD PTR DS:[5580C0],EDI (Initial CPU selection) 016D0821 CALL 596D48B5 016D0862 CALL 01C10000 016D0887 CALL C7EEFDB7 016D08C1 CALL EFF0FDF1 016D0933 CALL 01C10000 016D0967 CALL 01C10000 016D0972 CALL DWORD PTR DS:[50F5CC] DS:[0050F5CC]=01AF0000 016D0AFD CALL 01C10000 016D0B22 CALL 01C10000 016D0B3B CALL 82C0A7A6 016D0B6F CALL 01C10000 016D0BE5 CALL 3F72A077 016D0CE7 CALL 01C10000 016D0CFB CALL 01C10000 016D0D48 CALL DWORD PTR DS:[5108D8] MSVCR71.__wgetmainargs 016D0D54 CALL 01C10000 016D0D67 CALL 01C10000 016D0D6C CALL 01C10000 016D0DE9 CALL 01C10000 016D0DFD CALL 01C10000 016D0E07 CALL 01C10000 016D0E20 CALL 01C10000 016D0E35 CALL 01C10000 016D0E3F CALL 01C10000 016D0F96 CALL 01C10000 016D0FBB CALL 01C10000 016D10A8 CALL D298E7D8 016D1114 CALL DWORD PTR DS:[5108F0] MSVCR71.__set_app_type 016D1129 CALL DWORD PTR DS:[5108EC] MSVCR71.__p__fmode 016D1169 CALL DWORD PTR DS:[5108E8] MSVCR71.__p__commode 016D11AF CALL C298D3DF 016D11BD CALL 259186C1 016D1226 CALL 01C10000 016D166E CALL 47FADD96 016D1895 CALL 5F96DF5B 016D1B50 CALL 48D8D80D 016D1C38 CALL F3C90E68 016D1CBA CALL 019178EA 016D1EEF CALL 85334A51 016D1EF4 CALL 4942DFFD 016D27C1 CALL 074527CD ![]() |
|
Создано: 13 мая 2007 21:13 · Личное сообщение · #6 У меня VerA 0.13 к пеиду. Small_S пишет: Когда прийдёт время и закончу с 2.1x SKE. Именно по этим вариантам и пойдёт исследование. Нда.. ну тогда я покурю пока... я с аспротектом самостоятельно не справлюсь. Только по туторам. А как ты их собственно исследуешь? Я вот пытался как то трассировать, смотрел чего делается с кодом, но мозгов не хватило ![]() ![]() |
|
Создано: 13 мая 2007 22:14 · Личное сообщение · #7 Sturgeon Я ещё далеко не мастер, но всё равно как бульдозер непрерывно рою в этом направлении. Вот мой топик милости просим, а то я в последнее время там сам на сам колочусь. http://exelab.ru/f/action=vthread&forum=3&topic=7466 ![]() |
|
Создано: 13 мая 2007 22:57 · Личное сообщение · #8 Sturgeonна А как ты их собственно исследуешь? После 41 исключения ставишь Set memory breakpoint on access(в меню по правой кнопке мыши) на область памяти (по Alt+M) размером 3000. Она будет одна среди целого табуна областей по 1000(до неё и после). У меня по адресу 016D0000, у тебя по одному богу и Солодовникову известному адресу. Снова жмёшь Shift + F9(именно так ты проходил предыдущие исключения).И вот она VOEP: 016D0380 6A 74 PUSH 74---------------------------вот здесь срабатыввает бряк 016D0382 EB 02 JMP SHORT 016D0386 016D0384 CD20 EB02CD20 VxDCall 20CD02EB 016D038A FF7424 0C PUSH DWORD PTR SS:[ESP+C]-----эти пуши видны частично 016D038E 66:9C PUSHFW-------------------------------мне пришлось перейти на 38A чтобы 016D0390 53 PUSH EBX--------------------------------всё это стало видно 016D0391 F2: PREFIX REPNE: ; Superfluous prefix 016D0392 EB 01 JMP SHORT 016D0395 016D0394 F3: PREFIX REP: ; Superfluous prefix 016D0395 8D5C47 8D LEA EBX,DWORD PTR DS:[EDI+EAX*2-73] 016D0399 81CB 9846CF9A OR EBX,9ACF4698 016D039F 8D5C24 3D LEA EBX,DWORD PTR SS:[ESP+3D] 016D03A3 83EB 3D SUB EBX,3D 016D03A6 F2: PREFIX REPNE: ; Superfluous prefix 016D03A7 EB 01 JMP SHORT 016D03AA 016D03A9 - 0F8D 5B065653 JGE 54C30A0A 016D03AF F3: PREFIX REP: ; Superfluous prefix 016D03B0 EB 02 JMP SHORT 016D03B4 016D03B2 CD20 81EB25D5 VxDJump D525EB81 016D03B8 C3 RETN---------------------------------А вот этого вообще не будет когда мы будем после JMP SHORT 016D03B4 Ну вот а немного ниже уже пошли вызовы VM. Например когда мы будем на следующем джампере после JMP SHORT 016D03B4 то вот такой код видим: 016D03DE 2BDF SUB EBX,EDI 016D03E0 C703 803C5200 MOV DWORD PTR DS:[EBX],523C80 016D03E6 5B POP EBX 016D03E7 8F03 POP DWORD PTR DS:[EBX] 016D03E9 5B POP EBX 016D03EA 66:9D POPFW 016D03EC 68 8B0B6D01 PUSH 16D0B8B 016D03F1 E8 0AFC5300 CALL 01C10000---------ВОт она VM 016D03F6 68 160B6D01 PUSH 16D0B16 016D03FB E8 00FC5300 CALL 01C10000---------Вот она 016D0400 64:FF35 00000000 PUSH DWORD PTR FS:[0] 016D0407 EB 01 JMP SHORT 016D040A------и снова эти противные джамперы ![]() |
|
Создано: 14 мая 2007 02:04 · Поправил: bash · Личное сообщение · #9 |
![]() |
eXeL@B —› Вопросы новичков —› ASProtect Version: [ Unknown! ] |