Перейти к содержимому

Безопасна ли таблица Cheat Engine (Cheat Table)? Как проверить файл .CT перед использованием

Cheat-Engine.net Автор: Cheat-Engine.net 8 мин чтения 37 просмотров

Файл .CT — это обычный XML, но он может содержать скрипты Lua и Auto Assembler, а также встроенные файлы. Узнайте, на что обращать внимание, какие функции требуют осторожности и как заранее проверить таблицу.

Таблица Cheat Engine (Cheat Table) — это небольшой текстовый файл, поэтому легко решить, что она не может навредить. Пока она лежит на диске, это в основном так. Но после загрузки в Cheat Engine таблица может выполнять код, а этот код работает с теми же правами, что и Cheat Engine. Большинство таблиц из открытого доступа именно то, чем их называют, но гарантировать это для файла, который вы не читали, никто не может. В этом руководстве вы узнаете, что может содержать таблица, на какие части стоит посмотреть внимательнее и как проверить таблицу перед использованием.

Что такое файл .CT

Файл .CT — это XML: структурированный простой текст, который можно открыть в любом текстовом редакторе. Минимальная таблица выглядит примерно так:

<CheatTable CheatEngineTableVersion="45">
  <CheatEntries>
    <CheatEntry>
      <ID>0</ID>
      <Description>"Gold"</Description>
      <VariableType>4 Bytes</VariableType>
      <Address>"game.exe"+01A2B3C0</Address>
      <Offsets>
        <Offset>18</Offset>
        <Offset>10</Offset>
      </Offsets>
    </CheatEntry>
  </CheatEntries>
</CheatTable>

Открытие таблицы в текстовом редакторе или в нашем онлайн-просмотрщике CT, который работает целиком в вашем браузере, ничего не запускает. Проверять таблицу таким способом всегда безвредно.

Что может содержать таблица

  • Записи значений и указателей. Адрес, тип и описание. Они только читают и записывают память игры. Основной риск — для самой игры: неверное значение может вызвать сбой или попасть в ваше сохранение.
  • Скрипты Auto Assembler. Записи-скрипты, которые при включении изменяют код игры. Обычно они затрагивают только процесс игры, но Auto Assembler также может загружать DLL в игру и содержать встроенные блоки Lua, записываемые как {$lua} ... {$asm}, которые выполняются как Lua при включении скрипта.
  • Lua-скрипт таблицы. Lua-скрипт, прикреплённый ко всей таблице и хранящийся в разделе LuaScript файла. Он может запуститься при загрузке таблицы, ещё до того, как вы что-либо отметите. Lua в Cheat Engine — полноценный язык сценариев с доступом к файлам, другим программам и сети.
  • Встроенные файлы. Таблица может хранить внутри себя файлы в закодированном виде. Авторы используют это для изображений, звуков или вспомогательных данных, но скрипт также может записать встроенный файл на диск и запустить его.
  • Формы и структуры. Собственные окна (для интерфейсов в стиле трейнеров) и описания структур данных. Формы обычно управляются через Lua, поэтому к ним прилагается Lua-код, который нужно проверить.

Как Cheat Engine спрашивает перед запуском Lua-скрипта таблицы

Когда вы загружаете таблицу с Lua-скриптом, Cheat Engine показывает запрос, хотите ли вы его выполнить. Этот запрос нужен именно для того, чтобы вы решили после прочтения скрипта, а не до него. Полезные привычки:

  • При первой загрузке таблицы откажитесь. Записи всё равно загрузятся, пропускается только скрипт таблицы.
  • Прочитайте скрипт. Его можно посмотреть в самом Cheat Engine через меню Table или удобнее — в просмотрщике CT или текстовом редакторе.
  • Если скрипт выглядит нормально, перезагрузите таблицу и согласитесь.
  • Оставьте включённой настройку Cheat Engine, которая спрашивает перед запуском скриптов таблицы. Если переключить её на «всегда запускать», вы потеряете возможность проверки.

Обратите внимание: этот запрос относится к скрипту таблицы. Блоки Lua внутри скриптов Auto Assembler запускаются при включении соответствующей записи — это ещё одна причина проверять скрипты, прежде чем их отмечать.

Что требует осторожности

Ничто из перечисленного ниже не является автоматически вредоносным. У многих функций есть законное применение. Но каждая из них даёт таблице возможности, выходящие за рамки изменения игровых значений, поэтому, увидев такую функцию, убедитесь, что понимаете, зачем она нужна.

Функция или возможностьГдеЧто она может делать
shellExecuteLuaОткрыть файл или запустить программу на вашем ПК
os.execute, io.popenLuaВыполнять системные команды
io.open с режимом записи, например "w" или "wb"LuaСоздавать или перезаписывать файлы
getInternet и его функции загрузкиLuaПолучать данные или файлы из интернета
loadstring, loadLuaВыполнять код, собранный из строки, который может быть скрыт или загружен из сети
package.loadlibLuaЗагружать нативную DLL в Cheat Engine
injectDLL, loadlibraryLua / Auto AssemblerЗагружать DLL в процесс игры
decodeFunction, длинные закодированные блокиLuaВыполнять скомпилированный или обфусцированный код, который вы не можете прочитать
Встроенные файлы плюс код, который их сохраняетФайлы таблицы / LuaЗаписать файл на диск, возможно, чтобы его запустить
Блоки {$lua}Auto AssemblerВыполнять Lua при включении записи-скрипта

Обфускация — самый явный тревожный признак

Из всего перечисленного больше всего осторожности требует код, который невозможно прочитать. Длинная строка случайных на вид букв, переданная в load, loadstring или decodeFunction, или скрипт, который расшифровывает текст и затем выполняет его, скрывает, что делает таблица. Некоторые авторы используют обфускацию, чтобы защитить свою работу, но снаружи отличить это нельзя. Если вы не можете проверить код, не запускайте его.

Важен контекст

Таблица, которая вызывает getInternet, чтобы проверить наличие своей новой версии и показать сообщение, — это не то же самое, что таблица, которая скачивает исполняемый файл и запускает его через shellExecute. Читайте, что окружающий код делает с результатом. Значения, записываемые в игру, сообщения для вас и небольшие файлы настроек — это нормально. Запуск программ, файлы с неизвестных адресов и DLL из неожиданных мест — это не то, что обычно нужно таблице для одиночной игры.

Порядок проверки перед включением чего-либо

  1. Откройте таблицу в просмотрщике CT или текстовом редакторе. Сравните список записей с тем, что обещает страница таблицы.
  2. Прочитайте Lua-скрипт таблицы, если он есть. Ищите функции из таблицы выше.
  3. Поищите во всех скриптах Auto Assembler {$lua}, injectDLL и loadlibrary.
  4. Проверьте наличие встроенных файлов и выясните, что их использует.
  5. Загрузите таблицу в Cheat Engine и откажитесь от запуска Lua, если у вас есть сомнения. Обычные записи значений работают и без него.
  6. Сделайте резервные копии сохранений, затем включайте записи по одной, чтобы в случае проблем знать, какая запись их вызвала.

Руководство как пользоваться таблицей Cheat Engine (Cheat Table) подробно рассказывает о загрузке, активации и решении проблем.

О чём проверка не говорит

Проверка таблицы на рискованные функции нужна для защиты вашего ПК. Она не гарантирует, что таблица работает, и не исключает сбоев игры или повреждения сохранения — поэтому так важны резервные копии. Она также ничего не меняет в том, где уместны таблицы: только в одиночных и офлайн-играх. Редактирование памяти в онлайн- или многопользовательских играх влияет на других игроков и может привести к блокировке аккаунта, и никакая проверка этого не оправдывает.

Скачивайте сам Cheat Engine с официального сайта

Всё это предполагает, что сам Cheat Engine подлинный. Скачивайте его только с официального сайта, cheatengine.org, читайте каждый экран установщика и отказывайтесь от дополнительных предложений. Cheat-Engine.net — независимый сайт сообщества для таблиц Cheat Engine, не связанный с Dark Byte, разработчиком Cheat Engine. Остерегайтесь загрузок «Cheat Engine» с других сайтов и всего, что выдаётся за таблицу Cheat Engine, но на самом деле является файлом .exe. Cheat Engine также умеет создавать отдельные трейнеры и защищённые файлы трейнеров; их гораздо сложнее проверить, чем обычный файл .CT, поэтому обращайтесь с ними особенно осторожно.

Итоги

  • Файл .CT — это читаемый XML; чтение безвредно, а запуск в Cheat Engine не обязательно безопасен.
  • Записи значений мало угрожают вашему ПК; скрипты, Lua и встроенные файлы стоит проверять.
  • Отказывайтесь от запуска Lua, пока не прочитали скрипт.
  • Будьте особенно осторожны с кодом, который запускает программы, записывает файлы, скачивает данные, загружает DLL или обфусцирован.
  • Делайте резервные копии сохранений и пользуйтесь только в одиночных и офлайн-играх.

Комментарии

0
Ответ пользователю

Публично не отображается.

Комментарии проверяются модератором перед публикацией.

Комментариев пока нет

Будьте первым, кто поделится своим мнением.