![]() |
eXeL@B —› Вопросы новичков —› Система банов BYOND |
Посл.ответ | Сообщение |
|
Создано: 07 июля 2013 06:37 · Поправил: LOL_THIS_IS_POTATO · Личное сообщение · #1 Здравствуйте. Есть игра под названием Space Station 13. Она сделана на закрытом движке BYOND, в котором баны выдаются не по IP, а по computer_id, который предположительно составляется сервером при подключении клиента, т.е. обойти бан просто поменяв IP не получится. Я стал ковырять сервер в поисках алгоритма генерации этого computer_id. Предположительно, этот ID генерируется при соединении клиента с сервером. Я поставил хардварный бряк в дампе на этот computer_id(у меня адрес в дампе был 0x1266F018) и отследил первое обращение к его адресу, но это обращение лежит в какой-то очень широкоспециализированной функции, т.к. если поставить на неё бряк, то она будет вызываться очень часто. Мне нужно получить алгоритм генерации этого computer_id, чтобы обходить баны на серверах, т.к. я не хочу сидеть в перманенте из-за бомбанувшего пукана админа, купившего свою должность на мамкины деньги. И писать заявки на форумы с просьбой разбанить меня я тоже не хочу. Я сначала хотел посмотреть в IDA обращения к той самой функции, но она лежит в модуле byondcore, который располагается по адресу 0x441000. Её адрес - 0х56B802. Я могу посмотреть её в ollyDBG, но не знаю, как переключаться между модулями в IDA. А прыгать на этот адрес она отказывается. Буду рад любой помощи. В аттаче лежит нужный файл. Если нужно, то могу залить полностью рабочий клиент и сервер. dreamdaemon ничем не защищён(вроде бы) и хорошо отлаживается. ![]() ![]() |
|
Создано: 07 июля 2013 08:04 · Личное сообщение · #2 Почему-то кажется, что тебя скоро и здесь забанят... ![]() ----- Give me a HANDLE and I will move the Earth. ![]() |
|
Создано: 07 июля 2013 14:47 · Личное сообщение · #3 |
|
Создано: 07 июля 2013 23:49 · Личное сообщение · #4 |
|
Создано: 08 июля 2013 00:01 · Личное сообщение · #5 |
|
Создано: 08 июля 2013 09:02 · Личное сообщение · #6 по моему вопрос по теме форума) LOL_THIS_IS_POTATO пишет: Мне нужно получить алгоритм генерации этого computer_id Может и не надо? поидее только подменить нужно и знать алго генерации зачем Ещё можно глянуть Выкладывай вобщем клиент лучше(или ссылку дай), и скажи сервер этой игрушки где можно забаниться(и каким образом баниться скажи) ![]() |
|
Создано: 08 июля 2013 21:57 · Поправил: LOL_THIS_IS_POTATO · Личное сообщение · #7 http://anonymousdelivers.us/58367 - клиент. http://anonymousdelivers.us/58368 - полный сервер. Не хочу ничего рекламировать, но забаниться можно на сервере byond://ss13.ru:2508 путём сильного оскорбления администратора. Но лучше баниться на собственном сервере. Я смотрел трафик через WPE PRO. На виртуальной машине и реальной было небольшое различие между пакетами. Я написал дллку для подмены трафика, инжектнул её в клиент и соединялся с сервером. Трафик на виртуальной машине и реальной был идентичен, но ответ сервера отличался. Клиента с виртуальной машины свободно пропускали, а с реальной машины - нет. Возможно, различались так же заголовки этих пакетов, которые WPE PRO не отображает. Он отображает только содержимое. Пробовал мониторить через Wireshark - он ловит не все пакеты. Ещё я выяснил, что клиент при соединении открывает процесс dreamseeker, через который, возможно, идёт дальнейшее общение с сервером. Попробовал отловить трафик с помощью Wicked Patcher, но так же ничего не обнаружил. Microsoft Network Monitor почему-то отказывается запускаться на моей виртуалке. Клиент и сервер не с официального сайта, потому что на официальном сайте они уже обновились, а мне удобнее работать на старой версии. ![]() |
|
Создано: 08 июля 2013 22:21 · Поправил: TryAga1n · Личное сообщение · #8 |
|
Создано: 08 июля 2013 23:24 · Личное сообщение · #9 |
|
Создано: 08 июля 2013 23:28 · Поправил: reversecode · Личное сообщение · #10 это все на уровне пользователя, когда уже начнется более глубокий r&d ? иначе вам в поиск специалиста, за вас никто ничего делать не будет найти за вас, и сидеть флудить вам подсказки тоже неинтересно ![]() |
|
Создано: 09 июля 2013 00:14 · Поправил: TryAga1n · Личное сообщение · #11 LOL_THIS_IS_POTATO пишет: Насчёт HDD ID не уверен, т.к. запускал клиент с внешнего жёсткого диска Обычно используется серийный номер диска C, а не того, с которого произведен запуск. Хотя все варианты можно как угодно комбинировать и сидеть ванговать еще пару лет. Либо займитесь изучением внутренностей и поиском нужного алгоритма, либо обращайтесь в топик по поиску специалистов/запросы на взлом. Хотя как правило здесь не особо жалуют всякие читерские вещи и все, связанное с ММО. ![]() |
|
Создано: 09 июля 2013 13:05 · Поправил: LOL_THIS_IS_POTATO · Личное сообщение · #12 |
|
Создано: 09 июля 2013 13:45 · Поправил: dfnsff · Личное сообщение · #13 LOL_THIS_IS_POTATO пишет: Немного продвинулся. byondcore - это дллка. Сейчас буду ковырять её в IDA. по-моему на функцию API RegOpenKey стоит обратить внимание. посмотрел программу она постоянно проситься в Code:
чего за Hashes непонятно, и зачем оно их смотрит непонятно. ещё прога закрывала при выходе Code:
может куки чистить надо... видимо не всё так просто тут с этой прогой)) LOL_THIS_IS_POTATO пишет: подгружаемую .exe файлом? лучше не спрашивай такие вопросы))) конечно подгружается екзэ файлом, причём обоими процессами dreamseeker.exe и byond.exe Вобщем ничего нельзя сказать точно пока бан не получу, вот что я понял.. сервер ставить очень лень( добавлено позже: прога есть ![]() |
|
Создано: 10 июля 2013 02:13 · Поправил: LOL_THIS_IS_POTATO · Личное сообщение · #14 Большое тебе спасибо, dfnsff! Поставил в ollyDBG брекпоинт на первое обращение к строке computer_id, подключился клиентом к серверу, клиент завис, т.к. сервер его не пускал. Брекпоинт же. Посмотрел process monitor'ом, что делает dreamseeker. В конце мне показались подозрительными обращения к \Device\Harddisk0\DR0. Попробовал поменять ID диска C и всё получилось. Мне всегда помогали на этом форуме, за что я выражаю всем свою благодарность. Удачи вам ![]() А мне осталось только сделать идентификатор диска статическим(в самом BYOND'е) и написать патч, который менял бы его по мере необходимости. Это я всё сделаю сам, т.к. самое сложное позади. ![]() |
![]() |
eXeL@B —› Вопросы новичков —› Система банов BYOND |
Эта тема закрыта. Ответы больше не принимаются. |