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

Что такое дамп памяти/снимок/состояние?

Запланировано Прикреплена Закрыта Перенесена Взлом игр (вопросы и ответы)
5 Сообщения 3 Posters 176 Просмотры
Загружаем больше сообщений
  • Сначала старые
  • Сначала новые
  • По количеству голосов
Ответить
  • Ответить, создав новую тему
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • S
    Sergey99
    отредактировано 29 окт. 2023 г., 23:04

    У меня есть игра, в которой есть персонаж, который может ходить, бегать и прыгать. У него есть здоровье. Я могу сохранить состояние игры (процесса) - сделать снимок/дамп с помощью специального инструмента. Дальше похожу, побегаю, уменьшу количество здоровья и загружу дамп/снимок в память процесса и в итоге получу исходные координаты и начальное количество здоровья (которое было на момент создания дампа). Похожая штука есть в эмуляторах.

    Могу ли я сказать, что снимок или дамп памяти — это байты, которые были сохранены на момент создания снимка в виртуальном адресном пространстве (в куче, сегменте кода, сегменте данных, BSS-сегменте, стеке и в области для загруженных библиотек, см. изображение ниже)?

    7051cf53-d6c6-4af7-953b-22163489669a-image.png

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

    S 1 ответ Последний ответ 30 окт. 2023 г., 05:07 Ответить Цитировать 0
    • S
      StoneWeaver administrators @Sergey99
      отредактировано 30 окт. 2023 г., 05:07

      @Sergey99 привет, не совсем понимаю твой вопрос. Дамп памяти - это всегда байты, снятые с определенного региона памяти, или же со всего адресного пространства памяти.

      S 1 ответ Последний ответ 30 окт. 2023 г., 18:49 Ответить Цитировать 0
      • S
        Sergey99 @StoneWeaver
        отредактировано Sergey99 30 окт. 2023 г., 18:49

        @StoneWeaver вот если прочитать байты со всего виртуального адресного пространства процесса, это будет называться сохранением состояния или снимка программы? Если да, то получается если я запишу обратно все эти байты в память процесса это будет называться восстановлением состояния.

        Тот же пример с игрой - это будет считаться будто я сохранил игровой процесс в файл в виде снимка, а потом восстановил его, только использовал не игровую функцию сохранения, а функцию чтения/записи байт в памяти.

        1 ответ Последний ответ Ответить Цитировать 0
        • S
          StoneWeaver administrators
          отредактировано 1 нояб. 2023 г., 06:57

          @Sergey99 В общем случае да, но ты учти, что после перезапуска программы велика вероятность, что восстановление из предыдущего сохранённого состояния не сработает.

          1 ответ Последний ответ Ответить Цитировать 0
          • P
            Partizan1078
            отредактировано 1 нояб. 2023 г., 11:24

            Это что имеется ввиду? Это как у артмани. Есть функция сохранения процесса. Если да то это не дамп.
            f86e7eeb-4f0e-421a-8489-4e10fc599647-dfgdfg456456dfd3456.png

            1 ответ Последний ответ Ответить Цитировать 0
            3 из 5
            • Первое сообщение
              3/5
              Последнее сообщение