![]() |
eXeL@B —› Вопросы новичков —› Несговорчивый Armadillo |
Посл.ответ | Сообщение |
|
Создано: 21 октября 2008 16:46 · Личное сообщение · #1 Нашел кучу итересных статей по спортивному крэкингу от гуру Рикардо и со-камрадов. С испанским проблема. Единственный толковый не-онлайн переводчик а-ля Spanish-English оказался trial на 15 дней, запакованный армадилой: Word Magic Translator Home Edition 5.2. (часть Suite Home Edition) ArmaFP v.1.6: <------- 21-10-2008 16:27:23 -------> C:\Program Files\Word Magic Software\5.2\Programs\wmthme5.exe !- Protected Armadillo Protection system (Professional) !- <Protection Options> Debug-Blocker CopyMem-II Enable Import Table Elimination Enable Memory-Patching Protections !- <Backup Key Options> Variable Backup Keys Fixed Backup Keys !- <Compression Options> Better/Slower Compression !- <Other Options> Store Environment Vars Externally Allow Only One Copy Use eSellerate Edition Keys Use Digital River Edition Keys ?- Signature 479D1B00 28-01-2008 ArmaFP v.1.8: <------- 21-10-2008 16:30:16 -------> C:\Program Files\Word Magic Software\5.2\Programs\wmthme5.exe !- Protected Armadillo Protection system (Professional) !- <Protection Options> Debug-Blocker !- <Backup Key Options> Variable Backup Keys !- <Compression Options> Best/Slowest Compression !- <Other Options> !- Version 5.40 28-01-2008 !- Elapsed Time 00h 00m 01s 766ms Автоматические распаковщики, в том числе и Armageddon v.1.5 не канают: дамп неработоспособный. При распаковке вручную проблема: ImpRec не находит IAT. Использовал bp CreateThread для нахождения OEP, потом бряка на втором call EDX. Чтобы IAT была валидной: bp VirtualProtect, дальше если в стеке PAGE_READ_WRITE и после Ctrl-F9, F7 есть push 14, затираю push EBP на retn в функции после push 100. Метод 100% работающий на unpackme, а тут облом с импортом. Мож кто знает, как побороть, чтоб не пришлось опять курить кучу tutorials. TrialReset, TrashReg, лоадеры и т.п. -- не спортивный вариант, хочется обычной регистрации, если это возможно, а точнее, метода её достижения. ![]() |
|
Создано: 22 октября 2008 04:40 · Личное сообщение · #2 |
|
Создано: 22 октября 2008 09:11 · Личное сообщение · #3 |
|
Создано: 22 октября 2008 11:25 · Личное сообщение · #4 Попробовал DilloDIE 1.6: CreateProcess... --> Filename: wmthme5.exe --> Process ID: 00000F3C Debugblocker detected... Entering Child Process... --> Process ID: 00000FC8 New Thread created. ID: 00000134 New Thread created. ID: 000002B0 New Thread created. ID: 000002D4 На этом этапе анпакер остановился и тупит уже час, окно подопытной программы открылось, но никаких новых сообщений нет. То ли ему надо больше времени, то ли нужны настройки, отличающиеся от Default, а может эта версия ему не по зубам. Видать, придется вручную...Попробую UIF v.1.2. Скачал с tuts4you + еще кучу unpacking скриптов для Olly. Трепещи, Armadillo! ибо скоро я тебя порву! ![]() |
|
Создано: 22 октября 2008 14:13 · Личное сообщение · #5 |
|
Создано: 22 октября 2008 14:57 · Личное сообщение · #6 Thanks, Leatherfase. Armageddon 1.5.1 достоин своего названия! Причем OEP, IAT RVA и Size - те же, которые получил я после неудачной ручной распаковки. Может был запорчен PE-Header, а я его не восстанавливал? А раньше почему то Armageddon не брал этот барьер. Обновленная и исправленная версия у ARTeam? Только вот бок: без армадильной защиты trial улетучился. Впрочем Borland Delphi 6.0-7.0 (as PEiD says) это, уже попроще. Наверное прога проверяет, если нет защиты (только каким образом можно это проверить?), то нет и trial'а: trial expired. ![]() |
|
Создано: 22 октября 2008 18:05 · Личное сообщение · #7 |
|
Создано: 23 октября 2008 12:46 · Личное сообщение · #8 Утонул в куче GetEnvironmentVariable A и W. Какие же правильные значения скармливать программе после вызова этих API? Попробую пойти другим путем и сэмулировать регистрацию, хотя это будет непросто : прога предупреждает, что во время регистрации должен быть подключен net, должно быть будет пытаться лезть на свой сайт. С таким я еще не боролся... ![]() |
|
Создано: 23 октября 2008 13:25 · Личное сообщение · #9 |
|
Создано: 23 октября 2008 15:36 · Личное сообщение · #10 Thanks, RSI. Мне б tutorial раздобыть с похожим примером, КПД взлома значительно б повысился, а то указанные переменные считываются и передаются куда то как локальные, через стек, долго отслеживать. ЗЫ. На другой машине с win xp pro sp3 armageddon 1.51 почему то в упор не выдает работоспособного дампа. ![]() |
|
Создано: 23 октября 2008 17:23 · Личное сообщение · #11 |
|
Создано: 23 октября 2008 18:03 · Личное сообщение · #12 |
|
Создано: 23 октября 2008 18:36 · Поправил: r99 · Личное сообщение · #13 |
|
Создано: 24 октября 2008 14:56 · Личное сообщение · #14 добавляю новую секцию, устанавливаю OEP на нее, в ней пишу SetEnvironmentVariableA для имен имеющих значение для программы, прыгаю на старый OEP. Вот имена: ArmServerInfo = 1 USERKEY = null ALTUSERNAME = DEFAULT DAYSLEFT = 14 EXPIRED = null Значения взяты из ArmaEV старой версии ( до 1.3) для запакованной проги (ArmaEV 1.3 не работает почему то, запускает прогу и виснет), кроме ArmServerInfo (какое у него должно быть значение я не знаю). Все эти имена считываются прогой (смотрел в Olly), но все равно Trial expired. Какие должны быть значения у переменных (ArmServerInfo ,USERKEY ,EXPIRED ) в строковом представлении - ASCIIZ? Может есть и другой метод? Уверен, есть простое решение. ![]() |
|
Создано: 24 октября 2008 15:19 · Личное сообщение · #15 |
|
Создано: 24 октября 2008 16:09 · Личное сообщение · #16 hxxp://rapidshare.de/files/40749008/WMSuiteHomeSetup52.exe.html К сожалению минимальный запускаемый набор - это инсталляшка. Весит ~52 метра. Боюсь, вряд ли кто захочет качать, хотя вещь полезная. exe без dll и data-files не запускается. Я анпакнул wmthme5 с помощью Armageddon v.1.5.1 с default настройками и кинул в его папку ArmAccess.dll из dillo_die. Получил рабочий дамп, но trial expired из-за неустановленных environment variables. Их установка по методу, описанному выше (я хотел для начала вечный trial без loader-а) не дала результата. ![]() |
|
Создано: 24 октября 2008 20:57 · Поправил: SpoliatoR · Личное сообщение · #17 XoDeR Взял для интереса посмотреть только версию Pro ![]() ![]() А не распаковал сам потому что импорт кривой скорее всего. А простой метод это тебе PE_Kill уже подсказал.... ![]() ![]() |
|
Создано: 24 октября 2008 21:00 · Личное сообщение · #18 XoDeR да великовата прога. самый простой способ который я знаю - это применить патчер (ссылка выше). схема такая- нужно зациклить прогу сразу после того crc будет пофиксен. в стеке будет адрес возврата в армовую dll. далее нужно отцепить папу от процесса - например с помощью deattacher (есть такая утилита). После этого приаттачиться Olly и проползти по этой dll - записывая где и что нужно пропатчить. Результат ползания переносится в патч и далее Armagedon. Возможно потом и в распакованном файле нужно будет что-нить поправить ![]() |
|
Создано: 24 октября 2008 21:16 · Личное сообщение · #19 r99 Че то как то сложно ![]() Не проще ли распаковать руками, взять ArmaDetach востановить импорт, исправить его, получить дамп. Поставить бряк GetEnvironmentVariableA и по возврату в код посмотреть чего же там происходит ? Там всего то JNE 2 раза поменять потому как в armaccess последние два вызова не возвращают значения и MOV AL,1 вогнать. ![]() Но не забывайте что я про Pro говорю. ![]() Я так понимаю человек хочет сам победить Armaхрякера ? ![]() ![]() |
|
Создано: 27 октября 2008 16:17 · Личное сообщение · #20 Господа заслуженые крэкеры! Для меня описанные вами методы не есть сразу понятны с полуслова. Это первая моя работа с вредным зверем Armadillo, до этого был только unpackme (armadillo). С распаковкой проблем нет, проблемы с установой environment variables (или с правильной их "проверкой"). Я перерыл все похожие топики здесь и на tuts4you + кучу tutorials, про EV упоминается лишь вскользь и без никаккой ясности. Следуя данным наводкам по bp GetEnvironmentVariableA, отследил EXPIRED, но добился лишь частичной имитации вечного trial: при нажатии на Close после выбора continue trial вылетает: Error/Initialization Error/Unable to load program/ There was a registration error. Думаю регистрация заключается не в expired, а в USERKEY, ALTUSERNAME. еще на тутсе говорят нужно патчить armaccell.dll, чтобы CheckKey и VerifyKey всегда возвращали 1 (mov eax,1 retn). Просветите так ли это. Буду премного благодарен за сэкономленное время, а то чувствую самому мне еще долго копаться придется (в одном из форумов vel говорил: неделю долбаться с EV для начинающего). ![]() |
|
Создано: 29 октября 2008 12:28 · Личное сообщение · #21 |
|
Создано: 30 октября 2008 00:06 · Личное сообщение · #22 XoDeR Посмотрел. Весь секос в том, что тебе EV тебе в данном случае не нужен. Посмотри внимательно код. ![]() armaccess.dll в данном случае нужен и отвязывать его не нужно.Насколько я понял ты получаешь сообщение об окончании триального срока и дальше хода нет ? Внимательно трассируй код и думаю ты увидишь в чем причина. ![]() |
|
Создано: 31 октября 2008 22:24 · Личное сообщение · #23 |
|
Создано: 15 февраля 2009 23:17 · Личное сообщение · #24 Снимите кто-нибудь корректно эту гадость dump.ru/file/1547678 ArmaFP 1.8 <------- 15-02-2009 21:15:47 -------> C:\Programme\ActiveURLs\Check&Get\Check&Get.exe !- Protected Armadillo Protection system (Basic) !- <Protection Options> Standard protection or Minimum protection !- <Backup Key Options> Fixed Backup Keys !- <Compression Options> Best/Slowest Compression !- <Other Options> 00000000 Version X.X 01-01-1970 Arma Intruder 0.4 Armadillo version: 3.78 Build date: 2004-09-22 01:22:33 OEP VA: 0093ACF0 Raw options: 00034842 -=Protection=- Standard or Minimum protection. -=Miscellaneous=- Basic version. Compression: maximum (zlib level 7). ----- z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh ![]() |
|
Создано: 16 февраля 2009 11:05 · Личное сообщение · #25 |
|
Создано: 16 февраля 2009 11:50 · Личное сообщение · #26 |
|
Создано: 19 февраля 2009 14:29 · Личное сообщение · #27 |
|
Создано: 19 февраля 2009 15:45 · Личное сообщение · #28 |
|
Создано: 24 февраля 2009 10:42 · Личное сообщение · #29 |
|
Создано: 24 февраля 2009 18:35 · Личное сообщение · #30 |
![]() |
eXeL@B —› Вопросы новичков —› Несговорчивый Armadillo |