Перейти к содержанию

Korol2010

Пользователи+
  • Постов

    281
  • Зарегистрирован

  • Посещение

  • Победитель дней

    3

Весь контент Korol2010

  1. Блин, слушайте, какие бы я смещения не пробовал делать как бы не сравнивал, всё без толку(( Я уже перепробовал с пару десятков смещений, всё бесполезно, либо работает так же глючно, либо вообще не работает. Что делать уже хз. Возможно есть ещё у кого - нибудь идеи как это исправить?
  2. Парни, слушайте всё это просто гуд, и так я сделал, но вот в 1 игре нужно искать рабочее смещение очень долго, не знаю вообще реально ли найти. Я бы хотел узнать, а возможно ли как-то обойтись без анализа структуры, использовать другой способ разделения "свой и чужой"?
  3. вот тебе огромное спасибо, я даже и не думал что это может быть проблема в фильтре. Буду значит искать другое смещение для фильтра)
  4. Я уже пробовал удалять 14 строку, бесполезно. И так же пробовал различно переделывать твой вариант скрипта, 0 толку(( Щас тогда попробую ещё с comiss xmm0,[esi+04] сделать скрипт Попробовал сделать скрипт с предложенной тобой инструкцией - эффект 0, причём не реагирует игра на него вообще никак)) Пробовал так же различно менять скрипт, тоже бесполезно, либо работает криво, либо так же не реагирует. Пробовал применять твои оба варианта скрипта к другим инструкциям, так же 0 эффекта(((
  5. Спасибо тебе большое. Да конечно скрин инструкций выложу, без проблем)) Вот скрин инструкций как просил: https://yadi.sk/i/V6pM08tmbTYBK Попробовал в работе твой скрипт, он вообще не работает, а точнее работает очень странно, здоровье сразу максимальное становится на 0, полоска остаётся всегда целой, а текущее значение на уменьшение реагирует стандартно, при увеличении увеличивается до бесконечности. При попытке мною изменить как-то скрипт, не привело не к чему.
  6. Я делал на читающую инструкцию тоже самое, но эффект был даже хуже чем от этой, правда скрипт был тот же, я его не пробовал менять, да и честно говоря не знаю как(( До этого то еле додумался, спустя 4 дня и 10 часов обще убитого время. Инструкция была если щас вспомнить вроде fld dword ptr [ecx+04] вот оригинальная инъекция читающей инструкции, и ещё 1 читающая, но она не работает с моим написанным скриптом, только первая: [ENABLE]alloc(newmem,2048)label(returnhere)newmem:fld dword ptr [ecx+04]fdiv dword ptr [esp]exit:jmp returnhere"CNC4.game"+2FB324:jmp newmemnopreturnhere: [DISABLE]"CNC4.game"+2FB324:fld dword ptr [ecx+04]fdiv dword ptr [esp]dealloc(newmem)[ENABLE]alloc(newmem,2048)label(returnhere)newmem:fld dword ptr [ecx+04]ret int 3 exit:jmp returnhere"CNC4.game"+245080:jmp newmemreturnhere: [DISABLE]"CNC4.game"+245080:fld dword ptr [ecx+04]ret int 3 dealloc(newmem)Эта выполняется большее кол-во раз, и появляется в списке инструкций раньше первой. Восстановил всё же обе сейчас, всё равно это минутное дело))
  7. Привет читателям и профи!)) У меня возникли проблемы со взломом данной игры. Проблема заключается в том, что я нашёл инструкцию для здоровья, на сколько я на данный момент понял, не совсем рабочею, скрипт как бы вроде и допёр как написать (за несколько дней правда ), я сделал бесконечное здоровье для юнитов и вроде для зданий, но оно работает не совсем правильно. Оно, если можно так сказать имеет эффект заморозки, а не записи значения в память по средством моего скрипта. Я пришёл к этому выводу потому, что значение даже явно визуально не стоит на месте как по идее при инъекции и должно быть, а постоянно обновляется именно как я и говорил ранее, подобно эффекту заморозки просто адреса. И ещё оказалось что при получении разом большого урона юнитом или зданием, значения не обновляются уже мгновенно, а просто стандартно отнимаются, ну и соответственно юнит или здание при получении большого урона просто уничтожается(умирает), хотя при этом это не распространяется на других юнитов, кто даже в это же время получает стандартно маленький, урон например от войск противника (у них жизни опять же "как бы" бесконечны). Вот собственно дорогие профи я и прошу вашей помощи в решении данной проблемы))) Да кстате фильтр соответственно я сделал и он работает. Для решения данной проблемы я уже перепробовал, на мой взгляд, всё, даже пытался внедрять скрипт в другие инструкции получающие доступ или пишущие, всё бесполезно, да и работают более менее только 2 инструкции. Вот кстате одна из них, вторая правда потерялась уже : movss [esi+04],xmm0Вот скрипт который до которого я так долго додумывался (в виду моих слабы знаний ассемблера и геймхакинга): [ENABLE]alloc(newMem, 2048)label(returnHere)label(hack)newMem:cmp [esi+50],#1je hackmovss [esi+04],xmm0jmp returnHerehack:push eaxmov eax, [esi+c]mov [esi+04],eaxpop eaxjmp returnHereCNC4.AptTarget::GetNext+54B9E:jmp newMemreturnHere:[DISABLE]CNC4.AptTarget::GetNext+54B9E:movss [esi+04],xmm0dealloc(newMem)Жду вашей помощи. За ранее спасибо вам уважаемые профи)))
  8. Изменил немного дизайн трейнера. Оставляйте отзывы, что лучше, то что было раньше или что есть сейчас. https://yadi.sk/d/q-vIxxP0bL2uQ
  9. спс за отзыв. Только не пойми не правильно, объясни плиз что "прикольно" и зачем загружать таблицу на стороннем ресурсе? ОБНОВЛЕНИЕ ТРЕЙНЕРА: Версия 1.1)) https://yadi.sk/d/EKFzB0WmbGPCJ Бесконечные жизни(НЕ доработаны, но решил выложить пока так, подробности есть в трейнере), бесконечные краулеры, бесконечные очки поддержки. Доработал до более правильной функциональности некоторые старые опции. Исходники добавленных функций: [ENABLE]alloc(newMem, 2048)label(returnHere)label(hack)newMem:cmp [esi+50],#1je hackmovss [esi+04],xmm0jmp returnHerehack:push eaxmov eax, [esi+c]mov [esi+04],eaxpop eaxjmp returnHereCNC4.AptTarget::GetNext+54B9E:jmp newMemreturnHere:[DISABLE]CNC4.AptTarget::GetNext+54B9E:movss [esi+04],xmm0dealloc(newMem)[ENABLE]alloc(newMem, 2048)label(returnHere)label(hack)newMem:cmp [eax+1c34],#2je hackmov eax,[eax+000019F0]jmp returnHerehack:mov [eax+000019F0],#9jmp returnHereCNC4.AptTarget::GetAnimationTarget+56417:jmp newMemnopreturnHere:[DISABLE]CNC4.AptTarget::GetAnimationTarget+56417:mov eax,[eax+000019F0]dealloc(newMem)[ENABLE]alloc(newMem, 2048)label(returnHere)label(hack)newMem:cmp dword ptr [esi+1a4],#2je hackfld dword ptr [esi+38]fcomip st(0),st(1)jmp returnHerehack:mov dword ptr [esi+48],#50push eaxmov eax, dword ptr [esi+48]mov dword ptr [esi+38],eaxpop eaxjmp returnHereCNC4.AptNativeHash::IsEmpty+B9CA8:jmp newMemreturnHere:[DISABLE]CNC4.AptNativeHash::IsEmpty+B9CA8:fld dword ptr [esi+38]fcomip st(0),st(1)dealloc(newMem)
  10. Сегодня обновлю трейнер. Добавил 2 функции. 3 функция ещё в доработке, а именно это бесконечное здоровье юнитов, когда данная функция будет готова сказать точно не могу, т.к. она конфликтует по какой-то причине с некоторыми значениями в игре, и здоровье у юнитов не такое уж и бесконечное. Как только всё исправлю введу эту функцию в трейнер. При дальнейшей работе над трейнером функций будет больше.
  11. Исправил мелкие ошибки в трейнере+добавляю исходники скриптов. https://yadi.sk/d/qh_lGuY8bARkm Исходники: [ENABLE]alloc(newmem,2048)label(returnhere)label(hack)label(exit)newmem:cmp [eax+BE4],0je hackmov ebp,[eax+08]push edimov ecx,ebxjmp returnherehack:mov [eax+08],0push edimov ecx,ebxexit:jmp returnhere"CNC4.game"+56BE39:jmp newmemnopreturnhere:[DISABLE]"CNC4.game"+56BE39:mov ebp,[eax+08]push edimov ecx,ebxdealloc(newmem)
  12. Command&Conquer4: Tiberian Twilight Не знал куда можно пехнуть, решил сюда. Вот оцените работу: Версия игры 1.3. ФУНКЦИИ: NUMPAD 1 - Бесконечная численность армии NUMPAD 2 - Бесконечные очки исследования NUMPAD 3 - Бесконечные постройки NUMPAD 4 - Быстрое поднятие уровня (1оп.=1к) Профи, плиз не ругайтесь, это мой первый, можно сказать, трейнер))) Трейнер будет обновляться. Планы: 10 функций. https://yadi.sk/d/VGmr7BqRb9ydn P.S.: В разделе трейнеры не могу выкладывать. Не даёт(((
  13. ок. только плиз, если не трудно можно написать по каким критериям можно поискать?
  14. Прошу помощи специалистов. Вопрос в том что хочу узнать как можно разделить в инструкции адрес противника и свой, без использования сканера сигнатур, а на прямую в AAScript. Например, одна и та же инструкция отвечает за изменение значения адреса кол-ва войск у противника и у тебя. За ранее спасибо
  15. К сожалению, как оказалось, я не могу выкладывать таблицы в соответствующем разделе форума((( Тогда выкладываю в этой теме.... Warhammer 40k Dawn Of War: Dark Crusade(версия из инфы EXE 1.4, из инфы самой игры 1.11): Скрипт на бесконечные ресурсы (значение обоих ресов установленно как 50000, вы можете по желанию поставить своё значение): [ENABLE] alloc(newmem,2048) label(returnhere) label(hack) //назовите как хотите, у меня названа метка так newmem: cmp [eax+30],(float)7 je hack fstp dword ptr [eax] fld dword ptr [ecx+04] jmp returnhere hack: mov dword ptr [eax],(float)50000 mov dword ptr [eax+04],0 jmp returnhere "WXPMod.dll"+5FB0A: jmp newmem returnhere: [DISABLE] dealloc(newmem) "WXPMod.dll"+5FB0A: fstp dword ptr [eax] fld dword ptr [ecx+04] Скрипт на бесконечную численность вашей армии и техники (автор скрипта Tiger): [ENABLE] aobscan(address, 8B 28 8D 4C 24 28) alloc(newMem, 2048) registersymbol(address) newMem: mov [eax],00 mov [eax+04],00 mov ebp,[eax] lea ecx,[esp+28] ret address: call newMem nop [DISABLE] address: mov ebp,[eax] lea ecx,[esp+28] dealloc(newMem) unregistersymbol(address) Скрипт на мгновенное исследование и подготовку войск в ваших зданиях: [ENABLE] alloc(newmem,2048) label(returnhere) label(exit) newmem: mov [edi+0C],0 mov [edi+10],0 exit: jmp returnhere "WXPMod.dll"+978B7: jmp newmem nop returnhere: [DISABLE] dealloc(newmem) "WXPMod.dll"+978B7: mov [edi+0C],edx mov [edi+10],eax Скрипт на мгновенное исследование и подготовку у ваших отрядов: [ENABLE] alloc(newmem,2048) label(returnhere) label(exit) newmem: mov [eax+08],0 mov [eax+0C],0 exit: jmp returnhere "WXPMod.dll"+C811B: jmp newmem nop returnhere: [DISABLE] dealloc(newmem) "WXPMod.dll"+C811B: mov [eax+08],ecx mov [eax+0C],edx Игра Worms Revolution(версия #0140): Скрипт на бессмертие ваших червей: [ENABLE] alloc(newmem,2048) label(returnhere) label(hack) newmem: cmp [ecx+44],0 je hack mov [ecx+34],eax ret 0004 jmp returnhere hack: mov [ecx+34],#1000 ret 0004 jmp returnhere "WormsRevolution.exe"+4E4984: jmp newmem nop returnhere: [DISABLE] dealloc(newmen) "WormsRevolution.exe"+4E4984: mov [ecx+34],eax ret 0004
  16. Завтра выложу таблицу со скриптом на Worms Revolution? и имеющимися полностью рабочими скриптами на Warhammer))) К стате ресы нашёл сам, различие сделал и фильтр, теперь всё норм. Соответственно на нужный раздел форума, в этой статье не буду выкладывать.
  17. ок большое спс, эта инфа пригодится))) Попробую потом взломаю)
  18. ок, на mov уже к ста заменил))) просто не выложил, хотел исправить, чтоб в минус значение при гибели войск не уходило (не вышло как описывал выше)
  19. ууу не чё се это для меня больно сложновато)))) Частично конечно понял что ты предлагаешь но далеко не до конца, к тому же я не знаю толком что делают функции: aobscan - сканирование определённого массива структуры байтов памяти, если правильно понял; registersymbol - без понятия что такое даже не встречал никогда; pushf - в моём понимании загрузка каких-то флагов в регистры этой инструкции; test - если не ошибаюсь какое-то подобие команды cmp; jne - какой-то переход на определённый лейбол; je - прыжок на лейбол; popf - моё понимание, это выгрузка флагов из памяти регистров этой инструкции; ret - из твоего объяснения понял что делает инъжект всего кода в какую-то строку байтов памяти; int - это инкремент, но командой не пользовыался, так что толком не знаю для чего она; unregistersymbol - судя по началу команды она завершает команду registersymbol. К стате я уже взломал ещё 4 значения и написал скрипты, всего сейчас таблица состоит из 5 скриптов))) НО 2 скрипта немного не доработаны, пытался доработать но не вышло(( Я попробывал в игре твой скрипт, и по мойпу дак разница между моим и твоим только в сложности исполнения))), я конечно ещё много чего не знаю, так что может именно так писать скрипт правильно))) Но на мой взгляд и мой скрипт норм)) Вот скрипты которые удалось сделать за пару часиков (исключая ресурсы): Численность армии не прибавляется (но уменьшается: уходит в минус при гибели юнитов) [ENABLE] alloc(newMem, 2048) label(returnHere) newMem: add [eax],0 add ecx,0 jmp returnHere WXPMod.dll+7B1D8: jmp newMem returnHere: [DISABLE] WXPMod.dll+7B1D8: add [eax],edx mov ecx,[ecx+04] dealloc(newMem) Кол-во техники не прибавляется (+та же проблема что и у армии) [ENABLE] alloc(newmem,2048) label(returnhere) label(exit) newmem: add [eax+04],0 ret 0004 exit: jmp returnhere "WXPMod.dll"+7B1DD: jmp newmem nop returnhere: [DISABLE] dealloc(newmem) "WXPMod.dll"+7B1DD: add [eax+04],ecx ret 0004 //Alt: db 01 48 04 C2 04 00 Мгновенное исследование и подготовка (в зданиях) [ENABLE] alloc(newmem,2048) label(returnhere) label(exit) newmem: mov [edi+0C],0 mov [edi+10],eax exit: jmp returnhere "WXPMod.dll"+978B7: jmp newmem nop returnhere: [DISABLE] dealloc(newmem) "WXPMod.dll"+978B7: mov [edi+0C],edx mov [edi+10],eax //Alt: db 89 57 0C 89 47 10 Мгновенное исследование и подготовка (у юнитов) [ENABLE] alloc(newmem,2048) label(returnhere) label(exit) newmem: mov [eax+08],0 mov [eax+0C],edx exit: jmp returnhere "WXPMod.dll"+C811B: jmp newmem nop returnhere: [DISABLE] dealloc(newmem) "WXPMod.dll"+C811B: mov [eax+08],ecx mov [eax+0C],edx //Alt: db 89 48 08 89 50 0C Ну вот как-то так))) Профессионалам просьба комментировать, поправлять меня и не ругаться я ещё только начинаю знакомится с геймхакингом))))))))
  20. Хочу обрадовать)) Я добился своего и сделал рабочий скрипт. Причём сделал даже лучше, теперь с помощью 1 скрипта, инструкция которого принадлежала "влиянию", устанавливаются значения на какие я захочу и "влияния" и "энергии")))))))))))) Вкладываю как обещал готовый и рабочий скрипт...Версия игры 1.4 как написано в свойствах экзешника. [ENABLE] alloc(newmem,2048) label(returnhere) label(exit) newmem: mov dword ptr [eax],(float)100000 mov dword ptr [eax+04],0 exit: jmp returnhere "WXPMod.dll"+5FB0A: jmp newmem returnhere: [DISABLE] "WXPMod.dll"+5FB0A: fstp dword ptr [eax] fld dword ptr [ecx+04] dealloc(newmem) //Alt: db D9 18 D9 41 04
  21. Вот как просил [ENABLE] alloc(newmem,2048) label(returnhere) label(originalcode) label(exit) newmem: //this is allocated memory, you have read,write,execute access //place your code here originalcode: fstp dword ptr [eax] fld dword ptr [ecx+04] exit: jmp returnhere "WXPMod.dll"+5FB0A: jmp newmem returnhere: [DISABLE] "WXPMod.dll"+5FB0A: fstp dword ptr [eax] fld dword ptr [ecx+04] //Alt: db D9 18 D9 41 04
  22. Аааа ты про это. Ну это не проблема выложу. За луа спс пригодится:-)
  23. У меня тип тоже (float). Скрипт оригинальной инструкции я выложил полный. На доступ я смотрел что есть, но толком ничего не понял из-за малых знаний ассемблера. Да и сравнивать тоже пробывал, игра не реагировала. НО так как ты написал, так не делал, опять же из-за малых знаний ассемблера, функции некоторые которые ты сейчас представил я не знаю. Я читал книгу обучения ассемблеру лишь самую начальную))) И там некоторых функций не было описано. А вообще из инструкций которые имеют доступ к этой моей инструкции я понял (если конечно правильно), что 1 адрес отвечает и за "влияние" и за "энергию". Спасибо за предоставленную подсказку, попробую покопаться, может что-то получится) Если что-то у меня получится выложу скрипт в этой теме. Чёт не получилось ничего, игра на то что ты мне дал и на команду сравнения не реагирует вообще. Вроде делал всё правильно
  24. Здравствуйте. Я прошу помощи по взлому. Никак не могу внедрить своё значение ресурсов в код игры, посредством инъекции кода. Пробовал писать скрипт ,применяя свои небольшие знания ассемблера, различными способами, ничего не вышло, что я только не делал... Я и внедрял свою переменную, и регистр менял в оригинальном коде, и внедрял свои значения в оригинальные регистры с помощью команды MOV, и т.д., ничего не получалось(((( Значение к примеру первого ресурса, влияния, при его изменении в скрипте перескакивало в значение энергии, а влияние обнулялась полностью и вообще более не работало (восстанавливал оригинальный код потом соответственно и игрался с инструкцией дальше). Вот вообщем сама оригинальная инструкция... alloc(newmem,2048) label(returnhere) label(originalcode) label(exit) newmem: originalcode: fstp dword ptr [eax] fld dword ptr [ecx+04] exit: jmp returnhere "WXPMod.dll"+5FB0A: jmp newmem returnhere: Ну вроде описал как мог доходчиво. P.S. Указатели не искал, т.к. не мог их вообще найди, значения найденых адресов при изменении значения в игре просто пропадали. Пожалуйста помогите))) Жду вашей помощи.)
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.