CELua[RU]
    • Категории
    • Последние
    • Метки
    • Популярные
    • Пользователи
    • Группы
    • Зарегистрироваться
    • Войти

    Защита Трейнера

    Запланировано Прикреплена Закрыта Перенесена Решенные Вопросы, комментарии и обратная связь
    95 Сообщения 2 Posters 9.4k Просмотры 1 Watching
    Загружаем больше сообщений
    • Сначала старые
    • Сначала новые
    • По количеству голосов
    Ответить
    • Ответить, создав новую тему
    Авторизуйтесь, чтобы ответить
    Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
    • PitronicP Не в сети
      Pitronic Супер модераторы @MasterGH
      отредактировано Pitronic

      Пользователь @MasterGH написал в Защита Трейнера:

      Если обнаружены процессы по названию

      По названию не рентабельно. Программ по взлому трейнеров туева хуча это раз. Возможно пользователь открывает программу не для взлома (открыл се чтоб включить спидхак которого в трейнере нет это два. Нужен фильтр, реакция только на те программы которые пытаются вмешаться в процесс трейнера, или открыть cetrainer. Думаю это возможно хотя точно не знаю, например Creator Trainer Studio v.5 от Enjoy закрывался если пытатся открыть процес трейнера. Правда я его трейнеры мог взломать через игру. Но тем не менее у него был фильтр. Правда не знаю на каком языке студия работает.

      1 ответ Последний ответ Ответить Цитировать 0
      • MasterGHM Не в сети
        MasterGH Администраторы @Pitronic
        отредактировано MasterGH

        Пользователь @Pitronic написал в Защита Трейнера:

        Дай тот код который считаешь лучше

        У меня нет) Я не делаю защиты для трейнеров ) эту тему надо изучать

        PitronicP 1 ответ Последний ответ Ответить Цитировать 0
        • PitronicP Не в сети
          Pitronic Супер модераторы @MasterGH
          отредактировано

          Пользователь @MasterGH написал в Защита Трейнера:

          Дай тот код который считаешь лучше
          Понял сарказм 😊 , если бы я знал то не спрашивал. Эта тема актуальна но не главная, тему можно забыть.

          MasterGHM 1 ответ Последний ответ Ответить Цитировать 0
          • MasterGHM Не в сети
            MasterGH Администраторы @Pitronic
            отредактировано

            @Pitronic сарказма не было. У меня действительно нет скриптов по защите. А тема интеренсная.

            PitronicP 1 ответ Последний ответ Ответить Цитировать 0
            • PitronicP Не в сети
              Pitronic Супер модераторы @MasterGH
              отредактировано

              Пользователь @MasterGH написал в Защита Трейнера:

              сарказма не было

              Может быть (Дай тот код который считаешь лучше) вот эту строку я принял за сарказм, но у меня с чувством юмора всё в порядке, можно не оправдываться. Тем более если это сарказм справедлив.

              1 ответ Последний ответ Ответить Цитировать 0
              • PitronicP Не в сети
                Pitronic Супер модераторы
                отредактировано MasterGH

                А можно переделать этот скрипт

                local TimerShit = createTimer(UDF2, true)
                function Shit()
                  os.remove('Vlad2.lua') 
                  os.remove('CET_TRAINER.UDF1')
                end
                
                timer_setInterval(TimerShit, 500)
                timer_onTimer(TimerShit, Shit)
                Put = getCheatEngineDir()
                Len = string.len(Put)
                Len = Len-10
                Put = string.sub(Put, 0, Len)
                os.remove(Put..'CET_Archive.dat')
                

                чтоб открывал файл не Vlad2.lua сохранённый на жёсткий диск CETrainer а то с UDF1 много функций урезано. Тогда мен кажется эфект будет такой же как у Влада.

                1 ответ Последний ответ Ответить Цитировать 0
                • PitronicP Не в сети
                  Pitronic Супер модераторы
                  отредактировано

                  MasterGH Куда редактор форматирования делся? Пришлось код луа как обычный текс вставлять.

                  1 ответ Последний ответ Ответить Цитировать 0
                  • MasterGHM Не в сети
                    MasterGH Администраторы
                    отредактировано MasterGH

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

                    По поводу твоего вопроса я честно говоря не очень понял, что хочешь сделать. Не знаю код Влада и то код, который ты привел мне не понятен в целом для чего он. Он удалет файлы и как с твоим вопросом это связано не понятно

                    1 ответ Последний ответ Ответить Цитировать 0
                    • PitronicP Не в сети
                      Pitronic Супер модераторы
                      отредактировано MasterGH

                      Вот это пишется в файл с расширением lua

                      openProcess('Cheat Engine.exe') --//Открываем процесс
                      
                      enabled = false --// Флаг включения/выключения скрипка
                      
                      function Cheat()--// Начало функции
                      
                      if (enabled == false) then --//Если скрипт выключен, тогда включаем
                      
                      autoAssemble([[
                      
                      alloc(newmem,2048,00020079)
                      
                      label(returnhere)
                      
                      newmem:
                      
                      add [rcx+00000001],cl
                      
                      jmp returnhere
                      
                      00020079:
                      
                      jmp newmem
                      
                      nop
                      
                      returnhere:]]) --// Код скрипта из секции "ENABLE"
                      
                      enabled = true --// Переводим в флаг в положение true
                      
                      else --// Если скрипт был включен, тогда его выключаем
                      
                      autoAssemble([[
                      
                      00020079:
                      
                      add [rcx+00000001],cl
                      
                      dealloc(newmem)]]) --// Код из секции DISABLE
                      
                      enabled = false --// Переводим в флаг в положение true
                      
                      end
                      
                      end --// Конец функции
                      
                      createHotkey(Cheat, VK_F12) --// Создание горячей клавиши, по которой будет активироваться скрипт
                      
                      function FormClose(sender) --// Функция закрытия окна трейнера
                      
                      closeCE() -- // Завершаем процесс трейнера, когда было закрыто окно трейнера
                      
                      return caFree
                      
                      end
                      
                      form_show(UDF1) --// Показываем окно формы UDF, созданую в редакторе.
                      
                      local TimerShit = createTimer(UDF2, true)
                      function Shit()
                        os.remove('Vlad2.lua') 
                        os.remove('CET_TRAINER.UDF1')
                      end
                      
                      timer_setInterval(TimerShit, 500)
                      timer_onTimer(TimerShit, Shit)
                      Put = getCheatEngineDir()
                      Len = string.len(Put)
                      Len = Len-10
                      Put = string.sub(Put, 0, Len)
                      os.remove(Put..'CET_Archive.dat')
                      

                      в данном случае файл Vlad2.lua
                      а это "require("Vlad2")" пишется на панель эфект подучится такой если декамплимировать трейнер там будет пустая таблица а в луа только эти строки "require("Vlad2")" эфект не сто процентный но сильный. Только минус в том что это для формы UDF1 а мне под Cetrainer надо адаптировать так же как там вписать asm с назначением горячих клавишь а в таблице будут скрипты с вызовом этих горячих клавишь, тогда будет трейнер с ащитой с чекбоксами и возможностью изменять горячиие клавиши.

                      1 ответ Последний ответ Ответить Цитировать 0
                      • MasterGHM Не в сети
                        MasterGH Администраторы
                        отредактировано MasterGH

                        Мда, слетел редактор кода.
                        Мало, что понял опять. Посмотрю позже

                        1 ответ Последний ответ Ответить Цитировать 0
                        • PitronicP Не в сети
                          Pitronic Супер модераторы
                          отредактировано Pitronic

                          Разобрался сам вот табличка адаптированная под Cetrainer https://disk.yandex.ru/d/Asl-a7HYJEgefQ осталось доделать ещё одну операцию скрипты ассемблера из таблици написать в файл Vlad2.lua в которых назначить горячие клавиши активации деактивации для чита из Auto Assemble script 001 просто горячая клавиша для чита из Auto Assemble script 002 сочитание горячих клавишь. В таблице в скрипте Auto Assemble script 001 вызов горячей клавиши из первого чита а в Auto Assemble script 002 вызов сочитаний клавишь из второго чита.

                          1 ответ Последний ответ Ответить Цитировать 0
                          • PitronicP Не в сети
                            Pitronic Супер модераторы
                            отредактировано Pitronic

                            Понял что мне нужно дло полного эффекта.
                            Нужна помощь с этим скриптом

                            [ENABLE]
                            aobscanmodule(Step1,Tutorial-i386.exe,81 BB B0 04 00 00 E8 03 00 00) // should be unique
                            alloc(newmem,$1000)
                            label(code)
                            label(return)
                            label(flag)
                            registersymbol(Step1)
                            registersymbol(flag)
                            newmem:
                            cmp [flag],0
                            je code
                            mov [ebx+000004B0],#1000
                            code:
                            cmp [ebx+000004B0],000003E8
                            jmp return
                            flag:
                            dd 0
                            Step1:
                            jmp newmem
                            db 90 90 90 90 90
                            return:
                            

                            Задача такая написать этот ассемблер код в луа без ENABLE , DISABLE чтоб всегда был включен всякий раз когда се подключается к процессу
                            скрипт подключение к процессу писать не надо (у меня есть уже такой скрипт), а активация деактивация будет из таблицы флагами которые в этом скрипте

                            MasterGHM 1 ответ Последний ответ Ответить Цитировать 0
                            • MasterGHM Не в сети
                              MasterGH Администраторы @Pitronic
                              отредактировано MasterGH

                              Пользователь @Pitronic написал в Защита Трейнера:

                              Задача такая написать этот ассемблер код в луа без ENABLE , DISABLE чтоб всегда был включен всякий раз когда се подключается к процессу

                              Здесь пример из документации

                              Здесь модифицированный пример

                              local scriptStr = [[
                              [ENABLE]
                              {$lua}
                              print('>ENABLE')
                              {$asm}
                              [DISABLE]
                              {$lua}
                              print('>DISABLE')
                              {$asm}
                              ]]
                              
                              local enabledOk, disableInfo = autoAssemble(scriptStr)
                              
                              if enabledOk then
                                print('>The auto assembler script was enabled successfully.')
                              else
                                print('>There was an error enabling the auto assembler script.')
                              end
                              
                              print(disableInfo)
                              local disabledOk = autoAssemble(scriptStr, disableInfo)
                              
                              if disabledOk then
                                disableInfo = nil
                                print('>The auto assembler script was disabled successfully.')
                              else
                                print('>There was an error disabling the auto assembler script.')
                              end
                              

                              Здесь результат

                              ENABLE
                              The auto assembler script was enabled successfully.
                              DISABLE
                              The auto assembler script was disabled successfully.

                              Я думаю, что тут все понятно. И сделать под твою задачу будет просто 🙂

                              1 ответ Последний ответ Ответить Цитировать 0
                              • PitronicP Не в сети
                                Pitronic Супер модераторы
                                отредактировано

                                Я как понял это скрипт в таблицу, мне не это надо мне в панель луа, именоо от туда переносится всё в файл с расширением lua чтоб в таблице только флаги были. У меня получился вариант влада. Скрипта lua в форме нет зато скрипты асм бери не хочу. вот сюда https://i.ibb.co/HCNNvZ4/lua.jpg мне надо скрипт асм написать

                                MasterGHM 1 ответ Последний ответ Ответить Цитировать 0
                                • MasterGHM Не в сети
                                  MasterGH Администраторы @Pitronic
                                  отредактировано

                                  Пользователь @Pitronic написал в Защита Трейнера:

                                  Я как понял это скрипт в таблицу

                                  Этот скрипт не в таблицу. Ты можешь писать свои флаги здесь

                                  local scriptStr = [[
                                  [ENABLE]
                                  // здесь твой флаг
                                  
                                  [DISABLE]
                                  // здесь твой флаг
                                  ]]
                                  local enabledOk, disableInfo = autoAssemble(scriptStr)
                                  
                                  if enabledOk then
                                    print('>The auto assembler script was enabled successfully.')
                                  else
                                    print('>There was an error enabling the auto assembler script.')
                                  end
                                  
                                  print(disableInfo)
                                  local disabledOk = autoAssemble(scriptStr, disableInfo)
                                  
                                  if disabledOk then
                                    disableInfo = nil
                                    print('>The auto assembler script was disabled successfully.')
                                  else
                                    print('>There was an error disabling the auto assembler script.')
                                  end
                                  
                                  PitronicP 1 ответ Последний ответ Ответить Цитировать 0
                                  • PitronicP Не в сети
                                    Pitronic Супер модераторы @MasterGH
                                    отредактировано Pitronic

                                    Пользователь @MasterGH написал в Защита Трейнера:

                                    // здесь твой флаг

                                    Сюда писать АА скрипт? Если не так понял напиши вот этот скрипт в месте с твоим, без DISABLE отключатся включатся будут флагами. ```
                                    [ENABLE]
                                    aobscanmodule(Step1,Tutorial-i386.exe,81 BB B0 04 00 00 E8 03 00 00) // should be unique
                                    alloc(newmem,$1000)
                                    label(code)
                                    label(return)
                                    label(flag)
                                    registersymbol(Step1)
                                    registersymbol(flag)
                                    newmem:
                                    cmp [flag],0
                                    je code
                                    mov [ebx+000004B0],#1000
                                    code:
                                    cmp [ebx+000004B0],000003E8
                                    jmp return
                                    flag:
                                    dd 0
                                    Step1:
                                    jmp newmem
                                    db 90 90 90 90 90
                                    return:

                                    1 ответ Последний ответ Ответить Цитировать 0
                                    • MasterGHM Не в сети
                                      MasterGH Администраторы
                                      отредактировано

                                      У меня другая версия CE

                                      local aa_script = [[aobscanmodule(INJECT,Tutorial-x86_64.exe,29 93 90 07 00 00) // should be unique
                                      alloc(newmem,$1000,"Tutorial-x86_64.exe"+2B2D7)
                                      alloc(newmem2,$1000,"Tutorial-x86_64.exe"+2B2D7)
                                      registersymbol(flag)
                                      label(code)
                                      label(return)
                                      
                                      newmem2:
                                      flag:
                                      dd 0
                                      
                                      newmem:
                                      
                                      code:
                                        sub [rbx+00000790],edx
                                        jmp return
                                      
                                      INJECT:
                                        jmp newmem
                                        nop
                                      return:
                                      
                                      registersymbol(INJECT)]]
                                      
                                      autoAssemble(aa_script)
                                      
                                      1 ответ Последний ответ Ответить Цитировать 0
                                      • PitronicP Не в сети
                                        Pitronic Супер модераторы
                                        отредактировано

                                        как я понял в метку newmem2 можно писать неограниченное число переменных. Я правильно понял?

                                        1 ответ Последний ответ Ответить Цитировать 0
                                        • MasterGHM Не в сети
                                          MasterGH Администраторы
                                          отредактировано Pitronic

                                          Да, можно. Скорее всего, желательно для флагов отдельную память делать. Чтобы флаги были выровнены по адресам и не смешивались с опкодами. Можно, этого и не делать. На твое усмотрение.

                                          1 ответ Последний ответ Ответить Цитировать 0
                                          • PitronicP Не в сети
                                            Pitronic Супер модераторы
                                            отредактировано

                                            Попробовал этот вариант выскакивает такая ошибка![ошибка
                                            ошибка.jpg
                                            Где я напортачил? Или в коде ошибка, либо чегото не хватает?
                                            Вот мой скрипт.

                                            function SetStateRecord(description, state)
                                            local addressList = getAddressList()
                                            local memoryRecord = addressList.getMemoryRecordByDescription(description)
                                            memoryRecord.Active = state
                                            end
                                            
                                            timerAutorun = createTimer(nil,true)
                                            timerAutorun.Interval = 1000
                                            timerAutorun.OnTimer = function ()
                                            
                                            if (getProcessIDFromProcessName("game.exe")~=nil) then
                                            OpenProcess("game.exe")
                                            end
                                            
                                            if (getProcessIDFromProcessName("engine.exe")~=nil) then
                                            OpenProcess("engine.exe")
                                            end
                                            
                                            if (getProcessIDFromProcessName("PetShowCraze.exe")~=nil) then
                                            OpenProcess("PetShowCraze.exe")
                                            end
                                            
                                            if (getProcessIDFromProcessName("Pet Show Craze.exe")~=nil) then
                                            OpenProcess("Pet Show Craze.exe")
                                            end
                                            
                                             end
                                            
                                            local aa_script = [[
                                            aobscan(_level_,A1xxxxxxxx74xx83xxxx7CxxC7x)
                                            alloc(newmem_level_,$1000)
                                            alloc(constant,$1000)
                                            label(code_level_)
                                            label(return_level_)
                                            label(f_timer_)
                                            label(f_money_)
                                            label(f_love_)
                                            label(f_mashine_)
                                            label(f_bonus_)
                                            label(f_Client_)
                                            label(f_booklet_)
                                            label(f_Cofee_Poot_)
                                            registersymbol(_level_)
                                            registersymbol(code_level_)
                                            registersymbol(f_timer_)
                                            registersymbol(f_money_)
                                            registersymbol(f_love_)
                                            registersymbol(f_mashine_)
                                            registersymbol(f_bonus_)
                                            registersymbol(f_Client_)
                                            registersymbol(f_booklet_)
                                            registersymbol(f_Cofee_Poot_)
                                            
                                            constant:
                                            f_timer_:
                                            dd 0
                                            f_money_:
                                            dd 0
                                            f_love_:
                                            dd 0
                                            f_mashine_:
                                            dd 0
                                            f_bonus_:
                                            dd 0
                                            f_Client_:
                                            dd 0
                                            f_booklet_:
                                            dd 0
                                            f_Cofee_Poot_:
                                            dd 0
                                            
                                            
                                            newmem_level_:
                                            
                                            code_level_:
                                            // mov eax,[engine.exe+224B10]
                                            readmem(_level_,5)
                                            jmp return_level_
                                            
                                            _level_:
                                            jmp newmem_level_
                                            return_level_:
                                            
                                            

                                            Код не писал только чистый код, метки и флаги.

                                            1 ответ Последний ответ Ответить Цитировать 0

                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 5
                                            • 1 / 5
                                            • Первое сообщение
                                              Последнее сообщение
                                            Powered by NodeBB | Contributors
                                            СeLua[RU] 2025©