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

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

Ранг: 13.0 (новичок), 2thx
Активность: 0.030
Статус: Участник

Создано: 25 апреля 2010 11:45
· Личное сообщение · #1

Здравствуйте форумчане. Ковыряю сабж товарища
injing rghost.net/1369701 PASSWORD:1qaz. OEP нашёл 0056DB7A, импорт поправил begin 5BA000 size F3C, сдампил а прога вылетает с ошибкой в адресе 01D0290F, которого в дампе я не наблюдаю. Это антидамп или что, и как его исправить? Сорри но дамп выложить не смогу 12 MB однако диалап не потяну.



Ранг: 87.8 (постоянный), 10thx
Активность: 0.070
Статус: Участник

Создано: 25 апреля 2010 13:45 · Поправил: gena-m
· Личное сообщение · #2

В оригинальной программе этот регион есть, поэтому можно его сдампить отдельно и прикрутить в виде секции, если только в этом проблема, у меня подозрение что ОЕР найденая вами - "неродная", родная немного раньше выполняется, скорее всего по адресу 56DE3A, исходя из всего этого скорее всего это будет сложно для вас.

-----
Надежда - есть худшее из зол, ибо она продлевает наши страдания.© Ф. Ницше




Ранг: 13.0 (новичок), 2thx
Активность: 0.030
Статус: Участник

Создано: 26 апреля 2010 01:12 · Поправил: matrix
· Личное сообщение · #3

gena-m пишет:
родная немного раньше выполняется, скорее всего по адресу 56DE3A

да да извините запутался уже ОРИГИНАЛЬНАЯ ОЕП по адресу 56DE3A украденных байтов нет. По этому адресу 01D0290F вообще одни нули, да и на антидамп не похоже



Вообще не пойму у меня и орегенал проги то не запускается.

gena-m пишет:
исходя из всего этого скорее всего это будет сложно для вас.

ну не надо так строго я ведь ещё новичёк =)




Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 26 апреля 2010 06:26
· Личное сообщение · #4

1.OEP неправильно нашёл , проскочил чичуть OEP>0056DE3A
2.Файл с элементами сплайсинг-мутацией(одна комманада замененена несколькими)
3.Защита импорта по типу аспра реализована
3.Для запуска файла должны стоять биббилиотеки mfc9 плюс установвлена MYSQL
4.Прот юзает анти дамп плюс анти ImportREC(впервый раз с таким сталкиваюсь),впринципе обезьянка хорошо справилась
5.Такчто с твои набором знаний учится и учится:
P.S. может вы разрабочик этого чуда

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.




Ранг: 13.0 (новичок), 2thx
Активность: 0.030
Статус: Участник

Создано: 26 апреля 2010 12:54
· Личное сообщение · #5

ClockMan пишет:
1.OEP неправильно нашёл , проскочил чичуть OEP>0056DE3A

вы не внимательно прочитали наверно я уже написал что matrix пишет:
да да извините запутался уже ОРИГИНАЛЬНАЯ ОЕП по адресу 56DE3A украденных байтов нет



ClockMan пишет:
3.Защита импорта по типу аспра реализована

005BA000 77E0D363 ADVAPI32.GetFileSecurityA
005BA004 77DE6AD0 ADVAPI32.RegisterEventSourceA
005BA008 77DE6C22 ADVAPI32.ReportEventA
005BA00C 77DE6943 ADVAPI32.DeregisterEventSource
005BA010 77DD778E ADVAPI32.InitializeSecurityDescriptor
005BA014 77DD7AD1 ADVAPI32.InitializeAcl
005BA018 77DD7AF9 ADVAPI32.AddAccessAllowedAce
005BA01C 77DFD48E ADVAPI32.IsValidSid
005BA020 77DD77B3 ADVAPI32.SetSecurityDescriptorDacl
005BA024 77DD6BF0 ADVAPI32.RegCloseKey
005BA028 77DDEBE7 ADVAPI32.RegSetValueExA
005BA02C 77DD761B ADVAPI32.RegOpenKeyExA
005BA030 77DD7883 ADVAPI32.RegQueryValueExA
005BA034 77DDEAF4 ADVAPI32.RegCreateKeyExA
005BA038 77DFD4C9 ADVAPI32.GetUserNameA
005BA03C 77E0D2FD ADVAPI32.SetFileSecurityA
005BA040 77E0D52C ADVAPI32.LookupAccountSidA
005BA044 77DFCF54 ADVAPI32.GetAce
005BA048 77DE6FEC ADVAPI32.GetAclInformation
005BA04C 77DD7C58 ADVAPI32.GetSecurityDescriptorDacl
005BA050 77DD7B24 ADVAPI32.GetLengthSid
005BA054 77DD7A91 ADVAPI32.AllocateAndInitializeSid
005BA058 77E0D3CF ADVAPI32.LookupAccountNameA
005BA05C 77DD7A80 ADVAPI32.FreeSid
005BA060 00000000
005BA064 73B81B0F AVICAP32.capGetDriverDescriptionA
005BA068 73B81E3B AVICAP32.capCreateCaptureWindowA
005BA06C 00000000
005BA070 76F25B4D DNSAPI.DnsRecordListFree
005BA074 76F36883 DNSAPI.DnsQuery_A
005BA078 00000000
005BA07C 77F1B03F GDI32.StretchDIBits
005BA080 77F15B80 GDI32.SelectObject
005BA084 77F15EEB GDI32.SetBkMode
005BA088 77F16C0A GDI32.DeleteObject
005BA08C 77F1E649 GDI32.Rectangle
005BA090 77F1ACFE GDI32.CreatePen
005BA094 77F161D1 GDI32.GetStockObject
005BA098 77F1D8F8 GDI32.SetROP2
005BA09C 77F1E934 GDI32.GetROP2
005BA0A0 77F1900C GDI32.SetDIBitsToDevice
005BA0A4 77F161B5 GDI32.CreateSolidBrush
005BA0A8 77F15D87 GDI32.SetTextColor
005BA0AC 77F3B670 GDI32.CreateFontA
005BA0B0 77F1DC1F GDI32.GetTextMetricsA
005BA0B4 77F2C247 GDI32.GetTextExtentPoint32A
005BA0B8 00000000
005BA0BC 76D66051 IPHLPAPI.GetAdaptersInfo
005BA0C0 76D63B9C IPHLPAPI.GetIpAddrTable
005BA0C4 76D66300 IPHLPAPI.NotifyAddrChange
005BA0C8 76D6AAC7 IPHLPAPI.GetIpForwardTable
005BA0CC 76D663EF IPHLPAPI.GetIfEntry
005BA0D0 76D6A2AA IPHLPAPI.GetBestInterface
005BA0D4 00000000
005BA0D8 7C80180E kernel32.ReadFile
005BA0DC 7C809B67 kernel32.CloseHandle
005BA0E0 7C810BAE kernel32.SetFilePointer
005BA0E4 7C80BDD6 kernel32.lstrlenA
005BA0E8 7C910331 ntdll.RtlGetLastWin32Error
005BA0EC 7C810DA7 kernel32.WriteFile
005BA0F0 7C80A037 kernel32.SetEvent
005BA0F4 7C809F11 kernel32.InitializeCriticalSection
005BA0F8 7C91188A ntdll.RtlDeleteCriticalSection
005BA0FC 7C809E21 kernel32.IsBadReadPtr
005BA100 7C802442 kernel32.Sleep
005BA104 7C802520 kernel32.WaitForSingleObject
005BA108 7C80BFCD kernel32.ReleaseSemaphore
005BA10C 7C80A07D kernel32.WaitForMultipleObjects
005BA110 7C812E3D kernel32.CreateSemaphoreA
005BA114 7C8130B3 kernel32.IsDebuggerPresent
005BA118 7C863072 kernel32.UnhandledExceptionFilter
005BA11C 7C809940 kernel32.GetCurrentProcessId
005BA120 7C80DE15 kernel32.GetCurrentProcess
005BA124 7C80EDF7 kernel32.FindClose
005BA128 7C80E886 kernel32.FileTimeToLocalFileTime
005BA12C 7C8137F9 kernel32.FindFirstFileA
005BA130 7C80B4EF kernel32.GetModuleFileNameA
005BA134 7C81322C kernel32.OpenEventA
005BA138 7C801625 kernel32.DeviceIoControl
005BA13C 7C82C2B8 kernel32.SetPriorityClass
005BA140 7C812AFE kernel32.GetVersionExA
005BA144 7C83080D kernel32.CreateEventA
005BA148 7C80176B kernel32.GetSystemTime
005BA14C 7C80A7F4 kernel32.GetLocalTime
005BA150 7C810657 kernel32.CreateThread
005BA154 7C8097AE kernel32.InterlockedExchange
005BA158 7C80B6C1 kernel32.GetModuleHandleA
005BA15C 7C80ABFE kernel32.FreeLibrary
005BA160 7C801A24 kernel32.CreateFileA
005BA164 7C8021CC kernel32.ReadProcessMemory
005BA168 7C859F78 kernel32.OutputDebugStringA
005BA16C 7C80ADC0 kernel32.GetProcAddress
005BA170 7C801D77 kernel32.LoadLibraryA
005BA174 7C814B12 kernel32.GetEnvironmentVariableA
005BA178 7C81155C kernel32.GetFileAttributesA
005BA17C 7C834F86 kernel32.GetCurrentDirectoryA
005BA180 7C83287F kernel32.ResumeThread
005BA184 7C839695 kernel32.GetThreadContext
005BA188 7C801EEE kernel32.GetStartupInfoA
005BA18C 7C8097C2 kernel32.InterlockedCompareExchange
005BA190 7C82F700 kernel32.FormatMessageA
005BA194 7C80E80C kernel32.FileTimeToSystemTime
005BA198 7C810B3C kernel32.SystemTimeToFileTime
005BA19C 7C874191 kernel32.SetConsoleTextAttribute
005BA1A0 7C838D70 kernel32.LCMapStringA
005BA1A4 7C8762F7 kernel32.GetStringTypeExA
005BA1A8 7C80ABE1 kernel32.GetProcessHeap
005BA1AC 7C91043D ntdll.RtlFreeHeap
005BA1B0 7C82171C kernel32.CreateDirectoryA
005BA1B4 7C8305BD kernel32.FileTimeToDosDateTime
005BA1B8 7C812F3D kernel32.GetCommandLineA
005BA1BC 7C84480D kernel32.SetUnhandledExceptionFilter
005BA1C0 7C812A29 kernel32.RaiseException
005BA1C4 7C809750 kernel32.GetCurrentThreadId
005BA1C8 7C8396BA kernel32.SuspendThread
005BA1CC 7C80C078 kernel32.ExitThread
005BA1D0 7C80979A kernel32.InterlockedDecrement
005BA1D4 7C8092C5 kernel32.GetTickCount
005BA1D8 7C9010ED ntdll.RtlLeaveCriticalSection
005BA1DC 7C901005 ntdll.RtlEnterCriticalSection
005BA1E0 7C910340 ntdll.RtlSetLastWin32Error
005BA1E4 7C831E35 kernel32.DeleteFileA
005BA1E8 7C809760 kernel32.TlsGetValue
005BA1EC 7C809BE5 kernel32.TlsSetValue
005BA1F0 7C8136F7 kernel32.TlsFree
005BA1F4 7C812DBF kernel32.TlsAlloc
005BA1F8 7C81D7AF kernel32.CreatePipe
005BA1FC 7C82E10C kernel32.SetHandleInformation
005BA200 7C802367 kernel32.CreateProcessA
005BA204 7C85FB0F kernel32.PeekNamedPipe
005BA208 7C801E16 kernel32.TerminateProcess
005BA20C 7C90112B ntdll.RtlTryEnterCriticalSection
005BA210 7C809786 kernel32.InterlockedIncrement
005BA214 7C809C18 kernel32.MultiByteToWideChar
005BA218 7C80A0F4 kernel32.WideCharToMultiByte
005BA21C 7C8017E5 kernel32.GetSystemTimeAsFileTime
005BA220 7C80D282 kernel32.GetLocaleInfoA
005BA224 7C809F30 kernel32.GetUserDefaultLCID
005BA228 7C82F9A6 kernel32.QueryPerformanceFrequency
005BA22C 7C834E39 kernel32.FindNextFileA
005BA230 7C835047 kernel32.GetTimeZoneInformation
005BA234 7C80A447 kernel32.QueryPerformanceCounter
005BA238 7C80DE1E kernel32.DuplicateHandle
005BA23C 7C81CAAB kernel32.TerminateThread
005BA240 7C80C128 kernel32.SetThreadPriority
005BA244 7C80A7B3 kernel32.GetThreadPriority
005BA248 7C812D76 kernel32.GetSystemInfo
005BA24C 7C8024A7 kernel32.ReleaseMutex
005BA250 7C81391C kernel32.GetFullPathNameA
005BA254 7C80E95F kernel32.CreateMutexA
005BA258 7C82BD35 kernel32.GetHandleInformation
005BA25C 7C80994F kernel32.LocalFree
005BA260 7C8099AD kernel32.LocalAlloc
005BA264 7C812F59 kernel32.GetStdHandle
005BA268 7C859D72 kernel32.DebugBreak
005BA26C 7C860F46 kernel32.FatalExit
005BA270 7C80990B kernel32.GetCurrentThread
005BA274 00000000
005BA278 100035F3 LIBMYSQL.mysql_free_result
005BA27C 70001230 LIBMYSQL.mysql_data_seek
005BA280 700033E6 LIBMYSQL.mysql_num_rows
005BA284 70004D5E LIBMYSQL.mysql_thread_init
005BA288 70004863 LIBMYSQL.mysql_real_connect
005BA28C 700041B5 LIBMYSQL.mysql_init
005BA290 70003373 LIBMYSQL.mysql_close
005BA294 700036A2 LIBMYSQL.mysql_errno
005BA298 70003E86 LIBMYSQL.mysql_ping
005BA29C 70001960 LIBMYSQL.mysql_thread_end
005BA2A0 70004363 LIBMYSQL.mysql_sqlstate
005BA2A4 7000368E LIBMYSQL.mysql_error
005BA2A8 7000425A LIBMYSQL.mysql_real_query
005BA2AC 70003D19 LIBMYSQL.mysql_store_result
005BA2B0 70002E1E LIBMYSQL.mysql_fetch_row
005BA2B4 00000000
005BA2B8 7848E524 MSVCP90.??1?$basic_iostream@DU?$char_traits@D@std@@@std@@UAE@XZ
005BA2BC 784AEBEA MSVCP90.?peek@?$basic_istream@DU?$char_traits@D@std@@@std@@QAEHXZ
005BA2C0 784AE7C5 MSVCP90.?get@?$basic_istream@DU?$char_traits@D@std@@@std@@QAEAAV12@AAD @Z
005BA2C4 7848A974 MSVCP90.?clear@?$basic_ios@_WU?$char_traits@_W@std@@@std@@QAEXH_N@Z
005BA2C8 784A20B5 MSVCP90.??0?$basic_ostringstream@DU?$char_traits@D@std@@V?$allocator@D @2@@std@@QAE@H@Z
005BA2CC 7848BACE MSVCP90.?ends@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@1@AAV2 1@@Z
005BA2D0 78499153 MSVCP90.?str@?$basic_ostringstream@DU?$char_traits@D@std@@V?$allocator @D@2@@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@ 2@@2@XZ
005BA2D4 78494310 MSVCP90.??_D?$basic_ostringstream@DU?$char_traits@D@std@@V?$allocator@ D@2@@std@@QAEXXZ
005BA2D8 78495979 MSVCP90.??$?MDU?$char_traits@D@std@@V?$allocator@D@1@@std@@YA_NABV?$ba sic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@0@0@Z
005BA2DC 784ABB07 MSVCP90.??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@G@Z
005BA2E0 7848E402 MSVCP90.??6?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV01@P6A AAVios_base@1@AAV21@@Z@Z
005BA2E4 784B3F7E MSVCP90.?setw@std@@YA?AU?$_Smanip@H@1@H@Z
005BA2E8 78488BB0 MSVCP90.?setf@ios_base@std@@QAEHHH@Z
005BA2EC 784A3AD0 MSVCP90.??0?$basic_ofstream@_WU?$char_traits@_W@std@@@std@@QAE@XZ
005BA2F0 784A8D7D MSVCP90.??_D?$basic_ofstream@_WU?$char_traits@_W@std@@@std@@QAEXXZ
005BA2F4 784A3E60 MSVCP90.?open@?$basic_ofstream@_WU?$char_traits@_W@std@@@std@@QAEXPBDH H@Z
005BA2F8 78506A10 OFFSET MSVCP90.?cerr@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
005BA2FC 78488C1F MSVCP90.?getloc@ios_base@std@@QBE?AVlocale@2@XZ
005BA300 78487E83 MSVCP90.??1locale@std@@QAE@XZ
005BA304 78489040 MSVCP90.?fill@?$basic_ios@_WU?$char_traits@_W@std@@@std@@QBE_WXZ
005BA308 78489346 MSVCP90.?sputc@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@QAEG_W @Z
005BA30C 7848DB06 MSVCP90.?underflow@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MA



Ранг: 13.0 (новичок), 2thx
Активность: 0.030
Статус: Участник

Создано: 26 апреля 2010 13:07
· Личное сообщение · #6

Блин обрезало, ну там тоже самое за исключением этого

005BAAD0 78657268 mfc90.78657268
005BAAD4 786573A3 mfc90.786573A3
005BAAD8 7865AF15 mfc90.7865AF15
005BAADC 78668920 mfc90.78668920
005BAAE0 78657268 mfc90.78657268
005BAAE4 78658153 mfc90.78658153
005BAAE8 7863E487 mfc90.7863E487
005BAAEC 7865390C mfc90.7865390C
005BAAF0 786544F9 mfc90.786544F9
005BAAF4 786539C8 mfc90.786539C8
005BAAF8 786536A9 mfc90.786536A9
005BAAFC 7865470E mfc90.7865470E
005BAB00 7863B452 mfc90.7863B452
005BAB04 786686B1 mfc90.786686B1

ну как вы исказали нужна mfc90

ClockMan пишет:
3.Для запуска файла должны стоять биббилиотеки mfc9 плюс установвлена MYSQL

Вот за это спасибо а то я думаю почему у фунок имён нет?

ClockMan пишет:
4.Прот юзает анти дамп плюс анти ImportREC(впервый раз с таким сталкиваюсь),впринципе обезьянка хорошо справилась

Извиняюсь забыл опять (склероз ). Да imprec здесь косячит я сам оху*л, а вот обезьянка (там вообщето мартышка ) молодец, правда плагины не поддерживает обидно . Для тех кто в танке это CHimpREC.


ClockMan пишет:
5.Такчто с твои набором знаний учится и учится

Что я и делаю.

ClockMan пишет:
P.S. может вы разрабочик этого чуда

+1 я плакаль. Как ты меня спалил ))))))

Так теперь очередная порция вопросиков

1. Т.е. прогу уже нет смысла распаковывать без недостающих библиотек? ТОЛЬКО ВОТ Я заметил одну странность оригинал проги всё таки запускается быстро мелькает окно и исчезает, значит ВСЁ ТАКИ можно её распаковать или НЕТ?

2.Антидамп. Опишу алгоритм своих действий: стою на оеп 56DE3A-> делаю дамп->восстанавливаю импорт->дамплю секцию 01CD0000->делаю ребилд пе. И всё но прога опять вылетает с ошибкой которая на скрине из моего поста. Что я делаю нетак?????

ClockMan пишет:
2.Файл с элементами сплайсинг-мутацией(одна комманада замененена несколькими)

а это где там такое?? Можно поподробней.




Ранг: 529.0 (!), 110thx
Активность: 0.290.04
Статус: Участник
5KRT

Создано: 26 апреля 2010 13:37
· Личное сообщение · #7

[!] PE Lock v1.0x detected !

-----
Research For Food




Ранг: 189.9 (ветеран), 334thx
Активность: 0.30
Статус: Участник

Создано: 26 апреля 2010 14:07
· Личное сообщение · #8

daFix пишет:
[!] PE Lock v1.0x detected !

актуально


matrix пишет:
значит ВСЁ ТАКИ можно её распаковать или НЕТ?

распаковать то можно да только запускаться она у тебя не будет я ещё давно автору отписал да только он походу забил болт.




Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 26 апреля 2010 14:11
· Личное сообщение · #9

matrix пишет:
а это где там такое?? Можно поподробней.


/*401007*/ JMP 01CC0001
/*1CC0001*/ PUSH 61B520
/*1CC0006*/ JMP soft.0040100C

/*401091*/ JMP 01CC0018
/*1CC0018*/ LEA EAX,[A75D7241]
/*1CC001E*/ LEA EAX,[EAX+9EFF5841]
/*1CC0024*/ LEA EAX,[EAX+3DFEB083]
/*1CC002A*/ LEA EAX,[EAX+7BFD6107]====>или mov eax,0058DC0C
/*1CC0030*/ JMP soft.00401096

Повсему участку кода идут вызова в область памяти


matrix пишет:
Т.е. прогу уже нет смысла распаковывать без недостающих библиотек?

Почему неимеет смыла, расспаковывай

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.




Ранг: 284.8 (наставник), 6thx
Активность: 0.150
Статус: Участник

Создано: 26 апреля 2010 14:38
· Личное сообщение · #10

matrix пишет:
005BAAD0 78657268 mfc90.78657268005BAAD4 786573A3 mfc90.786573A3005BAAD8 7865AF15 mfc90.7865AF15005BAADC 78668920 mfc90.78668920005BAAE0 78657268 mfc90.78657268005BAAE4 78658153 mfc90.78658153005BAAE8 7863E487 mfc90.7863E487005BAAEC 7865390C mfc90.7865390C005BAAF0 786544F9 mfc90.786544F9005BAAF4 786539C8 mfc90.786539C8005BAAF8 786536A9 mfc90.786536A9005BAAFC 7865470E mfc90.7865470E005BAB00 7863B452 mfc90.7863B452005BAB04 786686B1 mfc90.786686B1ну как вы исказали нужна mfc90ClockMan пишет:3.Для запуска файла должны стоять биббилиотеки mfc9 плюс установвлена MYSQL Вот за это спасибо а то я думаю почему у фунок имён нет?


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



Ранг: 13.0 (новичок), 2thx
Активность: 0.030
Статус: Участник

Создано: 26 апреля 2010 14:43 · Поправил: matrix
· Личное сообщение · #11

ClockMan пишет:

/*401007*/ JMP 01CC0001
/*1CC0001*/ PUSH 61B520
/*1CC0006*/ JMP soft.0040100C

/*401091*/ JMP 01CC0018
/*1CC0018*/ LEA EAX,[A75D7241]
/*1CC001E*/ LEA EAX,[EAX+9EFF5841]
/*1CC0024*/ LEA EAX,[EAX+3DFEB083]
/*1CC002A*/ LEA EAX,[EAX+7BFD6107]====>или mov eax,0058DC0C
/*1CC0030*/ JMP soft.00401096


а ну так я эту секцию и прикручиваю к дампу но всё равно не запускается вылетает ошибка. Если делать ребилд пе то прога вообще выскакивает с ошибкой "не является win32".

mfc90 есть, а вот mysql.dll нету у кого есть киньте плиз.



Ранг: 284.8 (наставник), 6thx
Активность: 0.150
Статус: Участник

Создано: 26 апреля 2010 14:47
· Личное сообщение · #12

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



Ранг: 13.0 (новичок), 2thx
Активность: 0.030
Статус: Участник

Создано: 26 апреля 2010 14:50
· Личное сообщение · #13

RSI спасибо пошёл пробовать




Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 27 апреля 2010 09:08
· Личное сообщение · #14

matrix
Вот скрипт для восстановления краденых функций

6786_26.04.2010_CRACKLAB.rU.tgz - Code restore.txt

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.




Ранг: 13.0 (новичок), 2thx
Активность: 0.030
Статус: Участник

Создано: 27 апреля 2010 11:40
· Личное сообщение · #15

RSI не помогло! Прикручиваю секцию к ОРИГИНАЛ.ехе ставлю размер 0003С000. Перенаправляю через VirtuallAlloc в новую секцию (может не правильно делаю? После вызова функции еах указывает на адрес по котраму будет создаваться секция я меняю на свой) Смотрю там появились теже байты, которые я видел не в прикрученой секции т.е. пока всё норм. ОЕП-> дамп->импорт но блин опять какя то запара теперь другая ошибка скрин тот же самый но адрес теперь такой Offset: 00000000

0056DC26 /75 1B JNZ SHORT 0056DC43
0056DC28 |68 8CB25B00 PUSH 005BB28C
0056DC2D |68 44AF5B00 PUSH 005BAF44
0056DC32 |E8 27090000 CALL <JMP.&msvcr90._initterm>

Падает как и впрошлый раз на вызове 0056DC32. Если глубже посмотреть внутрь вызова то

785421F9 8B06 MOV EAX,DWORD PTR DS:[ESI] ; dump_.005CDC38
785421FB 85C0 TEST EAX,EAX
785421FD 74 02 JE SHORT 78542201
785421FF FFD0 CALL NEAR EAX
78542201 83C6 04 ADD ESI,4
78542204 3B75 0C CMP ESI,DWORD PTR SS:[EBP+C]
78542207 ^ 72 F0 JB SHORT 785421F9

в этом цикле после нескольких итераций, 785421FF по этому адресу в ольке выпадает такая ошибка

Don't know how to step because memory at address 00000000 is not readable. Try to change EIP or pass exception to program.

состояние регистров
EAX 0013FD18
ECX 0013FED4
EDX 0013FD3C
EBX 0013FD3C
ESP 0013FD0C
EBP 0013FF28
ESI 006713E0 dump_.006713E0
EDI 00000000
EIP 00000000

Блин не знаю что делать оеп правильно импорт правильно секция правильно, чего не хватает теперь? Может надо не одну секцию прикручивать, бывает такой антидамп когда создается 3 или 5 секций к примеру? Подскажите пожалуйста.

ClockMan скрипт на оеп запускать?




Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 27 апреля 2010 12:29
· Личное сообщение · #16

matrix пишет:
скрипт на оеп запускать

Да,единственное что надо то указать базу где находятся краденные функции и поправить скрип

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.




Ранг: 13.0 (новичок), 2thx
Активность: 0.030
Статус: Участник

Создано: 27 апреля 2010 13:06
· Личное сообщение · #17

ClockMan А ты её распаковал чтоб запускалась? Если да то не выкладывай, просто скажи Да или Нет.




Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 27 апреля 2010 13:30
· Личное сообщение · #18

/*4419C5*/ PUSH EBP
/*4419C6*/ MOV EBP,ESP
/*4419C8*/ PUSH ECX
/*4419C9*/ MOV DWORD PTR [EBP-4],0
/*4419D0*/ CALL 00360DAB

Не всё так там просто, рограмма запускается показывается окно но потом вылетает ошибка

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.




Ранг: 13.0 (новичок), 2thx
Активность: 0.030
Статус: Участник

Создано: 27 апреля 2010 20:34
· Личное сообщение · #19

Йяяяяхууу распаковал спасибо ClockMan и RSI за ваше благородное участие желаю вам творческих успехов и удачи!
Правда всё равно ошибка выскакивает

---------------------------
Microsoft Visual C++ Runtime Library
---------------------------
Runtime Error!

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

Как ты и написал у тебя так же? Это решаемо или нет??

ClockMan пишет:
Не всё так там просто, рограмма запускается показывается окно но потом вылетает ошибка



Ещё пару нубских вопросиков ответьте пожалуйста на них тоже

1. Есть рзница если перед дампом я восстановлю импорт в ольке и сдамплю, это будет то же самое как если бы я сдампил а потом прикрутил импорт с imprec?

2. 005BAF3C 774FEF31 ole32.CoCreateGuid
005BAF40 00000000

Ещё при определении конца таблицы какой адрес лучше указывать этот 005BAF3C или этот 005BAF40



Ранг: 87.8 (постоянный), 10thx
Активность: 0.070
Статус: Участник

Создано: 27 апреля 2010 21:54 · Поправил: gena-m
· Личное сообщение · #20

Есть рзница если перед дампом я восстановлю импорт в ольке и сдамплю
Разницици нет, есть одно НО импорт в Олли прийдется очень долго и трудно восстанавливать (почитай статьи Рикардо). И это будет совсем не то же самое как если бы я сдампил а потом прикрутил импорт с imprec, поскольку импорт состоит из двух таблиц.
Адрес лучше указать этот 005BAF40

-----
Надежда - есть худшее из зол, ибо она продлевает наши страдания.© Ф. Ницше




Ранг: 13.0 (новичок), 2thx
Активность: 0.030
Статус: Участник

Создано: 27 апреля 2010 22:56
· Личное сообщение · #21

ClockMan а как ты нашёл что из секции кода идут прыжки в область память интересно узнать ClockMan пишет:
/*401007*/ JMP 01CC0001/*1CC0001*/ PUSH 61B520/*1CC0006*/ JMP soft.0040100C/*401091*/ JMP 01CC0018/*1CC0018*/ LEA EAX,[A75D7241]/*1CC001E*/ LEA EAX,[EAX+9EFF5841]/*1CC0024*/ LEA EAX,[EAX+3DFEB083]/*1CC002A*/ LEA EAX,[EAX+7BFD6107]====>или mov eax,0058DC0C/*1CC0030*/ JMP soft.00401096


gena-m
т.е. если я восстановил все фнки в ольке и сделал дамп, мне всёравно потом нужно будет прикручивать импорт с помощью импрека. Разве в дампе не сохранятся восстановленные функи?

gena-m пишет:
Адрес лучше указать этот 005BAF40

ага спасибо уже попробовал.



Ранг: 87.8 (постоянный), 10thx
Активность: 0.070
Статус: Участник

Создано: 27 апреля 2010 23:34
· Личное сообщение · #22

т.е. если я восстановил все фнки в ольке и сделал дамп, мне всёравно потом нужно будет прикручивать импорт с помощью импрека. Разве в дампе не сохранятся восстановленные функи?
Это ты восстановил одну таблицу (IT называется если не перепутал ), и программа будет работать только на тех машинах, где адреса размещения функций совпадают, т.е. она будет работать на твоей машине, но только пока не поменяешь версию ОС или сервис пак, существует другая таблица для поиска адресов размещения функций и импрек основываясь на твоей первой таблице создает вторую ( IAT - для системного загрузчика), в этом случае файл будет работать на всех машинах, вот ее ты руками задолбаешься восстанавливать в Олли. Почитай теорию.

-----
Надежда - есть худшее из зол, ибо она продлевает наши страдания.© Ф. Ницше




Ранг: 13.0 (новичок), 2thx
Активность: 0.030
Статус: Участник

Создано: 28 апреля 2010 14:52
· Личное сообщение · #23

gena-m Спасибо за ответ.


Осталось решить эти вопросы


1. ClockMan пишет:
/*401007*/ JMP 01CC0001/*1CC0001*/ PUSH 61B520/*1CC0006*/ JMP soft.0040100C/*401091*/ JMP 01CC0018/*1CC0018*/ LEA EAX,[A75D7241]/*1CC001E*/ LEA EAX,[EAX+9EFF5841]/*1CC0024*/ LEA EAX,[EAX+3DFEB083]/*1CC002A*/ LEA EAX,[EAX+7BFD6107]====>или mov eax,0058DC0C/*1CC0030*/ JMP soft.00401096

Как товарищ ClockMan нашёл все вызовы в память из секции кода это с помощью Ольки, интересно всё таки.


2.
ClockMan пишет:
Не всё так там просто, рограмма запускается показывается окно но потом вылетает ошибка


matrix пишет:
Правда всё равно ошибка выскакивает---------------------------Microsoft Visual C++ Runtime Library---------------------------Runtime Error!This application has requested the Runtime to terminate it in an unusual way.Please contact the application's support team for more information.

Её можно решить или это уже чего проге не хвататет, так как даже оригинал не запускается полностью.




Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 28 апреля 2010 23:34
· Личное сообщение · #24

matrix пишет:
Как товарищ ClockMan нашёл все вызовы в память из секции кода это с помощью Ольки, интересно всё таки

Так там в самом начале кода видно прыжки в вм(псевдо)
matrix пишет:
Её можно решить или это уже чего проге не хвататет, так как даже оригинал не запускается полностью.

Нужна полность инстоляха а так гадать себя неувожать

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.




Ранг: 13.0 (новичок), 2thx
Активность: 0.030
Статус: Участник

Создано: 28 апреля 2010 23:51
· Личное сообщение · #25

ClockMan пишет:
Нужна полность инстоляха а так гадать себя неувожать

ещё немножко вас помучаю и закрою тему.


ClockMan не ну вот я на оеп 56DE3A и беру не стого не с сяго топаю в самое начало кода, объясните поподробней как вы нашли именно все вызовы есть такая функция в ольге (типа как поиск текстовых строк?) или вы просто его реализовали по первым прыжкам а дальше поиском через скрипт?




Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 29 апреля 2010 04:33
· Личное сообщение · #26

matrix пишет:
или вы просто его реализовали по первым прыжкам а дальше поиском через скрипт?

Изучай олли скриптПосмотрев мой скрипт у тебя отпали бы все вопросы

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.




Ранг: 13.0 (новичок), 2thx
Активность: 0.030
Статус: Участник

Создано: 29 апреля 2010 19:41
· Личное сообщение · #27

ClockMan пишет:
Изучай олли скриптПосмотрев мой скрипт у тебя отпали бы все вопросы

Скрипт то я видел. Мне интересно это ClockMan пишет:
/*401007*/ JMP 01CC0001/*1CC0001*/ PUSH 61B520/*1CC0006*/ JMP soft.0040100C

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



Ранг: 189.9 (ветеран), 334thx
Активность: 0.30
Статус: Участник

Создано: 30 апреля 2010 02:22
· Личное сообщение · #28

matrix пишет:
надо знать?

почитай уже наконец Рикардо и Ленку посмотри, конечно это надо знать стандартный code redirection он же антидамп, вообщем как уже и сказали учиться,учиться.....



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

Создано: 30 апреля 2010 03:06
· Личное сообщение · #29

matrix
Прежде чем задавать глупые вопроси получать столь же глупые ответы ты бы хоть посмотрел имеющися материалы на форуме. Пелок давным давно разобрали по косточкам. Вот статья SergSh
http://exelab.ru/rar/dl/CRACKLAB.rU_28.rar



Ранг: 13.0 (новичок), 2thx
Активность: 0.030
Статус: Участник

Создано: 30 апреля 2010 11:18
· Личное сообщение · #30

Всем большое спасибо тему закрываю


 eXeL@B —› Вопросы новичков —› Проблемка с анпакингом
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати