Показаны сообщения с ярлыком реверс инженеринг. Показать все сообщения
Показаны сообщения с ярлыком реверс инженеринг. Показать все сообщения

29 марта 2013 г.

Реверсим протокол онлайн игры.

Давно не писал статей, как то не было подходящих и интересных тем. Но тут я просматривал свой список TODO и в конце обнаружил, всю в пыли, заметку про то что было бы неплохо разобрать какойнить протокол онлайн игры.
Для чего, это вообще надо? Ну в основном иследование протокола игр используется для написания ботов, управлялок, кликеров, спамилок и трейдботов. Все перечисленное не одобряется администрацией онлайн игр, по этому если вас обнаружат, то скорей всего вы получите перманентный бан.
Поковырявшись пару дней, протокол был реверснут. Я не будут описывать все 100% команд которые используются в этой игре, ибо не вижу смысла, так как цель этой статьи рассказать, как и какими инструментами лучше всего реверсить протокол обмена между сервером и клиентом в онлайн играх.

Итак для начала, что будем иследовать? Я пошел на сайт со списокм онлайн игр(первый сайт который вывалил гугл). Список достаточно уныл там, но хоть такой. Из списка были выбраны 2 игры это Dofus от мегазла рунета mail.ru и Ragnarok Online неофициальный. Ибо на официальном используется богомерзкий Frost, с которым мне было разбираться откровенно лень. Обе игры весят в районе 1 гига и в принципе не сильно отличаются друг от друга по сложности протокола.

28 февраля 2013 г.

Ломаем телефонную базу Мегафон

Нужно мне было поискать одного человечка по номеру телефону. Пошел гуглить где взять базу данных в интернетах и обнаружил один сайт по адресу http://names-book.net/ который предлагал телефонные базы данных от Мегафон, Билайн, МТС и т.д.

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

13 февраля 2013 г.

Отучаем игру от Steam

Для начала, пиратство это плохо, ибо чем больше программ воруют, тем меньше разработчик получает бабла, тем сильнее его детишки хотят кушать, а жена больше хочет новую ламборджини и больше его начинает пилить. А когда пилят, портится настроение и аппетит и соответственно нет никакого желания программировать, рисовать и озвучивать новые игры. Я например всегда покупаю игры и программы так как хочу вознаградить разработчиков, пусть даже львиную часть моих денег сожрут дестрибьюторы и топ манагеры.
Но я отвлекся, посетило меня тут любопытство, каким образом привязываются игры к Steam. Исследуемым экземпляром стала игра Space Pirates and Zombies в народе SPAZ. Достаточно прикольная игра сделанная в виде олдскула. Я ее с удовольствием прошел в свое время.
Смысл игры в искоренении зомби в близком и дальнем космосе, прокачки своего мазершипа, скилов и т.п.
Итак, для начала выключаем Steam и идем в папку с игрой.

7 февраля 2013 г.

Пишем кейген для MaxXor's KeygenMe V4.

Итак, продолжим. В первой части мы нашли вилку и нашли места где создаются части ключа.
Теперь необходимо понять каким образом создается сам ключ и собственно написать кейген.
Итак, вернемся назад, к началу функции по адресу 009C27D0 и начнем разбираться.

6 февраля 2013 г.

Разбираем MaxXor's KeygenMe V4 в IDA

Давно не реверсил кейгенми, а тут как раз модераторы с http://crackmes.de вывалили небольшую пачку. Поглядел, что есть и выбрал более менее адекватную программу для взлома, со сложностью 3 под названием MaxXor's KeygenMe V4. Выше ничего не было да и времени честно говоря особа не охота было тратить больше нескольких часов.
Итак, что из себя представляет этот кейгенми:

10 января 2013 г.

Пишем самопальный чит к игре.

Итак, после длительного запоя решил написать небольшой пост как можно самому без помощи артманей и чит энджине делать свои читы к игре. Для примера возьмем один из моих самых любимы скроллеров, который есть практически на любой платформе под названием Open Tyrian.


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

31 июля 2012 г.

Наглядное представление PE файла.


Наткнулся на наглядно нарисованный формат PE файла, есть даже русская версия, смотреть тут - http://code.google.com/p/corkami/wiki/PE101?show=content
Ну и еще неплохо ознакомиться с каноничным мануалом от микрософта как загружаются в память исполняемые файлы - http://msdn.microsoft.com/en-us/magazine/cc301727.aspx

28 мая 2012 г.

Введение в реверс инженеринг используя IDA - Глава 5

Продолжим иследовать программы при помощи IDA Pro и мегаполезного мануала от Рикардо Нарваха который можно посмотреть на русском тут. Сегодня займемся главой 16 где рассматривается вычисление серийника на основе имени пользователя. В принципе я уже рассматривал такой случай в предыдущей статье под названием "Разбираем crackme - XYZ_KeygenMe20110405". Этот же пример будет гораздо проще, так как там используются стандартное Win API, а не извращенства от китайского друга :)
Итак берем crackme из 1 Главы по ссылке.
Открываем его в IDA Pro и смотрим снова, что мы там можем сделать.

 

23 мая 2012 г.

Разбираем crackme - XYZ_KeygenMe20110405

От скуки зашел на сайт http://crackmes.de, тыкнул на угад в поисках чтоб поломать и выпал мне crackme от китайского товарища по имени Xia Yuanzhong. Ну чтож, написанно что очень легкое, вот и потренируемся в ломании и написании генератора ключей.

 

21 мая 2012 г.

Введение в реверс инженеринг используя IDA - Глава 4

Переходим к следующей части серии лекций от Рикардо Нарваха которая идет под номером 15. Посмотреть перевод ее можно на томже wasm.ru по вот этой ссылке.

Возмем crackme под названием SAMBO, его можно скачать тут. Открываем в IDA Pro фаил sambo.exe и видим мало приятную картину:



14 мая 2012 г.

Введение в реверс инженеринг используя IDA - Глава 3

Сегодня займемся разборкой следующей главы Рикардо Нарваха под номерм 14, которая рассматривает еще один вид жестко прописанного серийника в коде программы, но реальный серийник будет вычилятся. Посмотреть эту статью на русском можно на сайте wasm.ru например тут.

12 мая 2012 г.

Исключения в Windows.

А сегодня поковыряемся в темных закоулках исключений Windows. Они созданы для того, чтобы обрабатывать всякие ошибки, например если возникает деление на ноль или запись в ячейку памяти которая защищена от записи. По умолчанию мы получим сообщение типа "Application Error.", а в Windows Vista/Seven вообще можно ничего не получить, программа просто закроется.

Итак, как это можно использовать в своих целях, ну например для антиотладки и запутывания логики программы. Для начала небольшая теория:

10 мая 2012 г.

Немного про антиотладку.

Решил поколупать всякие простенькие приемчики антиотладки, конечно с плагинами которые вешаются на дебаггеры типа OllyDBG и IDA они не шибко помогут, но остановят начинающего крякера, да и самому интересно стало поковыряться.

7 мая 2012 г.

Введение в реверс инженеринг используя IDA - Глава 2

И снова начало тяжелой рабочей недели и чтобы немного скрасить рабочий понедельник, займемся исследованием очередного crackme при помощи IDA.  Сегодня рассмотрим главу Рикардо Нарвахо под номером 13. Почитать ее на русском можно здесь.

Глава повествует как найти жестко прописанный серийник в программе. Для начала необходимо скачать файлы для испледования, например тут.

2 мая 2012 г.

Введение в реверс инженеринг используя IDA - Глава 1

 В основном я всегда для отладки пользовался отладчиком всех времен и народов OllyDbg. Это шикарный деббагер, который очень удобен и прост одновременно обладающий очень мощным функционалом. Но, в последнее время я все больше сталкиваюсь х64 программами, да и домашний компьютер у меня поднят на х64 операционной системе, а OllyDbg версии 1.10 не корректно работает на такой операционной системе, теряет точку входа и вообще печально все. Попытки использовать более новую версию 2.01а тоже не увенчались успехом, так как она виснет в неожиданный момент и перестает отвечать, можно конечно накатить кучу патчей от китайских друзей и более менее оживить дебагер, но все равно огромное количество багов и похоже прекращение разработки(с августа 2011 года никаких подвижек) заставило меня посмотреть в сторону Interactive Disassembler, сокращенно IDA. Это мощнейший инструмент для отладки и исследования программ который обладает кучей нужных и не очень не нужных свистелок и перделок.
 Но он тоже обладает некоторыми минусами, которые меня всегда останавливали для изучения сего мощного инструмента:
1. Мало вменяемой документации, есть конечно книги от уважаемого господина К. Касперски, но они настолько древние, что читать их смысл есть, но в текущих реалиях не шибко большой, в основном для общего развития.
2. Цена сего продукта у X-Rays - стартовая лицензия более 500 австралийских долларов и это без X-Rays Decompiler, который стоит совсем каких то неадекватных денег.
Но разочарование OllyDbg  возобладало над жабой и здравым смыслом и я решил заняться всетаки изучением IDA.