Сейчас на форуме: asfa, Rio (+6 невидимых)

 eXeL@B —› Вопросы новичков —› Система банов BYOND
Посл.ответ Сообщение

Ранг: 5.4 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 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 ничем не защищён(вроде бы) и хорошо отлаживается.

14c3_07.07.2013_EXELAB.rU.tgz - dreamdaemon.rar




Ранг: 622.6 (!), 521thx
Активность: 0.330.89
Статус: Участник
_Вечный_Студент_

Создано: 07 июля 2013 08:04
· Личное сообщение · #2

Почему-то кажется, что тебя скоро и здесь забанят...

-----
Give me a HANDLE and I will move the Earth.


| Сообщение посчитали полезным: Abraham

Ранг: 5.4 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 07 июля 2013 14:47
· Личное сообщение · #3

За что? Я ничего не нарушал.



Ранг: 134.1 (ветеран), 246thx
Активность: 0.220.1
Статус: Участник
realist

Создано: 07 июля 2013 23:49
· Личное сообщение · #4

LOL_THIS_IS_POTATO пишет:
За что? Я ничего не нарушал.

форумом ошибся, на хакер точка ру - там помогут возможно




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 08 июля 2013 00:01
· Личное сообщение · #5

отлаживай сразу в IDA. тогда будешь точно знать адресс.
а еще и hexrays сразу исходный код покажет,
и узнаешь алго генерации



Ранг: 10.4 (новичок), 12thx
Активность: 0.030
Статус: Участник

Создано: 08 июля 2013 09:02
· Личное сообщение · #6

по моему вопрос по теме форума)

LOL_THIS_IS_POTATO пишет:
Мне нужно получить алгоритм генерации этого computer_id

Может и не надо? поидее только подменить нужно и знать алго генерации зачем

Ещё можно глянуть Microsoft Network Monitor 3.4 утилитой трафик, может этот ID в открытом виде передаётся(хотя конечно врятли) и подменять пакеты каким-нить WPE PRO. посмотреть нет возможности
Выкладывай вобщем клиент лучше(или ссылку дай), и скажи сервер этой игрушки где можно забаниться(и каким образом баниться скажи)



Ранг: 5.4 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 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 почему-то отказывается запускаться на моей виртуалке.

Клиент и сервер не с официального сайта, потому что на официальном сайте они уже обновились, а мне удобнее работать на старой версии.

| Сообщение посчитали полезным: Alinator3500

Ранг: 262.5 (наставник), 337thx
Активность: 0.340.25
Статус: Участник

Создано: 08 июля 2013 22:21 · Поправил: TryAga1n
· Личное сообщение · #8

LOL_THIS_IS_POTATO пишет:
Клиента с виртуальной машины свободно пропускали, а с реальной машины - нет.

Что говорит о бане по MAC'y или HDD ID. По факту своей работы 0, кроме "посмотрел там, посмотрел сям".



Ранг: 5.4 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 08 июля 2013 23:24
· Личное сообщение · #9

Менял мак - не помогло. Есть подозрение, что клиент где-то кеширует мак, чтобы его нельзя было просто так поменять. Насчёт HDD ID не уверен, т.к. запускал клиент с внешнего жёсткого диска и сервер меня не пропускал.




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 08 июля 2013 23:28 · Поправил: reversecode
· Личное сообщение · #10

это все на уровне пользователя,
когда уже начнется более глубокий r&d ?
иначе вам в поиск специалиста, за вас никто ничего делать не будет

найти за вас, и сидеть флудить вам подсказки тоже неинтересно

| Сообщение посчитали полезным: plutos

Ранг: 262.5 (наставник), 337thx
Активность: 0.340.25
Статус: Участник

Создано: 09 июля 2013 00:14 · Поправил: TryAga1n
· Личное сообщение · #11

LOL_THIS_IS_POTATO пишет:
Насчёт HDD ID не уверен, т.к. запускал клиент с внешнего жёсткого диска

Обычно используется серийный номер диска C, а не того, с которого произведен запуск. Хотя все варианты можно как угодно комбинировать и сидеть ванговать еще пару лет. Либо займитесь изучением внутренностей и поиском нужного алгоритма, либо обращайтесь в топик по поиску специалистов/запросы на взлом. Хотя как правило здесь не особо жалуют всякие читерские вещи и все, связанное с ММО.



Ранг: 5.4 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 09 июля 2013 13:05 · Поправил: LOL_THIS_IS_POTATO
· Личное сообщение · #12

Немного продвинулся. byondcore - это дллка. Сейчас буду ковырять её в IDA. Сразу же возник вопрос: как с помощью IDA отлаживать библиотеку, подгружаемую .exe файлом?



Ранг: 10.4 (новичок), 12thx
Активность: 0.030
Статус: Участник

Создано: 09 июля 2013 13:45 · Поправил: dfnsff
· Личное сообщение · #13

LOL_THIS_IS_POTATO пишет:
Немного продвинулся. byondcore - это дллка. Сейчас буду ковырять её в IDA.


по-моему на функцию API RegOpenKey стоит обратить внимание. посмотрел программу process monitor-ом
она постоянно проситься в
Code:
  1. HKLM\SOFTWARE\Policies\Microsoft\Windows\Safer\CodeIdentifiers\0\Hashes


чего за Hashes непонятно, и зачем оно их смотрит непонятно.

ещё прога закрывала при выходе

Code:
  1. 9:52:10,5112168   byond.exe  2496      Process Exit   SUCCESS  Exit Status: 22376, User Time: 0.1562500 seconds, Kernel Time: 0.8281250 seconds, Private Bytes: 10 973 184, Peak Private Bytes: 12 763 136, Working Set: 20 602 880, Peak Working Set: 21 278 720
  2. 9:52:10,5115185   byond.exe  2496      CloseFile     C:\Documents and Settings\admin\Рабочий стол\BYOND\bin    SUCCESS     
  3. 9:52:10,5117079   byond.exe  2496      CloseFile     C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.6028_x-ww_61e65202   SUCCESS    
  4. 9:52:10,5121817   byond.exe  2496      CloseFile     C:\Documents and Settings\admin\Local Settings\Temporary Internet Files\Content.IE5\index.dat SUCCESS  
  5. 9:52:10,5124210   byond.exe  2496      CloseFile     C:\Documents and Settings\admin\Cookies\index.dat         SUCCESS 
  6. 9:52:10,5127146   byond.exe  2496      CloseFile     C:\Documents and Settings\admin\Local Settings\History\History.IE5\index.dat         SUCCESS 
  7. 9:52:10,5131617   byond.exe  2496      CloseFile     C:\Documents and Settings\admin\Local Settings\History\History.IE5\MSHist012013070920130710\index.dat  SUCCESS



может куки чистить надо...
видимо не всё так просто тут с этой прогой))

LOL_THIS_IS_POTATO пишет:
подгружаемую .exe файлом?

лучше не спрашивай такие вопросы))) конечно подгружается екзэ файлом, причём обоими процессами dreamseeker.exe и byond.exe
Вобщем ничего нельзя сказать точно пока бан не получу, вот что я понял.. сервер ставить очень лень(

добавлено позже: прога есть смена серийника винта, может поможет) да и вообще куча программ всяких которые что-то подобное делают. непонятно правда какими методами. вот статья ещё: --> Link <--, там что-то про эту игрушку сказано

| Сообщение посчитали полезным: LOL_THIS_IS_POTATO

Ранг: 5.4 (гость), 1thx
Активность: 0=0
Статус: Участник

Создано: 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
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати