41

Re: Як користуватись IP Sniffer'ом ???

нова пошта вам у поміч!

42

Re: Як користуватись IP Sniffer'ом ???

TRYCUKI_V_KROVI написав:

ну я не зовсім наздогнав, що мені тре робити, але я поставив всі галочки в Api фільтрі і запустив гру, а потім, в правому віконці, в розділі API, шукав щось, що починається на CreateProc, і знайшов таку штуку
це воно?

Воно також. Для того фільтри й існують, щоб записувати лише потрібні функції. Має бути ще один виклик цієї функції.

А печиво спочатку Коалі треба надіслати :)

43

Re: Як користуватись IP Sniffer'ом ???

Ну ось ще один виклик функції
https://не-дійсний-домен/46vdr.png
а навіщо коалі пічєнькі?

44 Востаннє редагувалося Очі.завидющі (20.08.2013 19:16:31)

Re: Як користуватись IP Sniffer'ом ???

Тепер дивіться у стек викликів в API Monitor, треба визначити яка функція викликала CreateProcessA й переходьте за тією адресою в Оллі - там має бути call, а печенькі коалі - за підказку про делегацію викликів функцій. Мені самому було приємно вашу розмову почитати.

45

Re: Як користуватись IP Sniffer'ом ???

Очі.завидющі написав:

Тепер дивіться у стек викликів в API Monitor, треба визначити яка функція викликала CreateProcessA й переходьте за тією адресою в Оллі - там має бути call, а печенькі коалі - за підказку про делегацію викликів функцій. Мені самому було приємно вашу розмову почитати.

а, ну якщо ви про массив методів разом з данними то це тааак, то було круто хД

46 Востаннє редагувалося FakiNyan (20.08.2013 20:47:33)

Re: Як користуватись IP Sniffer'ом ???

ну я виділив той CreateProcessA, а в стеці ось що
https://не-дійсний-домен/46AWm.png
побігав по цим адресам, але ніде Call не побачив

47

Re: Як користуватись IP Sniffer'ом ???

Викладай тут ЕХЕ. Так, здаєтья це знайома мені низькорівнева чорна магія.

48

Re: Як користуватись IP Sniffer'ом ???

Очі.завидющі написав:

Викладай тут ЕХЕ. Так, здаєтья це знайома мені низькорівнева чорна магія.

Post's attachments

Vindictus.rar 1.02 mb, 389 downloads since 2013-08-20 

49 Востаннє редагувалося Очі.завидющі (21.08.2013 01:48:56)

Re: Як користуватись IP Sniffer'ом ???

Значить я трішки копнув ЕХЕ, тож маю такі результати:
* Використовується протектор  - найімовірніше VMProtect
* Щоб бачити CALL за тими адресами потрібно: знати як діє команда CALL і розуміти чим OFFSET(зсув) одрізняється  од VA(віртуальна адреса) й RVA(відносна віртуальна адреса). До того ж слід мати уявлення про структуру PE файла. Як зарадити вам із копанням даних я вже знаю, проте вищевказані знання значно полегшать роботу.

50

Re: Як користуватись IP Sniffer'ом ???

окаай, погуглююю

51

Re: Як користуватись IP Sniffer'ом ???

Ну кароч трохи почитав про то. Call значить працює так. Заносить адресу наступної команди на верх стека, потім викликає процедуру по заданій адресі, а коли доходить до ret, то береться адреса зверху стека і таким чином слідуюча команда, котра буде виконуватись, буде знаходитись відразу після команди call. Зі зсувом я не зовсім розібрався, бо їх там купа, я навіть команду таку в ассемблері бачив. Можливо, зсув - це відстань від початку програми до чогось там. Про VA, це значить просто якась адреса, а RVA - адреса від початку якогось блоку. Наприклад, в опціональному заголовку PE файла є значення AddressOfEntryPoint, так це RVA від початку точки входу в програму, а ще є RVA директорії іморту.

52

Re: Як користуватись IP Sniffer'ом ???

до речі, та гра розроблена з використанням Source engine.

53 Востаннє редагувалося Очі.завидющі (30.08.2013 20:40:26)

Re: Як користуватись IP Sniffer'ом ???

Зсув я мав на увазі файловий (ПЕ32 формата), а тепер розберися як одне витікає з іншого. Наприклад, як отримати VA, знаючи offset і навпаки ( RVA <-> offset, RVA <-> VA, offset <-> VA) Бо зміниш щось у пам'яті, а потім треба буде порахувати як це змінити на диску. Після цього треба буде знайти зневадник, якого не бачить прога і встановити апаратні точки зупину (Hardware access breakpoint) на потрібні ділянки пам'яті. Таким чином можна легко відстежити шифрування, навіть не розуміючи систему команд процесора :) Чи програмної віртуальної машини.

54

Re: Як користуватись IP Sniffer'ом ???

Знаєте. Я щось не зовсім наздоганяю. Спочатку я гадав, що зсув, VA, RVA - це три різні речі. Але на одному з форумів я прочитав, що RVA це те ж саме, що й файловий зсув. Приклад з форуму - Якщо файл завантажується в віртуальну пам'ять за адресою 400000h, а виконуватись програма починає з адреси 401000h, то віртуальна адреса це 400000h, а RVA це 1000h.

55 Востаннє редагувалося Очі.завидющі (31.08.2013 02:11:12)

Re: Як користуватись IP Sniffer'ом ???

Майже вірно, але... прочитайте ще про файлове вирівнювання (поле FileAlign) і тоді ви пізнаєте шизуху Майкрософта))

Приклад Vindictus:
FileAlignment (Файлове вирівнювання) =  0х200
ImageBase = (адреса завантаження образа) = 0х400000
AddressOfEntryPoint (точка входу) = 0x93182
Перша секція .text
поле VirtualAddress = 0x1000 - це насправді RVA :)
поле RawAddress =  0x400 - файловий зсув початку першої секції
Отож завдання змінити перший байт за адресою точки входу -
Точка входа знаходиться в першій секції.
Її VA буде AddressOfEntryPoint+ImageBase
Її RVA є AddressOfEntryPoint
Її файловий зсув буде AddressOfEntryPoint-(.text).VA+(.text).RawAddress
Так, іноді RVA і файловий зсув це одне і теж, але так не завжди.

І гляньте сюди Розібравши функцію додавання секції можна багато про що дізнатися.