Punkbuster

Тема в разделе "WASM.RESEARCH", создана пользователем sn0w, 26 дек 2020.

  1. sn0w

    sn0w Active Member

    Публикаций:
    0
    Регистрация:
    27 фев 2010
    Сообщения:
    956
    господа, ктонибудь работал с этой напастью?
    --- Сообщение объединено, 26 дек 2020 ---
    как минимум - он дёргает исполняемый код, дабы игруля завершилась, и поинтеры должны быть в его динамической либо автоматической памяти.
    и вот вопрос - где они?
     
  2. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    5.242
    Интересно, что подразумевается под динамической (видимо на куче выделенной) и автоматической (вообще нет идей) памятью. Или это опять какой-то спецовый жаргон, в котором я не шарю?
     
  3. sn0w

    sn0w Active Member

    Публикаций:
    0
    Регистрация:
    27 фев 2010
    Сообщения:
    956
    о господи
     
  4. HoShiMin

    HoShiMin Well-Known Member

    Публикаций:
    5
    Регистрация:
    17 дек 2016
    Сообщения:
    1.422
    Адрес:
    Россия, Нижний Новгород
    Если там дллка в самом процессе - поищи вызовы ExitProcess/TerminateProcess/LdrShutdownProcess/NtTerminateProcess (поставь на них брейкпоинты и посмотри, откуда их вызывают).
    Если драйвер - аналогично с ZwTerminateProcess/PsTerminateProcess.
    Если ни один из них не вызывается - посмотри, как завершается процесс: возможно, через __fastfail() или в самой игре ломается что-то, что делает её неработоспособной и она крашится. И в этом случае ищи или инструкцию "int 0x29", или что-то, что могло бы сломать процесс.
     
  5. sn0w

    sn0w Active Member

    Публикаций:
    0
    Регистрация:
    27 фев 2010
    Сообщения:
    956
    да, наверное надо шерстить NtQuery* и *Terminate. вот только коллстек в глубине недрах игрули ничего не даст.
    я вообще не к тому. можешь рассказать как ты пришёл в кодинг?
     
  6. HoShiMin

    HoShiMin Well-Known Member

    Публикаций:
    5
    Регистрация:
    17 дек 2016
    Сообщения:
    1.422
    Адрес:
    Россия, Нижний Новгород
    upload_2020-12-26_19-17-56.png

    Оффтоп, конечно, но если вкратце, то...
    Ещё будучи школьником, моддил первого сталкера, потом познакомился с разгоном и загорелся идеей научиться управлять железками - так же, как во всяких разгонных утилитках.
    Потом на университетских подготовительных попал в мир Delphi, начал писать лаунчеры для Minecraft. Оттуда ушёл в ассемблер, написал лаунчер и на нём.
    Потом появилась идея защитить игру - так познакомился с антиотладочными трюками и NativeAPI. Но хотелось большего: железками управлять до сих пор нельзя!
    Поэтому надо спускаться глубже - в ядро. Так познакомился с си и написал свой первый драйвер EnjoyTheRing0, который до сих пор живёт у меня на гите. И, долго ли, коротко ли, но потихоньку пересел с Delphi на C++.
    Затем антиинжекты, плагины для Minecraft на джаве, немножко Go, снова драйвера, минифильтры, работа в ИБ... "И вот я здесь в своих старых ботинках."

    А почему вдруг такой интерес?
     
  7. sn0w

    sn0w Active Member

    Публикаций:
    0
    Регистрация:
    27 фев 2010
    Сообщения:
    956
    аа, я с другого начинал - пентиум 166 и свитч на материнке, аж до 210мгц разгонял, но с фееричной нестабильностью. а потом засел за фортран, затем на вижуал бейсик - и понеслось в си итд
     
  8. HoShiMin

    HoShiMin Well-Known Member

    Публикаций:
    5
    Регистрация:
    17 дек 2016
    Сообщения:
    1.422
    Адрес:
    Россия, Нижний Новгород
    Свой первый Athlon 2500+ я успешно сжёг :lol:
     
  9. Entropy

    Entropy Member

    Публикаций:
    0
    Регистрация:
    23 авг 2020
    Сообщения:
    174
    Кстати есть ещё античит MRAC от Mail.ru,говорят что со своими задачами очень успешно справляется
     
  10. sn0w

    sn0w Active Member

    Публикаций:
    0
    Регистрация:
    27 фев 2010
    Сообщения:
    956
    а ООП мне нравится разве что со стороны о
    ну у меня не такая ачивка с первым компом была) но он направил меня в тему, которая стала раз и навсегда - единственной
    --- Сообщение объединено, 27 дек 2020 ---
    это не жаргон, но если интересно что такое name в си, время жизни, связуемость итд - то можешь о таких деталях на с++ референс дот ком почитать
    --- Сообщение объединено, 27 дек 2020 ---
    Rel а ты правда в институту с++ преподавал?
     
    Последнее редактирование: 27 дек 2020