Архив сообщества
2011 — 2019
Аватар canvas123

BYONDLib Development

Автор: canvas123 · 27.02.2017, 01:16 · 56 сообщений

Сообщений в теме: 56

canvas123#1
Здравствуйте, господа кодеры. Давно интересовал вопрос, как эмулируется код сервера на стороне клиента и как клиент получает всю информацию о игре. Каким образом происходит авторизация? Я заметил только лишь то, что клиент отправляет серверу свой login, key, ctime, а где же ckey, каким пакетом отправляется - неизвестно.
3
Nisse (22 June 2017 - 00:41) писал: писал:
Говно-то на Блу, а умирает Грин почему-то!
СпойлерИзображение
СпойлерИзображение
Скопировать ссылку
Loly#3
C таким вопросом я бы сразу шёл на официальные форумы бьонда. Возможно там уже есть ответ на твой вопрос.
http://www.byond.com/forum/
1
Изображение
Изображение
СпойлерДля души
Спойлерhttps://youtube.com/embed/xvBRQNdSqvw?fs=1&html5=1
Кадровая политика на Анимусе
Спойлерhttps://youtube.com/embed/WBTkrp0KnXM?fs=1&html5=1
Скопировать ссылку
canvas123#6
Masturbator (26 February 2017 - 16:12) писал: писал:
ты чё, пароли от бъендов попиздить собрался?
Планировал немного другим заниматься
Loly (26 February 2017 - 17:58) писал: писал:
C таким вопросом я бы сразу шёл на официальные форумы бьонда. Возможно там уже есть ответ на твой вопрос.
http://www.byond.com/forum/
Согласно лицензионному соглашению BYOND, никто мне там такую информацию предоставить не имеет право.
HONKERTRON (26 February 2017 - 18:05) писал: писал:
Key и есть ckey. Просто ckey к нижнему регистру приведен. Но это в коде, не факт, что в пакетах так же.
Вы путаете, ckey - генерируется исходя из конфигураций компьютера
Lalka (26 February 2017 - 18:33) писал: писал:
Wireshark, не?
Не думаю, что WireShark поможет разобрать RAW пакеты WinSocketa.
0
Nisse (22 June 2017 - 00:41) писал: писал:
Говно-то на Блу, а умирает Грин почему-то!
СпойлерИзображение
СпойлерИзображение
Скопировать ссылку
13097#7
nurik040404 (26 February 2017 - 15:16) писал: писал:
Здравствуйте, господа кодеры. Давно интересовал вопрос, как эмулируется код сервера на стороне клиента и как клиент получает всю информацию о игре. Каким образом происходит авторизация? Я заметил только лишь то, что клиент отправляет серверу свой login, key, ctime, а где же ckey, каким пакетом отправляется - неизвестно.
есть мнение что очень многое отправляется не "при старте" а уже "в процессе". т.е. конфиги железа выдираются и отправляются не "по умолчанию", а уже либо средствами игры, либо средствами бионда вшитыми в игру. косвенно на это же может указывать то что клиент достаточно активно юзает жабу, штмл и даже флэш.
0
Gravitational Singularity (17 September 2016 - 16:11) писал: писал:
очковралиплеядам!
Скопировать ссылку
canvas123#8
13097 (26 February 2017 - 23:46) писал: писал:
есть мнение что очень многое отправляется не "при старте" а уже "в процессе". т.е. конфиги железа выдираются и отправляются не "по умолчанию", а уже либо средствами игры, либо средствами бионда вшитыми в игру. косвенно на это же может указывать то что клиент достаточно активно юзает жабу, штмл и даже флэш.
Ну чтож, методом тыкания хуем в небеса, а так же с помощью умений обращения с памятью, было выяснено, что эта хуйня базарит с юзером таки и посреди игрового процесса, а в частности получение computer_id происходит рандомно, но он все таки спалился
Изображение
0
Nisse (22 June 2017 - 00:41) писал: писал:
Говно-то на Блу, а умирает Грин почему-то!
СпойлерИзображение
СпойлерИзображение
Скопировать ссылку
canvas123#10
Я тут глянул, клиент при подключении частенько глядит на мой жесткий диск.
Изображение
Товарищи, GetVolumeInformation .
Изображение
Заглянем в сорсец ByondCore.dllпо ссылкам на GetVolumeInformation.
Бац.
Изображение

Параметр lpVolumeSerialNumber насколько мы видим, является указателем на внешнюю переменную, значит ID нашего жесткача возвращается результатом из этой функции, а вызовов этой функции в DreamSeeker-e ОООЧЕНЬ МНОГО! Да, и в основном они связаны с авторизацией на сервере. Т.е. для того, чтобы подделать computer_id достаточно инжектировать DLL в игру, которая хуканет функцию GetVolumeInformation, затем подделает результат этой функции и все, вуаля доступ на сервер открыт!

Планирую добавить все фичи ByondCore в мою библиотеку ByondAPI, там пока говно-код на плюсах, но сейчас проходит стадия исследования.
7
Nisse (22 June 2017 - 00:41) писал: писал:
Говно-то на Блу, а умирает Грин почему-то!
СпойлерИзображение
СпойлерИзображение
Скопировать ссылку
fey#11
ПАЦАНЫ НЕ ВЕДИТЕСЬ, ОН ЧИТЫ ДЕЛАЕТ, БАНЫ ОБХОДИТЬ, НЕ РАСПРОСТРАНЯЙТЕ ССЫЛКУ НА ЭТОТ ИТТ ТРЕД
0
Если вам понравилась моя публикация, комменатрий, хоитет сказать спасибо, можете сделать это здесь, поставив плюсик или оставить свой отзыв.
Скопировать ссылку
canvas123#13
jackerZz (27 February 2017 - 11:00) писал: писал:
Кинь сорцы бульёнда если не сложно
К сожалению, в Open Source виде их нет, поэтому вы можете достать их сами, в папке с Byondом есть файл ByondCore.dll , в нем заэкспортированы все функции BYOND
0
Nisse (22 June 2017 - 00:41) писал: писал:
Говно-то на Блу, а умирает Грин почему-то!
СпойлерИзображение
СпойлерИзображение
Скопировать ссылку
BombanyTI#14
nurik040404 (27 February 2017 - 10:44) писал: писал:
Обход через длл не новый. Раньше работал, но тгшники создали систему для распознавания длл. Сначала идет один коннект, он обрывается, после чего идет второй. Если твой компуктер_ид поменялся - тебе пизда.
0
Изображение
Скопировать ссылку
canvas123#15
fey (27 February 2017 - 10:57) писал: писал:
ПАЦАНЫ НЕ ВЕДИТЕСЬ, ОН ЧИТЫ ДЕЛАЕТ, БАНЫ ОБХОДИТЬ, НЕ РАСПРОСТРАНЯЙТЕ ССЫЛКУ НА ЭТОТ ИТТ ТРЕД

Все исключительно в научных целях, хехе
Думаю это многим поможет, ведь я разрабатываю библиотекудля работы с функциями BYOND
0
Nisse (22 June 2017 - 00:41) писал: писал:
Говно-то на Блу, а умирает Грин почему-то!
СпойлерИзображение
СпойлерИзображение
Скопировать ссылку
jackerZz#16
А вообще обычно авторизация в таких вещах делается следующим образом: клиент авторизируется в клиентском сервере бульенда и получает код своей сессии, которая сохраняется на клиент-сервере. Когда клиент пытается зайти на какой-то сервер, то он скидывает серверу свой сикей и номер сессии. В случае если отправленный клиентом и хранящийся на клиент-сервере код сессии совпадают, то клиент попадает на сервер. Это я к тому, что зайти под другим сикеем не получится, если ты сделать это хотел
0
Скопировать ссылку
canvas123#17
ochen_bombanyTI (27 February 2017 - 11:02) писал: писал:
Обход через длл не новый. Раньше работал, но тгшники создали систему для распознавания длл. Сначала идет один коннект, он обрывается, после чего идет второй. Если твой компуктер_ид поменялся - тебе пизда.
К счастью, это не проблема, тебе не нужно заменять DLL библиотеки сокетов, так что все будет чистенько
0
Nisse (22 June 2017 - 00:41) писал: писал:
Говно-то на Блу, а умирает Грин почему-то!
СпойлерИзображение
СпойлерИзображение
Скопировать ссылку
jackerZz#18
ochen_bombanyTI (27 February 2017 - 11:02) писал: писал:
Обход через длл не новый. Раньше работал, но тгшники создали систему для распознавания длл. Сначала идет один коннект, он обрывается, после чего идет второй. Если твой компуктер_ид поменялся - тебе пизда.
Никто не мешает в обоих случаях использовать одинаковый компуктер_ид
0
Скопировать ссылку
canvas123#19
jackerZz (27 February 2017 - 11:04) писал: писал:
А вообще обычно авторизация в таких вещах делается следующим образом: клиент авторизируется в клиентском сервере бульенда и получает код своей сессии, которая сохраняется на клиент-сервере. Когда клиент пытается зайти на какой-то сервер, то он скидывает серверу свой сикей и номер сессии. В случае если отправленный клиентом и хранящийся на клиент-сервере код сессии совпадают, то клиент попадает на сервер. Это я к тому, что зайти под другим сикеем не получится, если ты сделать это хотел
Не думаю, что с сикеем ничего не получится, да и к тому же, я к такой цели не шел.
0
Nisse (22 June 2017 - 00:41) писал: писал:
Говно-то на Блу, а умирает Грин почему-то!
СпойлерИзображение
СпойлерИзображение
Скопировать ссылку
canvas123#20
jackerZz (27 February 2017 - 11:04) писал: писал:
А вообще обычно авторизация в таких вещах делается следующим образом: клиент авторизируется в клиентском сервере бульенда и получает код своей сессии, которая сохраняется на клиент-сервере. Когда клиент пытается зайти на какой-то сервер, то он скидывает серверу свой сикей и номер сессии. В случае если отправленный клиентом и хранящийся на клиент-сервере код сессии совпадают, то клиент попадает на сервер. Это я к тому, что зайти под другим сикеем не получится, если ты сделать это хотел
Изображение
В любом случае, у меня все это в распоряжении.
0
Nisse (22 June 2017 - 00:41) писал: писал:
Говно-то на Блу, а умирает Грин почему-то!
СпойлерИзображение
СпойлерИзображение
Скопировать ссылку
fey#21
nurik040404 (27 February 2017 - 11:04) писал: писал:
Все исключительно в научных целях, хехе
Думаю это многим поможет, ведь я разрабатываю библиотекудля работы с функциями BYOND

Ну напиши софтину, чтобы эмулировала компьютер ID на ненастоящий. А то мне лень с виртуалкой возиться, а на семерке не робит программа нужная :с
0
Если вам понравилась моя публикация, комменатрий, хоитет сказать спасибо, можете сделать это здесь, поставив плюсик или оставить свой отзыв.
Скопировать ссылку
canvas123#22
fey (27 February 2017 - 11:16) писал: писал:
Ну напиши софтину, чтобы эмулировала компьютер ID на ненастоящий. А то мне лень с виртуалкой возиться, а на семерке не робит программа нужная :с
Следи за репозиторием, а так же за этой темой, возможно в скором будущем сделаю, как основной функционал запилю
0
Nisse (22 June 2017 - 00:41) писал: писал:
Говно-то на Блу, а умирает Грин почему-то!
СпойлерИзображение
СпойлерИзображение
Скопировать ссылку
jackerZz#23
Я конечно далеко не спец в ваших хакерских делах, никогда такого не делал, но все таки думаю, что проще было бы подменять сид в пакетах
0
Скопировать ссылку
canvas123#25
jackerZz (27 February 2017 - 11:36) писал: писал:
Я конечно далеко не спец в ваших хакерских делах, никогда такого не делал, но все таки думаю, что проще было бы подменять сид в пакетах
Но и задача моя не сконцентрирована только на подмене сида, к тому же разобрать RAW-пакет дело третье.
0
Nisse (22 June 2017 - 00:41) писал: писал:
Говно-то на Блу, а умирает Грин почему-то!
СпойлерИзображение
СпойлерИзображение
Скопировать ссылку

Обратно в Кодинг