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

 eXeL@B —› Дневники и блоги —› BiteMoon's diary
Посл.ответ Сообщение

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

Создано: 16 марта 2015 23:50 · Поправил: BiteMoon
· Личное сообщение · #1

Вот и опять очередная ночь и я сижу,в который раз,на кресле и мои глаза насилует монитор.Очки ещё не ношу,хотя за то время,пока я ещё живу,уже пора бы их завести потому,что почти всё детство я провёл в библитеках за чтением книг в основном религиозно-философско-мистического содержания, или что-то к этому близкому.Знакомство с цифровой аппаратурой началось с тетрисов,дэнди,сега, рэмбо, компьютеров типа "IBM","УК-НЦ" и "Агат". С "УК-НЦ",как и с "IBM", я познакомился на ещё действующей СЮТ(станция юных техников)."IBM" пробыл там не долго и куда-то его убрал руководитель кружка,больше всего пришлось заниматься на "УК-НЦ"...скорее всего современная молодёжь врятли помнит 5-тидюймовые дискеты,которые были намного больше,чем дискеты 4,5 дюйма...в наше-то время современных гаджетов.Бывает "пробивает" ностальгия по тем временам,когда в 11 классе школы "втыкали" в цветной монитор "Агата" и пытались соорудить на Бейсике толково работающую программульку...это конечно не БЭСМ,а нечто намного лучшее,но всё-таки для кого-нибудь раритет.))))Это сейчас,когда я сижу перед монитором своего писишника,я понимаю насколько продвинулись создатели цифровой аппаратуры,всё стало намного лучше но, вместе с тем, сложней.

А всё начиналось с читерства и секретных комбинаций,заложенных создателями игр на игровые приставки.Было очень обидно,что компьютер "может" что-то такое,чего не мог игрок,хотя,даже когда "открывались" "секретные" приёмы(в играх Mortal Kombat, Черепашки-ниндзя:турнир героев, Tekken),то было заметно,что преимущества в движениях было на стороне компьютера и тогда хотелось стать бессмертным,а "этого наглого обормота-компьютера" наказать и показать ему "кто и чей хозяин"...но это ещё в детстве.А потом была учёба в колледже на отделении "Техническое обслуживание и ремонт бытовой радиоэлектронной техники", работа в узле электросвязи в качестве техника усилительного пункта, телефоны, таксофоны, станции связи, устройства разведки и контр-устройств противодействия прослушке и получения информации по разного рода каналам связи...

Увлечения почти не изменились.)))Потом, когда я уже работал, наконец-то, купили компьютер, первый интернет, который был представлен Dial-Up модемом и телефонной линией связи через нашего провайдера, теперь носящего звание филиала "Ростелекома".Это для меня был прорыв в обширный мир информационного потока, где всё было ново и неведомо,первые шаги юзера по просторам сети,первый софт,первые вирусы, первый опыт борьбы с ними(впервые переустанавливал ОС).Потом "выписал" по почте такие книги как "Компьютер глазами хакера" Михаила Фленова первое издание и "Головоломки для хакера" Ивана Склярова,во второй-то и был указан адрес сайта Старый адрес этого сайта...потом прочитал на этом сайте,что сайт переехал на новый адрес, по которому я и перешёл.)))Ещё посещаю иногда сайты Сайт настоящего читера, ВАСМ, Ещё один интересный сайт по крэку на английском языке...))))Книжки разные читаю...развиваюсь,вобщем.)))

Добавлено спустя 13 часов 47 минут
Выложу здесь одно из моих исследовательских творений.))))
---------------------------------------------------------------------------------------------------------------------------------------------
Ручная распаковка Protector v1.1.11 на примере игры Indiana Jones And The Emperors Tomb версии 1.0(RUS):

Инструменты:
-OllyDbg v1.10 с плагинами(если честно не знаю,пригодятся или нет)
-PeTools v1.5.800.2006 RC7
-Import Reconstructor v1.6F

Ну и так же дзэнствующая голова и руки,растущие из нужного места.)))

Это моя первая статья,поэтому прошу не винить если стиль изложения будет какой-то нестандартный и непривычный для кого-нибудь.
Шаг 1:Исследование.
Первое,что я решил сделать-это засунул экзешник indy.exe в ольку,естественно попал на EP,которая находится по адресу 004D7000,вот собственно картина,которую я увидел:
Code:
  1. 004D7000 > 53               PUSH EBX
  2. 004D7001   51               PUSH ECX
  3. 004D7002   56               PUSH ESI
  4. 004D7003   E8 00000000      CALL indy.004D7008
  5. 004D7008   5B               POP EBX
  6. 004D7009   81EB 08100000    SUB EBX,1008
  7. 004D700F   8DB3 34100000    LEA ESI,DWORD PTR DS:[EBX+1034]
  8. 004D7015   B9 F3030000      MOV ECX,3F3
  9. 004D701A   BA 63172AEE      MOV EDX,EE2A1763
  10. 004D701F   3116             XOR DWORD PTR DS:[ESI],EDX
  11. 004D7021   83C6 04          ADD ESI,4
  12. 004D7024   69D2 9768273E    IMUL EDX,EDX,3E276897
  13. 004D702A   81F2 93482317    XOR EDX,17234893
  14. 004D7030   49               DEC ECX
  15. 004D7031  ^75 EC            JNZ SHORT indy.004D701F
  16. 004D7033   8D10             LEA EDX,DWORD PTR DS:[EAX]

Ставлю бряк клавишей F2 на 004D7033 и нажимаю F9,чтобы обойти цикл.Когда брякнулись,снимаю бряк клавишей F2 и клавишей F8 трассирую дальше до следующего места:
Code:
  1. 004D7040   3116             XOR DWORD PTR DS:[ESI],EDX
  2. 004D7042   83C6 04          ADD ESI,4
  3. 004D7045   69D2 9768273E    IMUL EDX,EDX,3E276897
  4. 004D704B   81F2 93482317    XOR EDX,17234893
  5. 004D7051   49               DEC ECX
  6. 004D7052  ^75 EC            JNZ SHORT indy.004D7040
  7. 004D7054   6A 01            PUSH 1

Ставлю бряк на 004D7054 и нажимаю F9 чтобы обойти цикл.После того,когда брякнулись,снова снимаю бряк и клавишей F8 трассирую дальше места:
Code:
  1. 004D705C   C683 B0000000 41 MOV BYTE PTR DS:[EBX+B0],41
  2. 004D7063   46               INC ESI
  3. 004D7064   83FE 1A          CMP ESI,1A
  4. 004D7067   0F8D 3A010000    JGE indy.004D71A7
  5. 004D706D   8D83 80000000    LEA EAX,DWORD PTR DS:[EBX+80]
  6. 004D7073   C700 413A5C00    MOV DWORD PTR DS:[EAX],5C3A41
  7. 004D7079   0130             ADD DWORD PTR DS:[EAX],ESI
  8. 004D707B   50               PUSH EAX
  9. 004D707C   FF53 0C          CALL DWORD PTR DS:[EBX+C] -оппа,да это же вызов функции GetDriveTypeA
  10. 004D707F   83F8 05          CMP EAX,5
  11. 004D7082   74 02            JE SHORT indy.004D7086
  12. 004D7084  ^EB D6            JMP SHORT indy.004D705C
  13. 004D7086   6A 00            PUSH 0

Ставлю бряк на 004D7086 и жму F9 чтобы обойти цикл.Когда брякнулись,то снова снимаю бряк и клавишей F8 трассирую дальше до места:
Code:
  1. 004D705C   C683 B0000000 41 MOV BYTE PTR DS:[EBX+B0],41
  2. 004D7063   46               INC ESI
  3. 004D7064   83FE 1A          CMP ESI,1A
  4. 004D7067   0F8D 3A010000    JGE indy.004D71A7-а вот это у нас прыжок на начало вывода сообщения о том,что мы такие вредные диск мы не вставили.
  5. 004D706D   8D83 80000000    LEA EAX,DWORD PTR DS:[EBX+80]
  6. 004D7073   C700 413A5C00    MOV DWORD PTR DS:[EAX],5C3A41
  7. 004D7079   0130             ADD DWORD PTR DS:[EAX],ESI
  8. 004D707B   50               PUSH EAX
  9. 004D707C   FF53 0C          CALL DWORD PTR DS:[EBX+C]-наш старый знакомый вызов функции GetDriveTypeA
  10. 004D707F   83F8 05          CMP EAX,5
  11. 004D7082   74 02            JE SHORT indy.004D7086
  12. 004D7084  ^EB D6            JMP SHORT indy.004D705C
  13. 004D7086   6A 00            PUSH 0
  14. 004D7088   6A 00            PUSH 0
  15. 004D708A   8D43 30          LEA EAX,DWORD PTR DS:[EBX+30]
  16. 004D708D   50               PUSH EAX
  17. 004D708E   83C0 04          ADD EAX,4
  18. 004D7091   50               PUSH EAX
  19. 004D7092   6A 00            PUSH 0
  20. 004D7094   6A 10            PUSH 10
  21. 004D7096   8D83 90000000    LEA EAX,DWORD PTR DS:[EBX+90]
  22. 004D709C   50               PUSH EAX
  23. 004D709D   8D83 80000000    LEA EAX,DWORD PTR DS:[EBX+80]
  24. 004D70A3   50               PUSH EAX
  25. 004D70A4   FF53 14          CALL DWORD PTR DS:[EBX+14]-упс,а это вызов ещё одной нездоровой функции GetVolumeInformationA
  26. 004D70A7   85C0             TEST EAX,EAX
  27. 004D70A9  ^74 B1            JE SHORT indy.004D705C
  28. 004D70AB   8D8B 90000000    LEA ECX,DWORD PTR DS:[EBX+90]-а вот сюда мы врятли уже попадём без диска.

Поэтому вставляем диск в физический привод или его виртуальный дубликат в эмулятор дисков типа Daemon Tools и шаманим всё с начала до момента:
Code:
  1. 004D71A4  -FFE0             JMP EAX                                  ; indy.00401000

Почему именно сюда?Похоже что это и есть прыжок на нашу OEP,адрес которой лежит в EAX в данном случае OEP=1000.Почему 1000?Потому что Image base=400000 и мы его отнимаем.

Шаг 2:трепанация.
На этом месте останавливаемся,сворачиваем ольку,но не закрываем.Дальше открываем PeTools,находим наш процесс,жмём на нём правую кнопочку мыши и выбираем "Dump Full...".Сохраняем дамп,закрываем PeTools,открываем Import Reconstructor,в поле "Attach to an Active Process" выбираем нашего пациента,в поле "OEP" пишем "1000" и нажимаем кнопочку "IAT AutoSearch",потом жмём кнопочку "Get Imports",после этого жмём кнопочку "Fix Dump",выбираем наш сохранённый дамп,сделанный PeTools и жмём кнопочку "Открыть".Всё,жмём кнопочку "Exit",вот наш экзешник и свободен от пакера и одновременно и от защиты тоже.Переименуем наш дамп так же как и оригинальный экзешник и заменим оригинальный получившимся.Можно свободно и безпроблемно играть.)))Всем удачного кряка и спасибо всем,кто уделил внимание этой писанине.))))

В исследовании мне помогла одна статья,имеющаяся на этом сайте.))))



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

Создано: 18 марта 2015 22:52
· Личное сообщение · #2

В дополнение,если кому-нибудь захочется наглядно увидеть как это делается,вот Unpacking DDeM видео о том,как я это делал.)))



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

Создано: 04 мая 2015 15:24
· Личное сообщение · #3

Позавчера мне "подкинули" работёнку,ноутбук с Win 7 и проблемой в том,что игры,вроде GTA:Сан андреас,будучи запущенными,через несколько минут игры сворачивались на "Панель задач" и представал перед нами,во всей его красе,товарищ "Рабочий стол".

Порылся в интернете в поисках решения этой задачи.Писали кое-что,самым распространённым были "Настройки Skype" и "Файл ouc.exe - online update client",входящий в состав программного обеспечения,необходимого для работы 3G-модемов фирмы "Мегафон".

1)Первым делом я попробовал то,что писали про скайп-не помогло,запущенная игра продолжала сворачиваться.
2)Тогда я запустил "Диспетчер задач",переключил его на вкладку "Процессы",нашёл среди процессов "ouc.exe",выделил его и нажал на "Завершить процесс".После этого я запустил игру и это было то,что надо,игра не сворачивалась.В интернете писали,что желательно удалить файл,запускающий этот процесс.Пробовал-файл снова "реанимировался" и приходилось снова шаманить с "Диспетчером задач".

Как заставить этот процесс больше не запускать оставлю как домашнее задание для пытливых умов,которые в этом будут нуждаться,я решение нашёл.)



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

Создано: 23 марта 2017 22:19 · Поправил: BiteMoon
· Личное сообщение · #4

Где-то дня 2 назад наткнулся на инфу о том,что Николай Лихачёв(он же известный многим под псевдонимом Крис Касперски) трагически погиб...земля пухом мыщ'ху,больше мы не прочитаем его новых литературных творений.Так,решил выложить несколько ссылок на интересную на мой взгляд литературу))):
>>ЗДЕСЬ<< вы сможете найти все(или почти все) литературные творения мыщ'ха,
>>ЗДЕСЬ<< можно скачать книгу " Исследование программ Win32 до дизассемблера и отладчика",которая,лично на мой взгляд,должна стоять среди необходимых для изучения в качестве учебника по реверсингу для всех,кого интересует(думаю,что не меня одного ) это направление хакерского искусства.



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

Создано: 18 апреля 2017 19:20
· Личное сообщение · #5

(((можно скачать книгу " Исследование программ Win32 до дизассемблера и отладчика",которая,лично на мой взгляд,должна стоять среди необходимых для изучения в качестве учебника по реверсингу для всех,кого интересует(думаю,что не меня одного ) это направление хакерского искусства. ))) а если идеологически не хочется иметь дело с win , какие другие есть предложения?



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

Создано: 26 апреля 2017 01:49
· Личное сообщение · #6

Abraham пишет:
а если идеологически не хочется иметь дело с win , какие другие есть предложения?


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



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

Создано: 17 марта 2018 15:28 · Поправил: BiteMoon
· Личное сообщение · #7

Вот,снова сижу перед монитором и пытаюсь не просто тыкать на клавиши по всяким туторам,а именно изучить и понять,уловить суть того как это всё работает.Нашёл на ютубе несколько видео,которые,наверняка,будут очень полезны начинающим реверс-инженерам под Windows.
>>ОСНОВЫ ДИЗАССЕМБЛИРОВАНИЯ<<
>>Курс "Архитектура ЭВМ и язык Ассемблера" от INTUIT<<
>>Новый канал Павла Каева,посвящённый ассемблеру,дизассемблированию ну и тому подобному...<<
Приятного и полезного просмотра.)



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

Создано: 09 апреля 2018 12:39
· Личное сообщение · #8

Ыыы,меня понизили в ранге...ну да ладно,понимаю за,что,но это не страшно.Буду продолжать идти своим путём,а другие...ну,админы у них большие полномочия и они не редко беспределят...начальство,однако,типа.им всё можно,даже то,что может мне не нравится.)))))

Я не редко играюсь в игры,вот,не так давно заглянул я на >>ЭТОТ<< сайт старых игр и решил скачать старую,добрую игру Heroes of Might and Magic: A Strategic Quest.Скачал,установил,удалил установочные файлы и всё такое,запустил её БЕЗ ДИСКА,а она мне выдаёт Мессадж Бокс:
"You must have the Heroes Win95 CD in the CD-ROM drive to play Heroes of Might and Magic.

Please insert the CD and try again."

"О,как" подумал я,"что же за ерунда,такая старая игрушка,а отучить её от диска ни кто не удосужился...НЕПОРЯДОК,нужно это исправить..."и взялся я исправлять эту несправедливость.
Открыл я файл HEROES.EXE в DIE,он выдал такое весёлое сообщение:
"
PE: compiler: Microsoft C/C++(3.0)[-]
PE: linker: Microsoft Linker(3.0)[EXE32]"

Далее,открываем наш пусковой файл в верной боевой подруге "Ольке" и ищем сообщение,выдаваемое Мессадж Боксом.Если кто не знает как это делается,то объясняю.Клацаем правой кнопкай мыши в колонке "Disassembly",в открывшемся списке выбираем строки "Search for"->"All referenced text strings",откроется окно в колонке "Text string" снова клацаете правой кнопкой мыши и в списке выбираете строку "Search for text".Откроется поле ввода,в которое вводим "Please insert the CD and try again." и жмём мышкой на "Ok".Попадаем сюда:

Code:
  1. Text strings referenced in HEROES:.text, item 555
  2. Address=004500D5
  3. Disassembly=PUSH HEROES.0049EADC
  4. Text string=ASCII "You must have the Heroes Win95 CD in the CD-ROM drive to play
  5. Heroes of Might and Magic.  
  6.  
  7. Please insert the CD and try again."


Клацаем 2 раза левой кнопкой мыши на этом сообщении и попадаем сюда:

Code:
  1. 004500D5   . 68 DCEA4900    PUSH HEROES.0049EADC                     ; |Text = "You must have the Heroes Win95 CD in the CD-ROM drive to play
  2. Heroes of Might and Magic.  
  3.  
  4. Please insert the CD and try again."
  5. 004500DA   . A1 74FE4900    MOV EAX,DWORD PTR DS:[0x49FE74]          ; |
  6. 004500DF   . 50             PUSH EAX                                 ; |hOwner => NULL
  7. 004500E0   . FF15 CC654D00  CALL DWORD PTR DS:[<&USER32.MessageBoxA>>; \MessageBoxA
  8.  


Поднимаемся выше и видим там такую или типа того строку:

Code:
  1. 004500C8     75 26          JNZ SHORT HEROES.004500F0

Понимаем,что этот прыжок сработает только в том случае,если флаг нуля не будет активным и далее игра запустится,но всё это возможно только тогда,когда диск с игрой будет в физическом приводе или образ диска в эмуляторе,типа Daemon Tools.Но нам важно,чтобы игра запускалась без этих танцев с бубном,поэтому меняем наш переход на безусловный и NOP-им следующую инструкцию.
Как вы будете делать-решать вам,но у вас должно получиться следующее:
Code:
  1. 004500C8     E9 23000000    JMP HEROES.004500F0
  2. 004500CD     90             NOP


Лично я предпочитаю редактировать вручную,с помощью старого,доброго HIEW.
Запускаете HIEW,открываете в нём наш HEROES.EXE,жмём F4,выбираем пункт "Decode",жмёте Enter,далее жмёте F5,вводите .004500C8,жмёте Enter,попадаете на нужный адрес,далее жмёте F3,F2 и редактируете код в режиме ассемблирования,когда вы отредактируете,то жмёте F9.

ВСЁ!!!Приятной вам игры...БЕЗ ДИСКА!!!.))))))))))))))



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

Создано: 29 июня 2018 13:32 · Поправил: BiteMoon
· Личное сообщение · #9

Реверсинг игры "Las Vegas Casino / Золотая коллекция: Лучшие азартные игры [RUS]"

Сидел я вчера за писишником и думал о том,во что бы поиграть и решил в итоге поиграть в игры из темы про казино.Загуглил запрос "скачать игры казино торрентом",вылезло много ссылок,но мне приглянулась только http://rus-game.net/- -ЭТА ,нажал на неё,в списке игр на скачивание выбрал Las Vegas Casino [RUS] -ЭТУ,игрушка старая,но я решил в неё поиграться,и скачал её,правда по >>ЭТОЙ<< -ссылке на скачивание игры.В описании написано,что таблеткой является эмуляция образа диска...не,ну это же беспредельно нагло,не поломали толком и простому юзеру будет нужно занимать образом игры "лишнее" место на "винте"...а если его очень мало...вобщем,полез я снова в тырнэт,загуглил "скачать No-CD для Las Vegas Casino",но-диска я так и не нашёл,ну и решил я её "отломать" от образа диска тоже сам...ПОЕХАЛИ!!!
Устанавливаем игру...трам-там-там,установка,если не считать того,что мой антивирус ругнулся раза 2,проходит без "приключений",хорошо...едем дальше...открываю я папку игры,сама игра запускается с файла autorun.exe,на который ссылается и ярлык игры на рабочем столе,но,здесь же есть файлы AnirezLoader.exe и BlackBackground.exe,с которых можно запустить безпроблемно игру(лучше с AnirezLoader.exe)...ну,да ладно,оставим это для примитивных крекеров,а мы трушные и кульные хацкеры-реверсеры,поэтому сделаю вид,что я с этим не разобрался и решил "сломать" autorun.exe,чтобы всё было "по честному".)))Запускаем autorun.exe,вылазит мессаджбокс с сообщением "Не найден диск с игрой "Las Vegas Casino" от издателя "Полёт Навигатора"!!!",ладно,после нескольких манипуляций с диском,выясняется,что игра проверяет наличие на диске в папке Demki файла index.chm,метку тома,букву дисковода и диск на сидиромность игра не проверяет,что позволяет скопировать данную папку с файлом в корневой каталог ЛЮБОГО(в том числе и жёсткого) диска и играть,а,чтобы этот файл занимал минимум места,можно создать блокнотный пустой текстовый документ и заменить ему расширение .txt на chm.Но все эти танцы с бубном,не редко,утомляют простых юзеров,поэтому будем "извращаться" дальше.Проверяем файл autorun.exe на упакованность и защищённость с помощью программы DIE,файл ни чем не упакован и не защищён,написан на Microsoft Visual C++,что говорит нам о том,что ломать будет не то,чтобы совсем просто,но намного легче,чем могло бы быть.)))Нужно найти место вызова проверки наличия на диске нашего файла index.chm,находящегося в папке Demki и обмануть эту проверку так,чтобы после проверки был переход на,запускающий нашу игру,участок кода.

Загружаем autorun.exe в HIEW,жмём F7 для поиска и ищем строку "DEMKI\index.chm" для этого в строке ASCII вводим слово DEMKI и жмём Enter.Видим по адресу 00402610 начало любопытной строки "A:\DEMKI\index.chm"

Грузим autorun.exe в нашу боевую подругу ольку.В окне дампа в колонке "Address" жмём правую внопку мыши,в появившемся меню,выбираем пункт "Go To"->"Expression".В появившемся окошке вводим адрес 00402610 и жмём Ok.

Попадаем на нужный нам адрес.Ставим на байте по этому адресу брейкпоинт на доступ к памяти.Для этого на этом байте жмём правую кнопку мыши,далее выбираем пункт "Breakpoint"->"Memory,on access".Жмём клавишу F9,попадаем сюда:

Code:
  1. 0040136C  |. A1 10264000    MOV EAX,DWORD PTR DS:[402610]-здесь идёт доступ к адресу 402610,по которому начинается строка "A:\DEMKI\index.chm"


Пролистываем код до этого места:

Code:
  1. 00401402  |. 85FF           TEST EDI,EDI -проверка а не ноль ли у нас в регистре EDI
  2. 00401404     0F84 AE000000  JE autorun.004014B8 -а это уже прыжок,срабатывающий,если предыдущее условие верно,ведущий на появление сообщения о том,что мы не вставили игровой диск.


Снимаем все брейкпоинты.Чтобы не сработал этот прыжок,меняем его на прямо противоположный-JNE.Для этого открываем файл в HIEW,переключаем его в режим дизассемблера нажатием клавиши Enter,нажимаем F5,вводим адрес .00401404,жмём Enter,попадаем на нужный нам адрес,жмём клавиши F3,F2.В открывшейся строке меняем наш прыжок je на нужный нам-jne,жмём Enter,Esc,F9.Закрываем HIEW,запускаем нашу игру и...УРРРЯААА,можно играть!!!.))))



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

Создано: 29 июня 2019 13:58
· Личное сообщение · #10

Здравствуйте,друзья!!!Да,долго я не писал,но,вот,нашёл свободную минутку для этого.)))Сегодня я хочу показать вам как можно отучить от диска игру Indiana Jones and the Emperors Tomb пропатченную до версии 1.01 ,скачать которую можно >>ОТСЮДА<< . На этот раз защита на ней попроще,поэтому,думаю,что данная статья будет интересна только новичкам в нашем общем деле реверс-инжиниринга.))))

И так приступим.

Используемыемые инструменты:

Отладчик OllyDbg 1.10 с плагином командной строки

Дизассемблер HIEW 7.10

Ход действий:

Грузим в ольку файл indy.exe

Комбинацией клавиш Alt+F1 вызываем командную строку(если она вызывается с помощью плагина)

Ставим бряку на MessageBoxA командой bp MessageBoxA

Запускаем программу на выполнение клавишей F9

Брякнулись

Смотрим на вершину стека,там следующее:

Code:
  1. 0012FAA4   004032B9  /CALL to MessageBoxA from indy.004032B3


Что указывает на то,что вызов функции был выполнен по адресу 004032B3 модуля indy.exe

Перезагружаем файл под олькой,с помощью комбинации клавиш Ctrl+F2

Комбинацией клавиш Alt+F1 вызываем командную строку(если она вызывается с помощью плагина)

Снимаем бряку с функции и ставим бряку на адресе 004032B3

Снова запускаем программу на выполнение клавишей F9

Брякнулись на месте вызова функции,смотрим выше на то,что творилось до этого,прокручиваем код вверх до первого условного перехода,у меня это:

Code:
  1. 00403284     74 46          JE SHORT indy.004032CC


Снимаем бряк

Закрываем ольку

Открываем наш indy.exe в Hiew

Переключаемся в режим дизассемблирования

Жмём клавишу F5

Вводим наш адрес 00403284

Жмём клавишу F3

Жмём клавишу F2

Переписываем команду условного перехода на противоположную ей,в данном случае JE на JNE

Жмём Enter

Жмём ESC

Жмём F9

Жмём F10

Играем в игру!!!)))



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

Создано: 03 июля 2019 06:20
· Личное сообщение · #11

hiew тут не нужен, как и плагин командной строки.

Бряк на API ставится так:
Ctrl+G -> MessageBoxA -> F2

Изменения вносятся так:
Ctrl+E -> 75 -> OK -> ПКМ -> Copy to executable -> Selection -> ПКМ -> Save file

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

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

Создано: 03 июля 2019 15:14
· Личное сообщение · #12

TryAga1n

Благодарю Вас за подсказку,наставник,для меня это очень важное замечание и совет,приму к сведению и постараюсь применять в деле.)



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

Создано: 21 сентября 2019 01:08
· Личное сообщение · #13

Приветствую всех,заглянувших в мои записки.Крепкого вам всем здоровья и трезвого рассудка.)))
Всё собирался,но всё забывал разместить здесь ссылочку на один полезный ресурс,автор которого Денис Юричев,разместивший очень полезную книгу по реверсу программ и пониманию языка ассемблера. >>Линк на саму книгу<< ,книга периодически обновляется,поэтому не советую довольствоваться только одним её вариантом,возможно в новых её выпусках автор что-нибудь исправит и дополнит...приятного чтения.Очень радует то,что для нас эта книга бесплатная.)))



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

Создано: 12 марта 2020 20:39
· Личное сообщение · #14

Здравствуйте друзья.Сегодня я хочу предложить вашему вниманию >>Видеокурс по реверс-инжинирингу 2019<< .Приятного и полезного вам просмотра.




Ранг: 69.9 (постоянный), 82thx
Активность: 0.140.73
Статус: Участник

Создано: 12 марта 2020 20:45
· Личное сообщение · #15

BiteMoon
а что это за курс? Кто автор, какая программа?

BiteMoon пишет:
Открываем наш indy.exe





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

Создано: 12 марта 2020 21:52
· Личное сообщение · #16

morgot
Подробнее о курсе >>ЗДЕСЬ<< .



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

Создано: 24 марта 2020 20:47
· Личное сообщение · #17

Приветствую всех,кто заглянул и заглядывает иногда сюда.Я не так давно нашёл 2 интересные,на мой взгляд,книги,скачать их можно по следующим ссылкам:
>>Wong Reginald - Mastering reverse engineering<<
>>Monnappa K. - Learning malware analysis<<

Приятного чтения всем заинтересовавшимся.)))



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

Создано: 11 апреля 2020 15:23 · Поправил: BiteMoon
· Личное сообщение · #18

>>Книга Дениса Юричева про реверс для начинающих<< .Книга периодически обновляется,поэтому,кому станет интересно,заходите,проверяйте,может она обновится и автор добавит что-нибудь полезное в новую версию книги.



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

Создано: 11 июня 2020 13:38 · Поправил: BiteMoon
· Личное сообщение · #19

Здравствуйте, друзья.Написал тут одну небольшую писанину на основе своего поста по взлому игры про Индиану Джонса. Старался чтобы было более-менее понятно для новичков, поэтому продвинутым профи это может быть не интересно.Удачных взломов вам, друзья.)))
Скачать можно по адресу >>СТАТЕЙКА<< .



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

Создано: 17 июня 2020 20:20
· Личное сообщение · #20

Воды как в дипломной работе. Ошибочные высказывания, бесполезная информация и резко практика, которая приправлена еще большим количеством бесполезной инфы и ошибочных высказываний. Скажу честно, я бы ногами бил за такое.

П.с.: но ты все равно молодец. Главное делай вычитку материала и хорошенько изучи термины, которыми пытаешься оперировать, ибо количество неверной информации просто зашкаливает



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

Создано: 18 июня 2020 14:00
· Личное сообщение · #21

TryAga1n пишет:
Воды как в дипломной работе. Ошибочные высказывания, бесполезная информация и резко практика, которая приправлена еще большим количеством бесполезной инфы и ошибочных высказываний. Скажу честно, я бы ногами бил за такое.

П.с.: но ты все равно молодец. Главное делай вычитку материала и хорошенько изучи термины, которыми пытаешься оперировать, ибо количество неверной информации просто зашкаливает


Благодарю за критику,давайте в личке пообщаемся.)



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

Создано: 20 июня 2020 16:55 · Поправил: BiteMoon
· Личное сообщение · #22

Сегодня сделал это видео >>Хакали мы сегодня второго терминатора в судный день с NES<<,так,моё увлекательное хобби-ромхакинг,из которого может получиться что-то более значительное.))))Приятного просмотра вам,друзья.)))


 eXeL@B —› Дневники и блоги —› BiteMoon's diary
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати