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

krocki

Разработчики
  • Постов

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

  • Посещение

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

    110

Сообщения, опубликованные krocki

  1. Есть одна авантюра! Работать будет или не будет не знаю.

    Как я понял эта инструкция работает при наведении на врага эта: 004BB349 - fld dword ptr [esi+3C9]

    Инструкция отвечающая за жизней врагов - это как я понял эта: 00431C60 - mov byte ptr [esi+78],18

    Если требуется фильтр...подставь сам!

    Примерно вот такой скриптик: :-D

     

    [ENABLE]
    alloc
    (newmem,64)
    label(returnhere)

    newmem:

    mov byte ptr [esi+78],00    //Тут ставишь нужное значение жизней для врага, при наведении на него.

    fld dword ptr [esi+3C9]
    jmp
    returnhere

    The Fate.exe+4BB349:
    jmp newmem

    nop                                   //Сколько nop'ов нужно инструкции для затирания я точно не знаю, тебе видней.
    returnhere:

    [DISABLE]
    dealloc
    (newmem)

    The Fate.exe+4BB349:

    fld dword ptr [esi+3C9]

  2. Для тех кто не знает можно записать фильтр вот так:

    Бывает так что в некоторых играх не всё смещение/адреса меняется в регистрах, только часть его...

    например 3-4 байта меняется, а остальные 2 или 1 остаются неизменным.

    Вот здесь нам и понадобятся для написания фильтра ax или al.

    cmp eax,00000000 - Проверка смещения на 4 байта.

    cmp ax,0000 - Проверка смещения на 2 байта.

    cmp al, 00 - Проверка смещения на 1 байт.

    Так можно использовать только регистры eax,ebx,ecx и edx.

    • Плюс 1
  3. Может это не хак, а мод для игры, где меняются в файле игры настройки, спрайты и прочее как дополнение.

    Думаю что CE такое проделать будет не реально...

    Если такое только не предусмотрено в самой игре, только тогда можно сделать хак. :sleep:

  4. Понятно! Значит по одной инструкции работают адрес(а) твои и ботов тоже...

    Знаю 3 варианта как отфильтровать...

    1: Найти многоуровневый указатель.

    2: Анализ данных/структур.

    3: Использовать регистры со смещениями.

  5. Это просто был пример...согласись что все варианты взлома лучше проверить, что бы найти один верный.

    Попробуй такой вариант для разнообразия:

    Тупо занопить код в самой EXE'ке, при помощи НЕХ-Редактора, а не в отладчике и скрипте. :closeyes:

    Что бы знать уж на верника!

  6. Как сказал Garik66 попробуй поставить фильтр, ну или используй другую инструкцию бряк на чтение или запись...навернека там не одна инструкция работает с адресом денег, ну или попробуй использовать инструкции чуть выше над брякнутой.

  7. Защита! Есть такое! Не знаю насчёт Assassin'ах но вот.

    Пример:

    Мне недавно попалась игра DOA5LR...защита была при патчинге игры в EXE'ку.

    То есть защиту не разрабы установили, а именно тот кто делал кряк от (RELOADED)

    Долго не мог понять в чём дело...позже до меня дошло попробовать скачать другой кряк от (DeZoMoR4iN)

    И сразу всё запахало...

    И ещё в последнее время заметил что крякеры - EXE'ки режут их размер до неузнаваемости,

    даже парой в отладчике смещения бряков разные, если их сравнивать в НЕХ'е. Ладно ещё разрабы так делают,

    но что бы крякеры...это уже слишком.

  8. Игры щас нету у меня...но обычно хватает для поиска 2 байта...

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

    что бы значение изменилось, и только тогда отсеивать на уменьшилось...всё таки все игры разные. :sleep:

  9. Ну так я и понял что это и происходит.

    Походу UCP сканирует все запущенные процессы в винде и если обнаружевает сканер памяти,

    ну или что-то подобное для взлома игр, даёт сразу экран смерти "BSOD"

    Ладно...как говорится, не проверишь, не узнаешь.

  10. Уже пробовал...даже на другом компе проверял...результат тот-же. %)

    Если неверите можете сами попробовать, если у вас есть контра с ucp v8.3.

    Ладно...посути я не пытаюсь и не пытался взломать эту контру...просто с

    такой фигнёй случайно столкнулся в первые, вот и решил расказать, если кому интересно. :sleep:

  11. Причём здесь настройки, если я просто запускаю/открываю CE невыбирая процесс игры даже...просто тупо открыть программу CE.

    при этом у меня сходу экран смерти, если у меня запущена CS1.6_UCP 8.3 не важно где в меню или в самой игре.

    Сбрасывал настройки и выбирал другой отладчик...всё ровно экран смерти выдаёт.

    Видимо это защита от CE такая, типа экран смерти.

  12. RockHamer Не совсем я тебя понял что ты имел ввиду.

    По отдельности запускаешь всё нормально CE или контру, всё работает...

    UCP походу видит процесс CE и сразу вылетает синий экран смерти "BSOD".

    Ладно бы просто ошибку выдавал, но нет...сразу конец всему.

    На другом компе проверил...тоже самое.

    6-7 раз комп свой перезагружал для полной достоверности.

    Даже старая версия CE 5.5_5.6, такой-же результат даёт "BSOD" и всё.

  13. Ухты! Очень интересно...

    Думаю без атаки на сервак...сложно/нереально будет что-то сделать...всё-же спасибо MasterGH  :-D

     

    Кстати тут такой прикол вышел у меня...заранее прошу прощения если что.

    Играл в CS1.6_UCP_8.3 в окне 640x480...решил тупо открыть Cheat Engine и тут синий экран смерти...

    Ладно! перезагрузил комп...открыл сначала Cheat Engine, а потом запустил контру и бах опять экран смерти.

    Признаюсь! даже не пытался что то там хакнуть в контре, а тупо открыл скрипт от другой игры просто хотел

    поправить скрипт который делал для Residen Evil: Revelation 2, а тут такое.

    Походу UСP сделала такую защиту, что даже запустив прогу Cheat Engine...и приходит конец всему сразу.

    Дааа-уж!!! Нет слов.

    NullAlex: красный цвет может использовать только администрация.
  14. В скрипте этот указатель [[["metro.exe"+00D012D0]+448]+27]+10 приходиться выключать/ключать скрипт при переходе на другой уровень. %) А вот этот у MasterGH'а нормальный указатель для скрипта...лично мне он больше нравится. :-D

     

    push eax

    mov eax,["metro.exe"+00D012D0]

    mov eax, [eax+448]

    mov eax, [eax+27]

    mov eax, [eax+10]

    mov [rsi+00000448],eax

    pop eax

  15. Попробуй найти фильтр другим способом. Если анализ данных/структур не помогает.

    Делай по аналогии.

     

    Образец:

    -------------------------------------------

    Дополнительная информация

     

    12345678 - test eax,eax

    12345678 - mov [ebx,edx]

    12345678 - mov [esi+16A8],eax

    12345678 - mov [esi+16AC],eax

    12345678 - push ebx

     

    copy memory

    Вероятное значение указателя: 00351028

     

     

    EAX=000000FF      EDX=00000012     EBP=FFFFFFFA

    EBX=45856F10      ESI=00351028       ESP=0088914A

    ECX=FF88AA21     EDI=006DD720      EIP=12345678

     

    Выше приведены знач. регистров после выполнения инструкции

    --------------------------------------------------------------------------------------

    Берём только SI, и часть адреса два байта 1028, ну с остальными так же можно.

    Только не используй IP (EBP), это смещение к нашему (общему) коду.

    Если хотим использовать 1 байт, то можно использовать четыре рег. AL, BL, CL или DL.

     

    И прописываем в скрипте.

     

     

    Типо так:

     

    [ENABLE]

    Alloc(newmem,128)
    Label(returnhere)
    Label(originalcode)
    Label(сode)
     
    newmem:

    cmp si,1028                              // 1028 - Кусок адреса.

    je code

    jmp originalcode:

     

    code:

    mov word ptr [esi+B8],270F     // Добавляем всем своим 9999-жизней.

    jmp returnhere                        // Можно попробовать и без неё, если не сработает скрипт или ошибка.

     

    originalcode:
    comiss xmm0,[esi+B8]
    jmp returnhere
     
    GAME.EXE+12345678:
    jmp newmem
    nop
    nop
    returnhere:
     
    [DISABLE]
    Dealloc(newmem)
    GAME.EXE+12345678:
    comiss xmm0,[esi+B8]
     
    Да...а ты пробовал найти указатель.
    Помню на GTA3 игру, был один уникальный указатель на урон, который работал на все машины в которых я залазил.
    Может здесь то же такой есть!
    • Плюс 1
  16. Делай по аналогии и включи смекалку.

    Например как сделать, что бы при старте игры было тебе нужное оружие в контре.

    1: Находишь адрес значения оружия в игре, например S = 3 - значениям.

    2: Кидаешь адрес в отладчик, далее делаешь сброс игры в эмуле и смотри где срабатывает бряк и анализируй код.

    То есть не только где сработал бряк, но и вверх по коду надо тоже анализировать (Что там и как).

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

    Варианты взломов игр бывают разные:

    Есть инструкции которые работают на чтение, другие на запись и загрузка кода при запуске игры.

    В общем всё это вопрос логики, нужно сначала подумать как к этому подойти, прежде чем ломать игру.

    Для начинающих GH'ов, это как раз то что нужно.

×
×
  • Создать...

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

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