Перейти к содержанию
Авторизация  
nedix

Поиск адреса указателя не дает результата

Рекомендуемые сообщения

Ищу в игре GTA SA. Остановился на первом, динамическом адресе. При попытки найти адрес через поиск значений - ничего не выдает.

Пытаюсь через скан указателя, раз десять подряд выдает одно и то же кол-во совпадений (1500), редко уменьшает на 1.

Перерыв похожие запросы, не нашел того что бы помогло.

Единственный совет, или намек, который я нашел: искать последнее обращение к регистру с нужным адресом... А вот где искать не пойму...

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Алгоритм примерно такой:

1. Находишь адрес (патроны, жизни, и вообще что угодно).

2. Ставишь на него бряк на чтение, смотришь в инструкции базу и смещение. Смещение запоминаешь

3. Добавляешь в таблицу адрес базы.

4 Идешь в пункт два.

И так до тех пор, пока не доберешься до "зеленого" адреса, или адреса, который не будет меняться.

В результате у тебя получится статичный базовый адрес, и несколько смещений. Это и будет твоя цепочка указателей.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@Xiphoне совсем понимаю порядок действий.

1. Нашел адрес.

2. Смотрю что пишет\обращается к нему.

3. Выбираю инструкцию -> Show disassembler.

Далее

Toggle breakpoint или ПКМ по 1 байту Break on Write.

А вот дальше что?

 

В 14.09.2018 в 17:08, Xipho сказал:

И так до тех пор, пока не доберешься до "зеленого" адреса, или адреса, который не будет меняться.

В результате у тебя получится статичный базовый адрес, и несколько смещений. Это и будет твоя цепочка указателей.

 

Это я понимаю.

Вопрос, как найти статический адрес, если варианты: Pointer Scan или *поиск адреса через поиск значений не подходят.

* тут я имею ввиду способ описанный в CE туториале "Step 8: Multilevel pointers".

Изменено пользователем nedix

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

[censored]

 

Изменено пользователем JustHack

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@JustHack

9 минут назад, JustHack сказал:

 

Как я сказал

57 минут назад, nedix сказал:

Pointer Scan или *поиск адреса через поиск значений не подходят.

 

Тогда последний вариант это OllyDbg? 

Я надеялся со способом @Xipho разобраться

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чем тебе реверсивный поиск (алгоритм выше и видео из цитаты) не угодил? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 14.09.2018 в 00:28, nedix сказал:

При попытки найти адрес через поиск значений - ничего не выдает.

Пытаюсь через скан указателя, раз десять подряд выдает одно и то же кол-во совпадений (1500), редко уменьшает на 1.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

То есть, ты с самого начала не можешь найти адрес нужного тебе значения, что ли? Если так, то смысла нет искать указатель. Потому что указатель ищется на адрес, а не на значение. Смотри урок внимательно, и вникай.

Я в алгоритме расписал все подробно, не пойму, в чем проблема.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я прошел все туториалы в CE и решил игровые задачи. Знаю AHK и теперь познакомился с Lua.

Это к слову, чтобы не было недопонимания.

Знаю как находить и находил статический адрес через поинтер скан или через поиск значений.

Адрес я нашел:

1 час назад, nedix сказал:

1. Нашел адрес.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
17 минут назад, nedix сказал:

Я прошел все туториалы в CE и решил игровые задачи. Знаю AHK и теперь познакомился с Lua.

Это к слову, чтобы не было недопонимания.

Знаю как находить и находил статический адрес через поинтер скан или через поиск значений.

Адрес я нашел:

 

 

Это все хорошо, но что на счет знаний об устройстве памяти?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я правильно понимаю, что в данном случае мне нужно знать значение [r15]? Если да, то как его узнать?

 

Спойлер

123.jpg

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ломаю голову, чувствую что истина где-то рядом, возможно она на самом видном месте, но откуда мне знать.

Я сделал скрипт на Lua с прибавлением значения, при выстреле. В нем пытаюсь найти цепочку указателей на адрес значения.

В таком же скрипте на AHK цепочка указателей нашлась без проблем.

Я пробовал использовать Break and trace, но мне кажется я в нем хожу по кругу. Если бы в интернете были подобные примеры, вопросы бы отпали, но я таких не нашел.

 Две кнопки: выстрел и сброс.

 

Спойлер

getApplication().Title='LuaGame'

ShotCount = 0


form=createForm()
-- form.OnClose = function(sender) closeCE() return caFree end -- закрытие скрипта, использовать при компиляции в .exe
form_centerScreen(form)
control_setSize(form,150,150)
control_setCaption(form,'Game')

button1=createButton(form)
control_setSize(button1,50,50)
control_setPosition(button1,20,80)
control_setCaption(button1,'Shot')

button2=createButton(form)
control_setSize(button2,50,50)
control_setPosition(button2,80,80)
control_setCaption(button2,'Re')

function Button1Click()
ShotCount = (ShotCount + 1)
control_setCaption(label1,ShotCount)
end
setMethodProperty(button1,'OnClick',Button1Click)

function Button2Click()
ShotCount = 0
control_setCaption(label1,ShotCount)
end
setMethodProperty(button2,'OnClick',Button2Click)

label1=createLabel(form)
control_setPosition(label1,70,30)
control_setCaption(label1,ShotCount)


local font1=label1.Font
local font2=button1.Font
local font3=button2.Font
font1.Size = 16
font2.Size = 14
font3.Size = 16

form.ShowInTaskBar = 'stAlways'

 

 

Буду благодарен, если кто-нибудь поможет найти цепочку указателей.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На нашем канале в плейлисте "Взлом игр от А до Я" есть видео "Указатели. Реверсивный поиск".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@Xiphoя видел, там не говорится о проблеме поиска указателя, какая возникла у меня. Я посмотрел не мало видео\статей уроков, нигде не упоминается такая проблема.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

[censored]

Изменено пользователем JustHack

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да я о том же. Но откуда мне знать на какой режим переключать? :)                                          

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

[censored]

Изменено пользователем JustHack

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@sb0naнет. На данный момент я сделал скрипт, который по нажатию, прибавляет значение. Вот статический адрес этого значения и пытаюсь выяснить.

А так выглядит скрипт:

 

Спойлер

image.jpg

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В данном топике никто не постил уже 4 месяца. Пости здесь только если твой вопрос точно совпадает с темой данного топика.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Предпросмотр
Авторизация  

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

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

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