• Ищем качественного (не новичок) разработчиков Xenforo для этого форума! В идеале, чтобы ты был фулл стек программистом. Если у тебя есть что показать, то свяжись с нами по контактным данным: https://t.me/DREDD

Вопрос Подмена запросов в игре

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
28 Авг 2023
Сообщения
7
Реакции
0
Хочу спиратить старую версию игры Dead By Daylight, для того чтобы ее спиратить нужно подделывать ответы на запросы игры к серверу, я это делаю через fiddler, однако у меня есть пример версии чуть новее в которой человек заменил ссылки отправляемые к api серверу на локал хост, и сделал как бы локальных сервер, чтобы все работало и без fiddler, я решил попробовать так же, но упираюсь в проблему. Изначально ссылка выглядит вот так
Пожалуйста, авторизуйтесь для просмотра ссылки.
далее, при запросе скажем на проверку актуальности версии игра добавляет к этой ссылке ручку /version и получается
Пожалуйста, авторизуйтесь для просмотра ссылки.
. Я заменяю эту ссылку на
Пожалуйста, авторизуйтесь для просмотра ссылки.
и т.к по байтам она меньшего размера заполняю все нулями, однако как я понял 00 является сигналом для прекращения чтения строки, и игра просто не дописывает к ней /version, если же я делал не нули, а скажем пробелы, 20 00, то запрос таки добавлялся, но имел вид
Пожалуйста, авторизуйтесь для просмотра ссылки.
????????????????? /VERSION. Если потребуется могу дать все exe на руки. Работал я через HxD. Скопировать как в чужой пиратке не могу, т.к слабо понимаю на что там смотреть, ибо там схожая ссылка, но все отлично работает, однако если же я так же пытаюсь заменить ссылку, то оно перестает работать, явнопроставленных ограничений я не нашел.

Пожалуйста, авторизуйтесь для просмотра ссылки.
- txt дампы байтов, если потребуется могу скинуть exe
 
If version string gets concatenated with some "standard" concatenation routine or API it should already account for zero-terminated strings (and should work). I would take another look at how the app actually joins the fixed url string with the version.

If it's suitable for your needs, you can put in your hosts file (and proxy exclusion if you use a web proxy) something like:
Код:
Expand Collapse Copy
127.0.0.1             latest.live.dbd.bhvr.online.com

and leave the executable as is.
 
If version string gets concatenated with some "standard" concatenation routine or API it should already account for zero-terminated strings (and should work). I would take another look at how the app actually joins the fixed url string with the version.

If it's suitable for your needs, you can put in your hosts file (and proxy exclusion if you use a web proxy) something like:
Код:
Expand Collapse Copy
127.0.0.1             latest.live.dbd.bhvr.online.com

and leave the executable as is.
editing the hosts file is not the solution I need, I am interested in changing the link itself in the exe file.
 
Please, upload real executables rather than partial hex-dumps (your *.txt files).
 
Wow. There are a lot of occurrences. Can you please write one of the file-offsets where you did the replace?

As far as I can tell the URL(s) get copied with calls to memcpy (so copying some specific number of characters) and according only to references (I didn't take a deep look, I'm afraid) this count seems to be "handled" someway inside the routine at file-offset 0x204D50, that seems to be accounting for dots inside the URL string. Given you have no dots it might give weird results. Don't take this for granted, however, of course. (Readacted because: I'm afraid: in the rush I probably wrote nonsense. Sorry.)

FYI. Original and patched files are different in size. If it's not what you planned, maybe something didn't go exactly as you wanted.
P.S. For others who would like to check, the URL is 'latest.live.dbd.bhvronline.com/api/v1/version' without the dot between "bhvr" and "online" (UTF-16).
 
Последнее редактирование:
Wow. There are a lot of occurrences. Can you please write one of the file-offsets where you did the replace?

As far as I can tell the URL(s) get copied with calls to memcpy (so copying some specific number of characters) and according only to references (I didn't take a deep look, I'm afraid) this count seems to be "handled" someway inside the routine at file-offset 0x204D50, that seems to be accounting for dots inside the URL string. Given you have no dots it might give weird results. Don't take this for granted, however, of course.

FYI. Original and patched files are different in size. If it's not what you planned, maybe something didn't go exactly as you wanted.
P.S. For others who would like to check, the URL is 'latest.live.dbd.bhvronline.com/api/v1/version' without the dot between "bhvr" and "online" (UTF-16).
Honestly I'm not quite sure what you need to give me, the bytes I was trying to change? If anything the patched file is not mine, I'm trying to make another version, they are not very different technically, so I think there should be no differences.
 
йобать тут амэрикосоv
 
попробуй через charles web proxy, там вроде можно, лично я мало с таким работаю
 
Назад
Сверху Снизу