Реверсинг. Задай вопрос - получи ответ

Discussion in 'Реверсинг' started by 0x0c0de, 2 Sep 2007.

  1. ntldr

    ntldr Elder - Старейшина

    Joined:
    4 Dec 2007
    Messages:
    367
    Likes Received:
    140
    Reputations:
    23
    просто мне нужно, чтобы все было именно без лоадера

    а мой кернел который будет - можно просто на делфи импортировать из натроящего кернела функции И экспортировать их так?
     
  2. BlackSun

    BlackSun Banned

    Joined:
    1 Apr 2007
    Messages:
    989
    Likes Received:
    1,168
    Reputations:
    446
    Да, про stdcall незабудь
     
  3. ntldr

    ntldr Elder - Старейшина

    Joined:
    4 Dec 2007
    Messages:
    367
    Likes Received:
    140
    Reputations:
    23
    а можно допустим взять полегче библу, например ole32.dll - в моей проге там импортируется из нее только 2 функции, сделать переходники на них и поставить хук на кернеловский LoadLibraryA.

    тогда это будет так?

    function CoInitialize(pvReserved: Pointer): HResult; stdcall; external 'ole32.dll' name 'CoInitialize' index 58; export;
    ......

    exports CoInitialize index 58;
     
    #83 ntldr, 4 Jun 2008
    Last edited: 4 Jun 2008
  4. BlackSun

    BlackSun Banned

    Joined:
    1 Apr 2007
    Messages:
    989
    Likes Received:
    1,168
    Reputations:
    446
    Незнаю чем тебе сплайсинг не нравится .. если лоадер не нужен, можешь сделать библу, в ней при загрузку прохукать нужные функции .. а библу можешь загрузить например сменив OEP на свободное место, там LoadLibrary твоей библы и jmp на оригинальный oep
     
  5. ntldr

    ntldr Elder - Старейшина

    Joined:
    4 Dec 2007
    Messages:
    367
    Likes Received:
    140
    Reputations:
    23
    спасибо, получилось. я создал библу ole33.dll прописал таким образом функции экспорт-импорт и в таблице импорта поменял ole32 на ole33. dll грузится и пашет отлично))
     
    1 person likes this.
  6. lm137

    lm137 New Member

    Joined:
    21 Nov 2007
    Messages:
    17
    Likes Received:
    3
    Reputations:
    0
    Всем привет
    Ппц.. чет темы для нубов не нашел, извините если не туда написал-)
    ну значит так..
    Игровой сервер Ragnarok Online
    Тип сервера Eathena SQL, сайт сервера http://www.raggame.ru/
    Сайт сломать не возможно, ну мне так кажется.. Вывода ошкибки нету, SQL уязвимостей нету, Инклуд тоже не катит.

    Пробовал через сам сервер, но и здесь ничего не вышло.
    Ах да.. чуть не забыл, сделать то я вот что хочу.
    Копировать игровую вещь. Вот..

    Ну и начал я читать гайды по программе WPE-pro, начал юзать пакеты, пришел к этому:

    Кидаю предмет, в данном случае нож. Затем начинаю записывать пакеты и поднимаю нож.
    Пакет: F5 00 66 00 6A 06 00 00 (поднимаю нож)
    Спустя 2с. снова записываю пакеты и подбираю нож.
    Пакет: F5 00 64 00 62 04 00 00 (второй раз поднимаю тот же нож)

    Если после замерки пакета отправить F5 00 64 00 62 04 00 00
    То сервер выдаст: "Вы не можете поднять этот предмет"

    #Пробовал с кучей NPC, всё заканчивалось неудачей.

    =========================================
    А вообще заметил такую вещь... в результате долгих экспериментов с ножом.

    Вот пакет: f5 00 [] 00 [] 0[] 00 00
    Где [] = переменные. Лишь они меняются, остальное не изменяется.
    Вспомним случай, когда я пытался дюпать с разницей в 2с.

    F5 00 66 00 6A 06 00 00
    F5 00 64 00 62 04 00 00

    66 поменялось на 64, а 06 на 04.
    2с.=переменная меняется на 02.
    Остаётся понять какая закономерность влияет на 6А и 62.

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

    Понимаете в чем делема, сервер всегда проверяет наличие "х" предмета для получения "у" предмета.
    Быть может проверку и можно обойти, но нужно писать скрипт. (моё имхо)

    Помогите юному студенту, столько времени убил, ужас..
    Если уж и у вас никаких идей не будет, то я окончательно решу, что Официальный игровой сервер Ragnarok в России, взломать невозможно.

    Хотя есть, есть люди которые копируют шмот на сервере, но они настолько "круты", что им нет дела до таких "нубов" как я.
    Пожалуйста помогите..
    Буду о-о-о-очень благодарен.
    С уважением Дмитрий
    *фух.. много букв получилось*
     
    1 person likes this.
  7. ProTeuS

    ProTeuS --

    Joined:
    26 Nov 2004
    Messages:
    1,239
    Likes Received:
    542
    Reputations:
    445
    расбирайся в протоколе работы, 4то без нали4ия сорцов в том духе, котором ты описал (один раз ткнул сюда-посмотрел туда) невозможно. если нет доступа в сорцам и нали4ия техни4еских знаний реверсинга клиент-серверного приложения, то посоветовать можно только изу4ить протокол работы в духе "4ерного ящика" - настро4ить ку4у обращений, записывать событие и результирующий пакет, отправленый и полу4еный от сервера а далее собирать статистику и кодить софт для расбора протокола ответов сервера от посылаемых клиентом, а дальше, думаю, зная типи4ные дествия можно искать узкие места в конкретном модуле, в котором предполагается ошибка проэктировки. более общего ответа без доступа к коду софта и длительного реверсинга игры тебе никто не даст...
     
  8. neprovad

    neprovad Elder - Старейшина

    Joined:
    19 Oct 2007
    Messages:
    899
    Likes Received:
    274
    Reputations:
    59
    lm137, еще можно воспользоваться WinAPIOverride (ссылки ищи в инструментах) и запротоколировать все вызовы функций из библиотеки ws2_32.dll или каких других, заодно узнаешь по каким адресам клиентской части идет передача тех или иных данных. В любом случае для понимания темы надо уметь реверсить, иначе как еще ты поймешь от чего зависит изменение тех самых байтов
     
  9. lm137

    lm137 New Member

    Joined:
    21 Nov 2007
    Messages:
    17
    Likes Received:
    3
    Reputations:
    0
    Оо ребят, спасибо вам большое, наконец то нашел форум где люди сидят.

    Нашел дырочку кстати, сервер ведь состоит из 2х частей.
    Чар сервер и мап сервер.
    Ну так вот, если перегрузить мап сервер, можно определенную локацию, то сервачок во избежании полного отключения, отбрасывает не обязательные "по его мнению" процессы.
    Тоесть создаем среду, в которой даже человек с самый лучшим трафиком будет лагать, кидаем предмет, другой человек подбирает.
    Понятно дело, что 2 предмета с одинаковым ID в одно место ложить не следует.
    Ну и всё, у одного один предмет, у другого другой.

    Вот только надо придумать как его положить, на своем сервере (домашнем) пробовал заспамить скилами, но, что бы поработить столь огромный сервер с онлайном более 3.000 игроков, одного спама скилами мало.
    Там и впе думаю не поможет.

    Можете что-нибудь посоветовать? Сайт и сервер не имеют ддос уязвимостей, порты перекрыты, даже побрутить нельзя, через тот же BrutusA2 нельзя..

    Если есть какие нибудь идеи, пожалуйста подскажите..
    Обращаюсь к вам, как к знатокам. :)

    Ну а пока буду читать ветку реверсинга, может немножко мозгов поприбавиться.

    Если поможет, то
    ip 81.177.13.7
    port при коннекте к серверу через клиент: 6900
     
    #89 lm137, 5 Jun 2008
    Last edited: 5 Jun 2008
  10. neprovad

    neprovad Elder - Старейшина

    Joined:
    19 Oct 2007
    Messages:
    899
    Likes Received:
    274
    Reputations:
    59
    lm137, ты уж извини, но качать клиента в гиг с хвостиком это жутко =) я не готов идти на такие жертвы
     
  11. ProTeuS

    ProTeuS --

    Joined:
    26 Nov 2004
    Messages:
    1,239
    Likes Received:
    542
    Reputations:
    445
    слова "сайт и сервер игры уязвимы к ддос-уязвимостям" о4ень показательны. советую всетаки пеер4итать мой пост и пытаться самому полу4ать хоть минимальное представление о сетевой безопасности или основам сетей и исследования софта
     
  12. lm137

    lm137 New Member

    Joined:
    21 Nov 2007
    Messages:
    17
    Likes Received:
    3
    Reputations:
    0
    Нуу.. мож че не так понял, но насколько я знаю, ддос атака это загрузка портов.
    В следствии чего сервер перегружается и падает, а там порты перекрыты, и ничего с ними не сделаешь.

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

    Про сайт я начал говорить, т.к. тип сервера опять же SQL, достаточно взглянуть на кнопочку "Регистрация", и сразу всё становиться понятно. Поэтому я и искал уязвимости. Но это ни к чему не привело..


    По теме черного ящика, определять вход и наблюдать за выходом, это конечно можно, но это очень долго..
    И потом, протеус, я вот задам нубский вопросик.
    Представим такую тему, что я пойму алгоритм изменения пакетов, используя метод черного ящика, но что мне это даст?
    Даже если я буду знать, какой пакет за что отвечает, там ведь существует множество проверок..
    Их не обойти=)
    Если мы имея 0 игровой валюты, нажмем купить Красное зелье, мы получим красную рамочку "у вас не хватает зеней". То же самое будет и с пакетами.


    --------------
    Да, конечно, я всё понимаю, в некоторых местах трафик очень дорогой, и постараюсь сам разобраться.
    Но ведь на сайте ты тоже не заметил ничего интересного?..
    Жалко я не умею писать вирусы, так бы можно было попытаться отправить, что нибудь интересное в суппорт, на главный компьютер.
    После чего поискать БД например.. Но к сожалению, я такой нууууп.

    -----------------
    Да, согласен, надо знать как всё это устроено и чего, что дает.
    Заказал книженцию выложенную в соседнем топике, с её помощью изучу Реверсинг.
    Что-то не могу найти здесь Гайд по реверсингу.
    Пока что для меня это темный лес, но как я понял, основная фишка его - протоколировать процессы, делать выводы, создавать новые запросы.
    Выдирать кусочки огромной мазайки, и собирать собственную, после чего отправлять на сервер.
     
    #92 lm137, 5 Jun 2008
    Last edited: 5 Jun 2008
  13. desTiny

    desTiny Elder - Старейшина

    Joined:
    4 Feb 2007
    Messages:
    1,006
    Likes Received:
    444
    Reputations:
    94
    Что ты сделать-то хочешь? денег прибавить? навеняка поверка на стороне сервера! В саппорт вирус слать - ты понимаешь, что там люди что-то понимают и не станут открывать твой файл?!!?!!
     
  14. lm137

    lm137 New Member

    Joined:
    21 Nov 2007
    Messages:
    17
    Likes Received:
    3
    Reputations:
    0
    Ты мои посты читал? Я и написал, что - да, проверки там есть.
    По поводу саппорта ты сильно заблуждаешься, саппорт был проверен на компетентность и проверку не прошел.

    На сервере 60% - боты, и тому подобное..

    Такое ощущение, что ты прочитал мой пост и выделил из него выводы.. и всё-)

    А совет то будет? Ну или слово какое нибудь новое, интересное.. Или это всё? Если - да, то я жду компетентного ответа от ProTeuS. Он суров, но он во всем эту фишку рубит.

    Вот если бы ты написал, что нибудь по делу, например как порты открыть, то это - да.. респект.

    А так за 1 неделю 400постов набить и получить 5 плюсов, после чего критиковать нубиков в моем лице, то извини, не большого стоит.

    Извиняюсь если обидел. ;)
     
    #94 lm137, 5 Jun 2008
    Last edited: 5 Jun 2008
  15. desTiny

    desTiny Elder - Старейшина

    Joined:
    4 Feb 2007
    Messages:
    1,006
    Likes Received:
    444
    Reputations:
    94
    Так-с, по-моему,ты занимаешься фигнёй.

    Вот есть на серваке БД. В БД лежат ВСЕ твои данные. как происходит что бы то ни было?
    в одном и том же скрипте что-то такое: (сорри за псевдо-пхп+мускуль)
    PHP:
    $money <- SELECT money from xxx where id=твой id
    $need 
    <- SELECT cost from yyy where id=номер товара
    ($mon >= $cost) or die "cheator gone!";
    //снятие денег и зачисление предмета
    То есть ломать на стороне клиента бессмысленно!!
    Твоя цель - доступ к серваку. И тебе
    а) не в этот раздел
    б) ddos-атака тут тебе совсем не поможет
    в) идея с вирусом - бредовая, имхо... никто на неё не купится... да ещё и как ты ось узнаешь сервеную?... Не чувак, ломай сайт. Если нет - то не судьба.

    PS что-то я по пять плюсиков и неделю не понял - ты к кому?
     
  16. lm137

    lm137 New Member

    Joined:
    21 Nov 2007
    Messages:
    17
    Likes Received:
    3
    Reputations:
    0
    Есть те, которые сумели Дюпать при помощи пакетов.
    Нет, это конечно понятно, что надо быть "гением", что бы обмануть такой скрипт, но всё же некоторым а именно 4 человека из 3.000 смогли это сделать через серверную часть, используя лишь впе-про и "Кафру" *Кафра - склад в игре*.
    а)Раздела для нубов я не нашел..
    б)Ддос атакой я хотел вывести наружу баги самого сервера.
    в)Согласен..




    Заказал книгу, которую посоветовал предыдущий аффтар. Я сам прекрасно понимаю тебя и многих других, и лично сам бы послал подобного постера далеко-далеко.
    Как прочитаю, и узнаю устройство системы виндовс и значение пакетов - отпишусь. А пока воспользуюсь советом Протеуса и буду пробовать записывать данные с пакетов, в поисках алгоритма.

    PS desTiny
    Постоянный
    Регистрация: 04.02.2007
    Адрес: SEH
    Сообщения: 417
    Провел на форуме:
    1 неделю 1 день

    Репутация: Эксперт (5/778) ±

    Спасибо за грамотный ответ.
    Еще раз извиняюсь за грубый ответ в предыдущем посте.


    Да, если что нибудь придумаете, кроме моих изначально бредовых идей, то прошу отписаться..
     
    #96 lm137, 5 Jun 2008
    Last edited: 5 Jun 2008
  17. desTiny

    desTiny Elder - Старейшина

    Joined:
    4 Feb 2007
    Messages:
    1,006
    Likes Received:
    444
    Reputations:
    94
    незачто.. но всё равно - клиент тебе может лишь подсказать, что там с параметрами, которые надо отсылать,притом это - через сниффер, а дальше - это уже совсем другое дело - это уже сайт ломать.
    Кста, а те 4 - не админы случаем или их друзья? А то были в других местах прецеденты :)

    PS 1 неделя 1 день - это непосредственно в сети на форуме... ужас... 5 это тоже не совсем то,о чём ты думаешь, ну да ладно :)
     
  18. lm137

    lm137 New Member

    Joined:
    21 Nov 2007
    Messages:
    17
    Likes Received:
    3
    Reputations:
    0
    дес.. я убил столько времени на поиски багов, на сканирование пакетов и попытки-попытки-попытки..
    У меня даже получалось дюпать через пакеты на пиратках, но то пиратки, а то официальный Российский сервер.
    Он - моя цель.
    Скрипты там далеко не идеальны, например на предыдущей версии можно было дюпать так:
    Ложишь на склад 10 предметов.
    Начинаешь сканировать, ложишь 10предметов в инвентарь.
    Перекладываешь на склад 1 предмет того же типа, отправляешь 1й пакет.
    Из склада исчезает 1ед. предмета из склада, а в инвентаре появляется 10ед. предмета.

    Там много дыр, надо разобрать сервер по частям..
    Так же я пробовал модифицировать клиент, при заходе в игру у меня был гмский спрайт и работала 1 команда (гмская), правда это сейчас тоже пофиксено.

    Так что.. дыр предостаточно на самом сервере, думаю можно обмануть скрипт через клиентскую часть.

    А есть идеи как открыть порты?
    Для того же брута..
    При настройки брута, я указал ИП и порт, но коннекта нету.
    Мне кажеться, что порты закрыты, поэтому ничего не выходит, т.к. брут идет напрямую, внаглую через порты.

    Незнаю-незнаю.. Мне кажется врятли, даже у админов нету таких возможностей, каких добиваються эти люди.
    Один из них модифицировал игровой предмет не известным мне способом так, что такого предмета нету в самой игре.
    Его не существует, такого вообще нет, а он сделал.

    У меня есть лишь догадка как он это воплотил, но как это сделать, честно.. я не представляю.
    Тут 2 варианта, либо читерить можно через модификацию игрового клиента, либо через пакеты.

    Какую темку мне сейчас лучше почитать?..
    Опять же, гайдов нету, эхх..
    Ощущение, что люди говорят на неизвестном мне языке.
     
    #98 lm137, 5 Jun 2008
    Last edited: 5 Jun 2008
  19. desTiny

    desTiny Elder - Старейшина

    Joined:
    4 Feb 2007
    Messages:
    1,006
    Likes Received:
    444
    Reputations:
    94
    Блин, пиши по-короче :)

    У меня к тебе вопрос - что ты так упорно пытаешься сбрутить?

    Модифициовать клиент можно што хоть убейся - хочешь, он тебе при запускебудет говорить, что ты в 100 раз сильнее всех? Дакак нехрен! Только серве об этом знать не будет(--Человек - царь природы! -- Только звери об этом не знают, они не грамотные (c)"Тайна третьей планеты") Тебе надо убедить сервер, что ты прав. Для этого надо найти бажные скипты. А это уже не ревесинг.
     
  20. lm137

    lm137 New Member

    Joined:
    21 Nov 2007
    Messages:
    17
    Likes Received:
    3
    Reputations:
    0
    Это я и сам сделать смогу.
    Нет,это интерес, я хочу получить игровые ценности при помощи пакетов\багов. Боты мне надоели..
    А что это если не реверсинг?.. В какую тему валить?